POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Almacenamiento en Kubernetes: EFS en EKS con Terraform y Manifiestos (Parte 2)

Integración de EFS con EKS usando Terraform para almacenamiento compartido entre pods en Kubernetes

Publicado el 08/09/2025

En este artículo explicamos cómo integrar Amazon Elastic File System EFS con Amazon Elastic Kubernetes Service EKS usando Terraform para aprovisionar la infraestructura y manifiestos de Kubernetes para las cargas de trabajo. Como demostración desplegamos un contenedor NGINX que utiliza almacenamiento respaldado por EFS para persistir y servir archivos de un sitio web. Este patrón es ideal para aplicaciones que necesitan almacenamiento compartido entre varios pods y alta disponibilidad en múltiples zonas.

Introducción a Amazon EFS y su uso en Kubernetes. Amazon EFS es un sistema de archivos en red completamente gestionado, escalable y sin servidor que puede montarse concurrentemente desde instancias EC2, funciones Lambda y pods de Kubernetes. Para Kubernetes EFS permite volúmenes persistentes que se comparten entre pods y entre Availability Zones dentro de una VPC, facilitando datos persistentes y compartidos en un clúster EKS.

Arquitectura. La integración gira en torno a recursos de almacenamiento de Kubernetes y componentes de red de AWS. Se crea un file system EFS con mount targets en cada zona del VPC para que los nodos de trabajo de EKS puedan conectarse. El driver CSI de EFS, desplegado en el clúster como DaemonSet o como addon gestionado, actúa como puente entre Kubernetes y EFS. Definimos una StorageClass que indica cómo provisionar PersistentVolumes ya sea de forma estática apuntando a un file system existente o de forma dinámica usando EFS Access Points. Las aplicaciones solicitan almacenamiento mediante PersistentVolumeClaims que se enlazan a los PVs adecuados. Cuando se despliega un pod, el CSI driver monta el file system en el nodo a través de los mount targets y el pod accede al contenido como una ruta de directorio estándar. Así cualquier pod del clúster puede usar el mismo almacenamiento persistente respaldado por EFS.

Beneficios clave. Almacenamiento compartido para múltiples pods con acceso concurrente, escalado elástico que crece y decrece según demanda, acceso multi AZ para alta disponibilidad y casos de uso como gestión de contenidos, agregación de logs, aplicaciones web y directorios de usuarios. Para empresas que necesitan soluciones avanzadas, EFS en EKS es una base sólida para servicios cloud escalables.

Consideraciones importantes. Versión de Kubernetes: usar una versión soportada; se recomienda v1.23 o superior. EFS CSI driver: debe instalarse en el clúster para habilitar la integración. Identidad de pods IRSA: necesaria para otorgar permisos IAM finos. Rendimiento: adecuado para cargas generales y de alto throughput, no es la mejor opción para bases de datos con latencia ultrabaja. Cuotas y modos de rendimiento deben contemplarse al diseñar cargas.

Paso 1 Aprovisionar EKS y VPC con Terraform. Use módulos comunitarios de Terraform para crear la VPC y el clúster EKS. El flujo típico incluye crear subnets privadas, grupos de seguridad, nodos y el clúster gestionado. Tras el despliegue Terraform expone valores como el id del file system EFS y las subnets que luego usará la configuración de EFS.

Paso 2 Crear el file system EFS. En Terraform se crea el recurso aws_efs_file_system con cifrado activado y el modo de rendimiento adecuado, se crean mount targets uno por cada subnet privada y se añade un access point para las aplicaciones que usarán subdirectorios con permisos POSIX. También se crea un security group que permite tráfico NFS en el puerto 2049 desde los nodos de EKS, y se define un rol IAM con la política necesaria para que el driver CSI pueda describir y administrar access points. Finalmente puede instalar el addon aws-efs-csi-driver o desplegar el chart Helm correspondiente en el namespace kube-system.

Patrones de almacenamiento con EFS en EKS. Existen dos patrones principales: provisioning estático y dinámico. En el modo estático un administrador crea manualmente un PersistentVolume que referencia el id del file system EFS y una ruta concreta. Un PVC se enlaza a ese PV y los pods lo montan. En el modo dinámico se define una StorageClass que utiliza el provisioner efs.csi.aws.com y parámetros que indican provisioningMode efs-ap y el id del file system. Cuando una aplicación crea un PVC Kubernetes crea dinámicamente un PV respaldado por un EFS Access Point y una ruta dedicada dentro del file system.

Despliegue y verificación. Flujo recomendado: obtener valores desde Terraform por ejemplo EFS_FILE_SYSTEM_ID = $(terraform output -raw efs_file_system_id), personalizar los manifiestos YAML sustituyendo el placeholder por el id real y aplicar con kubectl apply -f. Verificar que los pods del CSI driver están en kube-system, listar storageclasses, pv y pvc, y comprobar que los pods NGINX sirven contenido. Puede usar kubectl port-forward para probar los endpoints locales y kubectl exec para listar y comprobar persistencia de archivos en /usr/share/nginx/html.

Limpieza. Para pruebas eliminar los recursos de Kubernetes con kubectl delete -f en el orden inverso al despliegue y finalmente ejecutar terraform destroy para ahorrar costes si no se requiere la infraestructura.

Buenas prácticas y seguridad. Use IRSA para otorgar permisos mínimos al driver CSI en lugar de roles amplios. Asegure el security group permitiendo solo el rango de la VPC o los nodos EKS en el puerto 2049. Use EFS Access Points para aislar permisos por aplicación y gestionar owners y permisos POSIX. Monitorice métricas y cuotas de throughput y utilice backup cuando los datos sean críticos.

Aplicaciones reales y valor para su negocio. En Q2BSTUDIO diseñamos soluciones de software a medida y aplicaciones a medida que integran servicios cloud como EKS y EFS con prácticas de ciberseguridad y capacidades de inteligencia artificial. Si necesita migrar o construir una plataforma que combine contenedores, almacenamiento compartido y automatización, nuestros equipos pueden ayudar a diseñar la arquitectura, implementar Terraform y orquestar despliegues seguros y escalables. Conecte su estrategia cloud con nuestros servicios cloud aws y azure y potencie sus datos con soluciones de inteligencia artificial para empresas.

Palabras clave y soluciones complementarias. Este patrón encaja con necesidades de aplicaciones a medida y software a medida que requieren almacenamiento compartido, agentes IA que procesan datos en paralelo, servicios de inteligencia de negocio y cuadros de mando con Power BI para explotar los datos persistentes. Además Q2BSTUDIO ofrece ciberseguridad y pentesting para auditar configuraciones de red y permisos, garantizando cumplimiento y protección de datos.

Conclusión. Integrar Amazon EFS con EKS usando Terraform y el EFS CSI driver es una solución robusta para casos que requieren almacenamiento compartido y persistente entre pods y zonas de disponibilidad. La combinación de infraestructura como código, políticas IAM bien diseñadas y patrones de provisionamiento dinámico con access points ofrece flexibilidad operativa y seguridad. Si su proyecto necesita asesoría en arquitectura cloud, desarrollo de software a medida o capacidades de IA aplicadas a la nube, en Q2BSTUDIO podemos acompañarle desde el diseño hasta la producción.

Recursos recomendados. Documentación oficial del driver EFS CSI y ejemplos de manifiestos YAML son un buen punto de partida para pruebas. Para consultas profesionales sobre migración, automatización y desarrollo a medida visite nuestras páginas de servicios y descubra cómo combinamos expertise en cloud, inteligencia artificial, ciberseguridad y business intelligence para impulsar proyectos escalables y seguros.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio