Hoy, AWS anuncia la disponibilidad de actualizaciones de versiones locales para Flujo de trabajo administrado por Amazon para Apache Airflow (Amazon MWAA). Esta mejora le permite actualizar sin problemas sus entornos existentes de la versión 2.x de Apache Airflow a versiones más nuevas disponibles, al mismo tiempo que conserva el historial de ejecución del flujo de trabajo y las configuraciones del entorno. Ahora puede aprovechar las capacidades más recientes de la plataforma Apache Airflow sin tener que crear un entorno de Amazon MWAA completamente nuevo.
Hasta ahora, si deseaba actualizar su entorno Amazon MWAA a una versión diferente de Apache Airflow, tenía que seguir las Migración del entorno de Amazon MWAA instrucciones. Esto implicó crear un nuevo entorno Amazon MWAA y luego migrar todas sus configuraciones y Gráficos acíclicos dirigidos (DAG) a él. Si también necesitaba conservar el historial de ejecuciones de DAG, tenía que realizar una copia de seguridad de su base de datos de metadatos y luego restaurar esa copia de seguridad en el entorno recién creado. Este proceso era propenso a errores, manual e implicaba costos adicionales para mantener dos entornos de Amazon MWAA separados hasta que pudiera verificar el nuevo y retirar el antiguo.
En esta publicación, brindamos una descripción general de la función de actualización de versión en el lugar, exploramos casos de uso aplicables, detallamos los pasos para usarla y brindamos orientación adicional sobre sus capacidades.
Resumen de la solución
Las actualizaciones de versión en el lugar recientemente introducidas por Amazon MWAA brindan una transición optimizada de sus entornos existentes basados en Apache Airflow versión 2.x a versiones más nuevas de Apache Airflow disponibles. Amazon MWAA administra todo el proceso de actualización, desde el aprovisionamiento de nuevas versiones de Apache Airflow hasta la actualización de la base de datos de metadatos. En caso de que falle la actualización, Amazon MWAA está diseñado para volver a la versión estable anterior mediante la instantánea de la base de datos de metadatos asociada.
Actualizar sus entornos existentes en Amazon MWAA es un proceso sencillo. Puede actualizar sus entornos existentes de Apache Airflow 2.0 y posteriores en Amazon MWAA con solo unos clics en la consola de Amazon MWAA, utilizando la API de Amazon MWAA, la Interfaz de línea de comandos de AWS (AWS CLI), o mediante el uso de herramientas como Formación en la nube de AWS, el Kit de desarrollo en la nube de AWS (CDK de AWS), o Terraform. Esta característica está disponible en todas las regiones de Amazon MWAA admitidas actualmente.
En la consola de Amazon MWAA, simplemente edite el entorno y seleccione una versión disponible de Apache Airflow superior a la versión actual de su entorno existente. También puede utilizar el ActualizarEntorno API y especifique la nueva versión de Apache Airflow para activar un proceso de actualización. Para obtener más información sobre las actualizaciones de versiones locales, consulte Actualización de la versión de Apache Airflow de la documentación de Amazon MWAA.
Durante una actualización, Amazon MWAA primero crea una instantánea de la base de datos de metadatos del entorno existente, que luego sirve como base para una nueva base de datos. Posteriormente, todos los componentes de Apache Airflow (servidor web, programador y trabajadores) se actualizan. Finalmente, la base de datos de metadatos recién creada se actualiza, completando de manera efectiva la transición al nuevo entorno.
Casos de uso aplicables
Debería considerar actualizar su versión de Apache Airflow en Amazon MWAA si sus flujos de trabajo existentes pueden adaptarse al cambio y hay una nueva versión disponible con características o mejoras que se alinean con su caso de uso. Al actualizar, puede aprovechar las capacidades más recientes de la plataforma Apache Airflow y mantener la compatibilidad con las nuevas funciones y las mejores prácticas, como la programación basada en datos y los nuevos paquetes de proveedores de Amazon. lanzado en Apache Airflow 2.4.3. El proceso de actualización implica un tiempo de inactividad del entorno que puede tardar hasta 2 horas en completarse según el tamaño del entorno y se puede realizar bajo demanda en el momento que más le convenga. Si su entorno existente se usa mucho y no puede permitirse un tiempo de inactividad, considere crear un nuevo entorno en su lugar.
Requisitos previos
Al prepararse para la actualización, asegúrese de completar los siguientes pasos de requisitos previos:
- Verifique los cambios de Apache Airflow entre sus versiones existentes y nuevas del entorno. Revise el flujo de aire de Apache notas de la versión para comprender el impacto de las nuevas funciones, los cambios significativos y las correcciones de errores que todas las versiones intermedias de Apache Airflow realizaron entre sus versiones de origen y destino.
- Revise su existente
requirements.txt
para verificar el conjunto correcto de dependencias requeridas para su entorno de destino. Además, verifique que surequirements.txt
El archivo tiene el archivo de restricciones correcto agregado en la parte superior del archivo para que coincida con su entorno de destino. El archivo de restricciones de Apache Airflow especifica los módulos dependientes y las versiones del proveedor disponibles en el momento del lanzamiento de Apache Airflow. Agregar un archivo de restricciones evita que se instalen bibliotecas incompatibles en su entorno. En el siguiente ejemplo, reemplace{Airflow-version}
con el número de versión de su entorno de destino, y{Python-version}
con la versión de Python que sea compatible con su entorno:--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-{Airflow-version}/constraints-{Python-version}.txt"
- Revise la compatibilidad de las bibliotecas de Python adicionales mencionadas en su
requirements.txt
archivo para que coincida con su entorno de destino. Apache Airflow v2.4.3 y superior usan Python v3.10, mientras que las versiones anteriores de Apache Airflow usan Python v3.7. Por lo tanto, si intenta actualizar su entorno basado en Apache Airflow v2.0.2/2.2.2 existente a Apache Airflow v2.4.3 o superior, debe actualizar sus bibliotecas de Python adicionales para que coincidan con Python v3.10. - Con Apache Airflow v2.4.3 y superior, la lista de paquetes de proveedores que Amazon MWAA instala de forma predeterminada para su entorno ha cambiado. Tenga en cuenta que algunas importaciones y nombres de operadores han cambiado en el nuevo paquete de proveedores en Apache Airflow para estandarizar la convención de nomenclatura en los paquetes de proveedores. Compara el lista de paquetes de proveedores instalados por defecto en Apache Airflow v2.2.2 o v2.0.2, y configure cualquier paquete adicional que pueda necesitar para su nuevo entorno Apache Airflow v2.4.3 y superior.
- Asegúrese de que sus DAG y otros recursos de flujo de trabajo sean compatibles con la nueva versión de Apache Airflow a la que se está actualizando.
- Ingrese al aws-mwaa-corredor-local utilidad para probar sus DAG, requisitos, complementos y dependencias existentes localmente antes de implementarlos en Amazon MWAA. Puede crear un entorno de Apache Airflow de destino que sea similar a una imagen de producción de Amazon MWAA localmente usando
aws-mwaa-local-runner
y verifique que todos sus componentes funcionen antes de intentar actualizar su entorno Amazon MWAA. Además, pruebe el nuevo proceso de actualización del entorno en entornos inferiores de Amazon MWAA, como desarrollo o ensayo, antes de implementar la actualización en entornos de producción.
Proceso de actualización
Cuando se inicia una actualización, Amazon MWAA detiene los componentes subyacentes existentes de Apache Airflow (servidor web, programador y trabajadores). Este proceso detiene cualquier tarea de trabajador que se esté ejecutando actualmente. El estado de su entorno en esta etapa se mostrará como UPDATING
. El proceso de actualización luego crea una instantánea de la base de datos de la base de datos de metadatos, marcada por el estado CREATING_SNAPSHOT
. Cuando se completa la instantánea, el estado del entorno vuelve a UPDATING
ya que Amazon MWAA activa la creación de un nuevo entorno de Apache Airflow que coincide con su selección de versión y aplica los cambios de esquema necesarios a la base de datos de metadatos existente para alinearla con el entorno de destino de Apache Airflow. Durante esta fase, se instalan sus requisitos especificados, complementos y otras dependencias.
Al finalizar, su nuevo entorno se marca como AVAILABLE
, lo que indica que el proceso de actualización se ha realizado correctamente y que el entorno está listo para la prueba. Ahora puede iniciar sesión en su interfaz de usuario de Apache Airflow para verificar la presencia de sus DAG existentes, sus ejecuciones históricas, conexiones configuradas y más.
Sin embargo, si hay fallas en la instalación de los requisitos, complementos y archivos de dependencias especificados, el entorno inicia una reversión a la versión estable anterior. Durante este proceso, el estado de su entorno se mostrará como ROLLING_BACK
. Si la reversión es exitosa, su entorno estable anterior estará disponible y el estado se mostrará como UPDATE_FAILED
hasta que se intente una nueva actualización y tenga éxito. Si la reversión falla, el estado se mostrará como UNAVAILABLE
, lo que indica que su entorno no es funcional.
Si falla el proceso de actualización de su entorno, es probable que el Servicio de contenedor elástico de Amazon (Amazon ECS) AWS Fargate Los clústeres tenían problemas de estabilización causados por requisitos y complementos en conflicto, problemas de red o problemas de migración de la base de datos después de la actualización del componente Apache Airflow. Para mitigar estos problemas, asegúrese de que sus DAG y requisitos funcionen sin problemas con el aws-mwaa-local-runner
utilidad e, idealmente, prueba en un entorno de prueba de Amazon MWAA.
Consideraciones adicionales
Tenga en cuenta la siguiente información adicional de esta característica:
- El proceso de actualización está disponible bajo demanda y se limitará a pasar a versiones más nuevas. Las actualizaciones de versión locales en Amazon MWAA no son compatibles con la versión 1.10.z. Para realizar una actualización de una versión principal, por ejemplo, de la versión 1.yz a la 2.yz, debe crear un nuevo entorno y migrar sus recursos.
- Solo puede seleccionar versiones superiores aplicables a las que puede actualizar. La degradación a una versión anterior no está disponible.
- El proceso de reversión puede llevar más tiempo y, si tiene Servicio de almacenamiento simple de Amazon (Amazon S3) habilitado para versiones de depósito, Amazon MWAA está diseñado para revertir el entorno a la configuración de trabajo anterior, incluidos complementos y requisitos. Sin embargo, los cambios manuales realizados en sus DAG no se revertirán durante este proceso.
- Una vez que el proceso de actualización se haya completado correctamente y el entorno esté disponible, cualquier DAG en ejecución que se haya interrumpido durante la actualización se programará para un reintento, según la forma en que configure los reintentos para sus DAG. También puede activarlos manualmente o esperar a la siguiente ejecución programada.
- Debe actualizar iterativamente sus entornos comenzando primero con los menos críticos.
Conclusión
En esta publicación, hablamos sobre la nueva función de Amazon MWAA que le permite actualizar su entorno Amazon MWAA existente a versiones superiores de Apache Airflow. Esta función es compatible con entornos Amazon MWAA nuevos y existentes que ejecutan Apache Airflow 2.x y superior. Utilice esta característica para actualizar sus versiones de Apache Airflow mientras conserva sus historiales de ejecución de flujo de trabajo y configuraciones de entorno existentes. Al actualizar, puede aprovechar las capacidades más recientes de la plataforma Apache Airflow y mantener la compatibilidad con las nuevas funciones y adherirse a las mejores prácticas.
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
Parnab Basak es un arquitecto de soluciones y un especialista sin servidor en AWS. Se especializa en la creación de nuevas soluciones que son nativas de la nube utilizando prácticas modernas de desarrollo de software como sin servidor, DevOps y análisis. Parnab trabaja de cerca en el espacio de análisis y servicios de integración para ayudar a los clientes a adoptar los servicios de AWS para sus necesidades de orquestación de flujo de trabajo.
fernando gamero es ingeniero Senior Solutions Architect en AWS, con más de 25 años de experiencia en la industria de la tecnología, desde telecomunicaciones, banca hasta startups. Ahora está ayudando a los clientes a crear arquitecturas impulsadas por eventos, adoptar soluciones de IoT en el perímetro y transformar sus canalizaciones de datos y aprendizaje automático a escala.
Shubham Mehta es un gerente de producto experimentado con más de ocho años de experiencia y un historial comprobado de entrega de productos exitosos. En su función actual como gerente sénior de productos en AWS, supervisa los flujos de trabajo administrados de Amazon para Apache Airflow (Amazon MWAA) y encabeza las contribuciones de código abierto de Apache Airflow para mejorar aún más la funcionalidad del producto.
- Distribución de relaciones públicas y contenido potenciado por SEO. Consiga amplificado hoy.
- PlatoAiStream. Inteligencia de datos Web3. Conocimiento amplificado. Accede Aquí.
- Acuñando el futuro con Adryenn Ashley. Accede Aquí.
- Compra y Vende Acciones en Empresas PRE-IPO con PREIPO®. Accede Aquí.
- Fuente: https://aws.amazon.com/blogs/big-data/introducing-in-place-version-upgrades-with-amazon-mwaa/
- :posee
- :es
- :no
- $ UP
- 1
- 10
- 100
- 110
- 7
- a
- Nuestra Empresa
- arriba
- acomodar
- a través de
- acíclico
- adicional
- la adición de
- Adicionales
- Información adicional
- Adicionalmente
- adherirse
- adoptar
- Adopción
- Ventaja
- Después
- alinear
- Todos
- permite
- también
- Amazon
- Flujos de trabajo administrados por Amazon para Apache Airflow (Amazon MWAA)
- Amazon Web Services
- an
- Analytics
- y
- Anunciando
- cualquier
- APACHE
- abejas
- aplicable
- somos
- AS
- asociado
- At
- atentado
- intentando
- disponibilidad
- Hoy Disponibles
- AWS
- Atrás
- Backup
- Bancario
- base
- BE
- esto
- antes
- "Ser"
- MEJOR
- y las mejores prácticas
- entre
- Error
- Construir la
- by
- PUEDEN
- capacidades
- case
- cases
- causado
- el cambio
- cambiado
- Cambios
- de cerca
- Soluciones
- nativo de la nube
- código
- comparar
- compatibilidad
- compatible
- completar
- Completado
- completando
- terminación
- componente
- componentes
- Configuración
- Contradictorio
- Conexiones
- Considerar
- Consola
- restricciones
- Envase
- contribuciones
- Convención
- correcta
- Precio
- podría
- países
- Para crear
- creado
- crea
- Creamos
- creación
- crítico
- Current
- En la actualidad
- Clientes
- DÍA
- datos
- basada en datos
- Base de datos
- Predeterminado
- entregar
- Demanda
- dependiente
- Dependiente
- Desplegando
- diseñado
- destino
- detalle
- detalles
- Dev
- Desarrollo
- DevOps
- una experiencia diferente
- Pantalla
- documentación
- el tiempo de inactividad
- impulsados
- durante
- Southern Implants
- de manera eficaz
- ya sea
- facilita
- ingeniero
- mejorar
- Estrategias orientadas
- garantizar
- Todo
- enteramente
- Entorno
- ambientes
- error
- Éter (ETH)
- Evento
- ejemplo
- ejemplos
- existente
- experience
- experimentado
- explorar
- falla
- Fracaso
- Feature
- Caracteristicas
- pocos
- Archive
- archivos
- Finalmente
- Nombre
- seguir
- siguiendo
- Desde
- funcional
- a la fatiga
- promover
- GitHub
- guía
- tenido
- Tienen
- es
- he
- fuertemente
- ayudando
- más alto
- su
- histórico
- historia
- HORAS
- Sin embargo
- HTML
- http
- HTTPS
- if
- imagen
- Impacto
- importaciones
- mejoras
- in
- Incluye
- incompatible
- indicando
- energético
- información
- Iniciados
- instalando
- Instrucciones
- integración
- Intermedio
- interrumpido
- Introducido
- Presentamos
- involucra
- IOT
- cuestiones
- IT
- SUS
- jpg
- solo
- luego
- más reciente
- APRENDE:
- aprendizaje
- menos
- bibliotecas
- como
- que otros
- Limitada
- línea
- Lista
- localmente
- log
- máquina
- máquina de aprendizaje
- hecho
- mantener
- gran
- para lograr
- gestionado
- gerente
- gestiona
- manual
- a mano
- marcado
- Match
- mencionado
- metadatos
- podría
- migrado
- migrar
- migración
- mente
- Mitigar las
- Moderno
- Módulos
- más,
- emocionante
- debe
- nombres
- nombrando
- nativo
- necesario
- ¿ Necesita ayuda
- red
- Nuevo
- nueva función
- Nuevas características
- nuevas soluciones
- recién
- Next
- ahora
- número
- of
- Viejo
- on
- las
- , solamente
- de código abierto
- operador
- or
- orquestación
- solicite
- Otro
- salir
- Más de
- visión de conjunto
- paquete
- paquetes
- realizar
- realizado
- fase
- plataforma
- Platón
- Inteligencia de datos de Platón
- PlatónDatos
- plugins
- Publicación
- prácticas
- preparación
- presencia
- evita
- anterior
- Producto
- gerente de producto
- Producción
- Productos
- probado
- proporcionar
- proveedor
- Python
- ready
- grabar
- regiones
- registrado
- ,
- Estrenos
- reemplazar
- Requisitos
- Requisitos
- Recursos
- restaurar
- retención
- devoluciones
- revertir
- una estrategia SEO para aparecer en las búsquedas de Google.
- Función
- Rodar
- Rolling
- Ejecutar
- correr
- Escala
- programada
- programación
- sin problemas
- selección
- mayor
- separado
- Sin servidor
- sirve
- Servicios
- set
- tienes
- Mostrar
- importante
- similares
- sencillos
- simplemente
- Tamaño
- Instantánea
- Software
- Desarrollo de software ad-hoc
- Soluciones
- algo
- Fuente
- Espacio
- especialista
- se especializa
- especificado
- estable
- Etapa
- puesta en escena
- Comience a
- Startups
- Zonas
- Estado
- pasos
- Paradas
- STORAGE
- sencillo
- racionalizado
- Después
- exitosos
- Con éxito
- tal
- Soportado
- ¡Prepárate!
- Target
- tareas
- Tecnología
- telecomunicaciones
- Terraform
- test
- Pruebas
- que
- esa
- La
- su
- Les
- luego
- Ahí.
- por lo tanto
- Estas
- así
- equipo
- a
- parte superior
- seguir
- marcas comerciales
- transformadora
- transición
- detonante
- dos
- ui
- subyacente
- entender
- United
- Estados Unidos
- hasta
- Actualizar
- actualizar
- actualizado
- actualizaciones
- utilizan el
- caso de uso
- usado
- Usuario
- usando
- utilidad
- verificar
- versión
- Visite
- esperar
- deseado
- fue
- Camino..
- we
- web
- servidor web
- servicios web
- tuvieron
- cuando
- que
- mientras
- seguirá
- sin
- Actividades:
- obrero
- los trabajadores.
- flujo de trabajo
- flujos de trabajo
- trabajando
- funciona
- X
- años
- Usted
- tú
- zephyrnet