Logotipo de Zephyrnet

Presentamos entornos de mayor tamaño de Amazon MWAA | Servicios web de Amazon

Fecha:

Flujos de trabajo administrados por Amazon para Apache Airflow (Amazon MWAA) es un servicio gestionado para Flujo de aire Apache que agiliza la configuración y operación de la infraestructura para organizar canales de datos en la nube. Los clientes utilizan Amazon MWAA para administrar la escalabilidad, disponibilidad y seguridad de sus entornos Apache Airflow. A medida que diseñan procesos de procesamiento de datos más intensivos, complejos y en constante crecimiento, los clientes nos han pedido recursos subyacentes adicionales para brindar mayor simultaneidad y capacidad para sus tareas y flujos de trabajo.

Para abordar esto, hoy anunciamos la disponibilidad de clases de entorno más grandes en Amazon MWAA. En esta publicación, profundizamos en las capacidades de estos nuevos entornos XL y 2XL, los escenarios para los que son adecuados y cómo puede configurar o actualizar su entorno Amazon MWAA existente para aprovechar el aumento de recursos.

Retos actuales

Cuando crea un entorno de Amazon MWAA, se crea un conjunto de Servicio de contenedor elástico de Amazon (Amazon ECS) con AWS Fargate Los contenedores se aprovisionan con CPU y RAM virtuales definidas.

Mientras trabaja con cargas de trabajo más grandes, complejas y que consumen muchos recursos, o ejecuta miles de Gráficos acíclicos dirigidos (DAG) por día, puede comenzar a agotar la disponibilidad de CPU en los programadores y trabajadores, o alcanzar límites de memoria en los trabajadores. La ejecución de Apache Airflow a escala supone una carga proporcionalmente mayor en la base de datos de metadatos de Airflow, lo que a veces genera problemas de CPU y memoria en la base. Servicio de base de datos relacional de Amazon Clúster (Amazon RDS). Una base de datos de metadatos con escasez de recursos puede provocar la interrupción de las conexiones de sus trabajadores, lo que provocaría que las tareas fallaran prematuramente.

Para mejorar el rendimiento y la resiliencia de sus tareas, considere lo siguiente Mejores prácticas de flujo de aire de Apache para crear DAG. Como alternativa, puede crear varios entornos de Amazon MWAA para distribuir cargas de trabajo. Sin embargo, esto requiere un esfuerzo adicional de ingeniería y gestión.

Nuevas clases de entorno.

Con el lanzamiento de hoy, ahora puede crear entornos XL y 2XL en Amazon MWAA además de las clases de entorno existentes. Tienen dos y cuatro veces más computación y tres y seis veces más memoria, respectivamente, que la gran clase de instancia de entorno Amazon MWAA actual. Estas instancias agregan computación y RAM de manera lineal para mejorar directamente la capacidad y el rendimiento de todos los componentes de Apache Airflow. La siguiente tabla resume los capacidades ambientales.

. Programador y CPU/RAM de trabajo

servidor web

CPU / RAM

Tareas simultáneas Capacidad DAG
mw1.xlarge 8 vCPU / 24 GB 4 vCPU / 12 GB 40 tareas (predeterminado) Hasta 2000
mw1.2xgrande 16 vCPU / 48 GB 8 vCPU / 24 GB 80 tareas (predeterminado) Hasta 4000

Con la introducción de estos entornos más grandes, su base de datos de metadatos de Amazon Aurora ahora utilizará instancias más grandes y con memoria optimizada impulsadas por Gravitón2 de AWS. Con la familia de procesadores Graviton2, obtiene mejoras de computación, almacenamiento y redes, y la reducción de su huella de carbono que ofrece la familia de procesadores AWS.

Precios

Las dimensiones de precios de Amazon MWAA permanecen sin cambios y usted solo paga por lo que usa:

  • la clase de medio ambiente
  • Instancias de trabajadores adicionales
  • Instancias de planificador adicionales
  • Almacenamiento de base de datos de metadatos consumido

Ahora obtiene dos opciones adicionales en las primeras tres dimensiones: XL y 2XL para clase de entorno, trabajadores adicionales e instancias de programadores. El precio del almacenamiento de bases de datos de metadatos sigue siendo el mismo. Referirse a Precios de flujos de trabajo administrados por Amazon para Apache Airflow para tarifas y más detalles.

Observe el rendimiento de Amazon MWAA para planificar el escalado a entornos más grandes

Antes de comenzar a usar las nuevas clases de entorno, es importante comprender si se encuentra en un escenario relacionado con problemas de capacidad, como una base de datos de metadatos sin memoria o trabajadores o programadores que se ejecutan con un uso elevado de CPU. Comprender el rendimiento de los recursos de su entorno es clave para solucionar problemas relacionados con la capacidad. Recomendamos seguir las instrucciones descritas en Presentación de métricas de utilización de contenedores, bases de datos y colas para el entorno de Amazon MWAA para comprender mejor el estado de los entornos de Amazon MWAA y obtener información para ajustar el tamaño de sus instancias.

En la siguiente prueba, simulamos un escenario de carga alta, utilizamos el Métricas de observabilidad de CloudWatch para identificar problemas comunes y tomar una decisión informada para planificar la ampliación a entornos más grandes para mitigar los problemas.

Durante nuestras pruebas, ejecutamos un DAG complejo que crea dinámicamente más de 500 tareas y utiliza sensores externos para esperar a que se complete una tarea en un DAG diferente. Después de ejecutar en una clase de entorno grande de Amazon MWAA con escalado automático configurado hasta un máximo de 10 nodos trabajadores, notamos las siguientes métricas y valores en el Panel de control de CloudWatch.

