📂 Amazon Elastic File System (EFS) – Almacenamiento de Archivos en AWS
🔹 ¿Qué es Amazon EFS?
Amazon Elastic File System (EFS) es un sistema de archivos compartido, escalable y administrado en la nube de AWS. Está diseñado para permitir que múltiples instancias EC2, contenedores y otros servicios accedan a los mismos archivos de manera concurrente, con baja latencia y alta disponibilidad.
🔹 Características Clave
✅ Escalabilidad Automática – Se expande y contrae sin necesidad de gestión manual.
✅ Acceso Compartido – Múltiples instancias EC2 pueden conectarse al mismo sistema de archivos.
✅ Compatible con NFS – Usa el protocolo NFSv4 para la comunicación.
✅ Alta Disponibilidad y Durabilidad – Replicación automática en múltiples zonas de disponibilidad (AZ).
✅ Pago por Uso – Solo pagas por los datos almacenados y no por la capacidad provisionada.
✅ Soporte para AWS Lambda y Fargate – Permite acceso a datos desde servicios sin servidor.
✅ Encriptación y Control de Acceso – Integración con AWS IAM y KMS para seguridad.
🔹 Casos de Uso
✔️ Servidores Web – Para sitios web y aplicaciones que requieren almacenamiento compartido.
✔️ Big Data y Machine Learning – Procesamiento de grandes volúmenes de datos con múltiples instancias.
✔️ Contenedores y Kubernetes – Permite el almacenamiento persistente para Amazon EKS y ECS.
✔️ Ambientes de Desarrollo – Para compartir código y configuraciones entre servidores.
🔹 Comparación con Otros Almacenamientos AWS
CaracterísticaEFSEBSS3Tipo de AlmacenamientoArchivos (NFS)BloquesObjetosEscalabilidadAutomáticaManualAutomáticaAcceso ConcurrenteSí, varias instanciasNo, solo 1 instanciaSí, desde cualquier lugarLatenciaBajaMuy bajaAlta (comparado con EFS/EBS)Casos de UsoAplicaciones compartidas, contenedoresBases de datos, discos de EC2Almacenamiento de datos, backups
🔹 Configuración Básica de EFS en AWS
1️⃣ Crear un Sistema de Archivos EFS
- Ve a la consola de AWS → Amazon EFS.
- Haz clic en "Crear sistema de archivos".
- Selecciona la VPC y las subredes donde se desplegará.
- Configura el tipo de rendimiento (estándar o provisionado).
- Habilita cifrado y permisos de acceso.
- Crea el sistema de archivos y toma nota del ID del sistema de archivos.
2️⃣ Conectar EFS a una Instancia EC2
-
Instala los paquetes necesarios en la instancia:sudo yum install -y amazon-efs-utils
-
Crea un punto de montaje:mkdir /mnt/efs
-
Monta el sistema de archivos:sudo mount -t efs fs-12345678 /mnt/efs
Reemplaza fs-12345678 con el ID de tu sistema EFS.
-
Verifica que se haya montado correctamente:df -h
🔹 Configuración Avanzada
✔️ Conectar EFS a Kubernetes (EKS)
- Instala el CSI de Amazon EFS en EKS.
- Define un PersistentVolume (PV) y PersistentVolumeClaim (PVC).
- Asocia el PVC a un Pod para que use EFS como almacenamiento.
🎯 ¿Qué Sigue?
🔹 Optimizar costos con EFS Infrequent Access (IA).
🔹 Automatizar el montaje con fstab o CloudFormation.
🔹 Usar EFS con AWS Lambda para almacenamiento serverless.