Despliegue Eficiente: Configuración de AWS EFS y Conexión con una Instancia EC2 en Minutos
-Bienvenidos al post de Despliegue Eficiente: Configuración de AWS EFS y Conexión con una Instancia EC2 en Minutos. La finalidad de este post es explicar en que es este servicio, sus principales ventajas y desventajas y por último unos casos comunes. Debajo de este post dispondrán de la URL de un tutorial en el que muestro como crear un servicio de almacenamiento compartido EFS, y como conectarlo a una instancia EC2.
¿Que es EFS?

–Amazon Elastic File System (EFS) es un servicio de almacenamiento en la nube proporcionado por Amazon Web Services (AWS) que permite la creación y gestión de sistemas de archivos elásticos y escalables. EFS está diseñado para ser utilizado con las instancias de Amazon EC2, ofreciendo almacenamiento compartido que se puede montar en múltiples instancias simultáneamente, lo que facilita la colaboración y el manejo de grandes volúmenes de datos. EFS ofrece un autoescalado de su capacidad a medida que se añaden o retiran archivos, un acceso compartido que posibilita el acceso de varias instancias a la vez, y un replicado automático en múltiples zonas de disponibilidad, lo que le hace ofrecer una alta disponibilidad.
Ventajas y desventajas

-Aunque EFS es una solución con amplitud de usos, no es aplicable en cualquier contexto. Aquí dejo una lista de sus ventajas y desventajas para que las pueda tener en cuenta antes de decidir usar EFS:
-Ventajas:
- Escalabilidad automática: EFS ajusta automáticamente su capacidad para manejar volúmenes crecientes o decrecientes de datos sin necesidad de intervención manual. Esto permite a las empresas escalar su almacenamiento de manera eficiente sin preocuparse por el aprovisionamiento.
- Alta disponibilidad y durabilidad: EFS almacena datos redundantes en múltiples zonas de disponibilidad dentro de una región de AWS. Esta replicación asegura que los datos estén siempre disponibles y protegidos contra fallos en el hardware o desastres en el centro de datos.
- Seguridad: EFS ofrece cifrado de datos tanto en reposo como en tránsito. Además, se puede integrar con AWS Identity and Access Management (IAM) para controlar el acceso y permisos a nivel granular.
-Desventajas:
- Latencia: Las aplicaciones que requieren acceso en tiempo real a datos con baja latencia pueden experimentar problemas de rendimiento debido a la latencia inherente al acceso a un sistema de archivos basado en red.
- Limitación de rendimiento: Aunque EFS es adecuado para muchas aplicaciones, las cargas de trabajo extremadamente intensivas en operaciones de E/S pueden requerir ajustes específicos y optimización. En algunos casos, otros servicios de almacenamiento de AWS, como Amazon EBS, pueden ofrecer un rendimiento superior.
- Costes elevados para altos volúmenes de trabajo: Aunque el modelo de pago por uso puede ser beneficioso, los costes pueden acumularse rápidamente para aplicaciones que requieren grandes volúmenes de almacenamiento y altas tasas de operaciones de E/S. Esto puede hacer que EFS sea más costoso en comparación con otras soluciones de almacenamiento, especialmente si no se optimiza adecuadamente.
Usos comunes de EFS

-Por último, voy a añadir tres escenarios de uso común de EFS para facilitar su entendimiento:
- Alojamiento de aplicaciones web: Utilizar Amazon EFS para proporcionar almacenamiento compartido a servidores web, aplicaciones y bases de datos en entornos de alojamiento de aplicaciones web. EFS puede almacenar los archivos estáticos de un sitio web, como imágenes, CSS y JavaScript, proporcionando acceso compartido a múltiples instancias de servidores web EC2.
- Entornos de desarrollo y pruebas: Utilizar Amazon EFS para proporcionar almacenamiento compartido a entornos de desarrollo y pruebas, permitiendo a los equipos acceder y compartir archivos de forma flexible y escalable. Para entornos de desarrollo los desarrolladores pueden utilizar EFS para compartir archivos de código fuente, bibliotecas y recursos entre miembros del equipo, asegurando una colaboración eficiente y consistencia en el desarrollo de software. Para entornos de pruebas pueden utilizar EFS para almacenar conjuntos de datos de prueba, scripts de pruebas automatizadas, registros y resultados de pruebas, facilitando la ejecución y el análisis de pruebas en diferentes instancias EC2.
- Cómputo de alto rendimiento: Utilizar Amazon EFS para almacenar y compartir datos entre nodos de un clúster de cómputo de alto rendimiento (HPC) para ejecutar simulaciones complejas y tareas de procesamiento intensivo. EFS puede almacenar datos de entrada y salida de simulaciones, así como archivos de trabajo y resultados, permitiendo que múltiples nodos de cómputo accedan y procesen estos datos de manera concurrente. Además, los sistemas de archivos compartidos como EFS son fundamentales para sistemas de cómputo distribuido, donde múltiples nodos de cómputo necesitan acceder y escribir datos de forma simultánea.
Autor: Manuel Caballero García
Curso: Administración de Sistemas MultiCloud con Azure, AWS y GCP.
Centro: Tajamar Tech
Año académico: 2023-2024