Los nodos trabajadores han alcanzado la capacidad máxima de CPU, lo que hace que la cantidad de tareas en cola siga aumentando. La utilización de la CPU de la base de datos de metadatos alcanzó un máximo de más del 65 % de su capacidad y la memoria libre disponible de la base de datos se redujo. En esta situación, podríamos aumentar aún más los nodos trabajadores para escalar, pero eso supondría una carga adicional en la CPU de la base de datos de metadatos. Esto podría provocar una caída en la cantidad de conexiones de bases de datos de trabajadores y en la memoria libre de bases de datos disponible.

Con las nuevas clases de entorno, puede escalar verticalmente para aumentar los recursos disponibles editando el entorno y seleccionando una clase superior de entorno, como se muestra en la siguiente captura de pantalla.

De la lista de entornos seleccionamos el que se utiliza para esta prueba. Elegir Editar para navegar a la Configurar ajustes avanzados y seleccione el entorno xlarge o 2xlarge apropiado según sea necesario.

Después de guardar el cambio, la actualización del entorno tardará entre 20 y 30 minutos en completarse. Cualquier DAG en ejecución que se haya interrumpido durante la actualización está programado para un reintento, dependiendo de la forma en que configuró los reintentos para sus DAG. Ahora puede optar por invocarlos manualmente o esperar a la siguiente ejecución programada.

Después de actualizar la clase de entorno, probamos el mismo DAG y observamos que las métricas mostraban valores mejorados porque ahora hay más recursos disponibles. Con este entorno XL, puede ejecutar más tareas en menos nodos trabajadores y, por lo tanto, la cantidad de tareas en cola siguió disminuyendo. Como alternativa, si tiene tareas que requieren más memoria y/o CPU, puede reducir las tareas por trabajador, pero aun así lograr una gran cantidad de tareas por trabajador con un tamaño de entorno mayor. Por ejemplo, si tiene un entorno grande donde la CPU del nodo trabajador está al máximo con celery.worker_autoscale (la configuración de flujo de aire que define la cantidad de tareas por trabajador) Establecida en 20,20, puede aumentar a un entorno XL y configurar celery.worker_autoscale a 20,20 en el XL, en lugar de las 40 tareas por trabajador predeterminadas en un entorno XL, y la carga de la CPU debería reducirse significativamente.

Configure un nuevo entorno XL en Amazon MWAA

solicite comenzar con Amazon MWAA en su cuenta y región de AWS preferida utilizando el Consola de administración de AWS, API o Interfaz de línea de comandos de AWS (AWS CLI). Si está adoptando infraestructura como código (IaC), puede automatizar la configuración usando Formación en la nube de AWS, la Kit de desarrollo en la nube de AWS (AWS CDK) o scripts de Terraform.

Las clases de entorno Amazon MWAA XL y 2XL están disponibles hoy en todas las regiones donde Amazon MWAA está disponible actualmente.

Conclusión

Hoy anunciamos la disponibilidad de dos nuevas clases de entorno en Amazon MWAA. Con las clases de entorno XL y 2XL, puede orquestar mayores volúmenes de flujos de trabajo complejos o que requieren muchos recursos. Si está ejecutando DAG con una gran cantidad de dependencias, ejecutando miles de DAG en múltiples entornos o en un escenario que requiere un uso intensivo de trabajadores para la computación, ahora puede superar los problemas de capacidad relacionados aumentando los recursos de su entorno en unos pocos. pasos sencillos.

En esta publicación, analizamos las capacidades de las dos nuevas clases de entornos, incluidos los precios y algunos problemas comunes de restricciones de recursos que resuelven. Proporcionamos orientación y un ejemplo de cómo observar sus entornos existentes para planificar el escalado a XL o 2XL, y describimos cómo puede actualizar los entornos existentes para utilizar los mayores recursos.

Para obtener detalles adicionales y ejemplos de códigos en Amazon MWAA, visite el Guía del usuario de Amazon MWAA y del Ejemplos de repositorio de GitHub de Amazon MWAA.

Apache, Apache Airflow y Airflow son marcas comerciales registradas o marcas comerciales de Apache Software Foundation en los Estados Unidos y / o en otros países.


Acerca de los autores

Hernán García es arquitecto senior de soluciones en AWS con sede en los Países Bajos. Trabaja en la industria de servicios financieros, apoyando a las empresas en su adopción de la nube. Le apasionan las tecnologías sin servidor, la seguridad y el cumplimiento. Le gusta pasar tiempo con familiares y amigos y probar nuevos platos de diferentes cocinas.

Jeetendra Vaidya es arquitecto de soluciones sénior en AWS y aporta su experiencia a los ámbitos de la IA/ML, la tecnología sin servidor y el análisis de datos. Le apasiona ayudar a los clientes a diseñar soluciones seguras, escalables, confiables y rentables.

Sriharsh Adari es arquitecto senior de soluciones en AWS, donde ayuda a los clientes a trabajar en retrospectiva a partir de los resultados comerciales para desarrollar soluciones innovadoras en AWS. A lo largo de los años, ha ayudado a múltiples clientes en transformaciones de plataformas de datos en sectores verticales de la industria. Su área principal de especialización incluye estrategia tecnológica, análisis de datos y ciencia de datos. En su tiempo libre, le gusta practicar deportes, ver programas de televisión y jugar Tabla.

punto_img

Información más reciente

punto_img