Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de las opciones de configuración de Apache Airflow en Amazon MWAA
Las opciones de configuración de Apache Airflow se pueden adjuntar a su entorno de Amazon Managed Workflows para Apache Airflow como variables de entorno. Puede elegir una opción de la lista desplegable sugerida o especificar opciones de configuración personalizadas para su versión de Apache Airflow en la consola de Amazon MWAA. En este tema se describen las opciones de configuración de Apache Airflow disponibles y cómo utilizarlas para anular los ajustes de configuración de Apache Airflow en su entorno.
Requisitos previos
Para poder llevar a cabo los pasos de esta página, necesitará lo siguiente.
-
Permisos: el administrador Cuenta de AWS debe haberte concedido el acceso a la política de control de MWAAFull ConsoleAccess acceso de Amazon para tu entorno. Además, su rol de ejecución debe permitir que su entorno Amazon MWAA acceda a los AWS recursos que utiliza su entorno.
-
Acceso: si necesita acceder a los repositorios públicos para instalar las dependencias directamente en el servidor web, su entorno debe estar configurado con acceso al servidor web de la red pública. Para obtener más información, consulta Modos de acceso de Apache Airflow.
-
Configuración de Amazon S3: el bucket de Amazon S3 que se utiliza para almacenar los complementos personalizados y las dependencias de Python
requirements.txtdebe estar configurado con el acceso público bloqueado y el control de versiones activado. DAGsplugins.zip
Funcionamiento
Al crear un entorno, Amazon MWAA adjunta los ajustes de configuración que especifique en la consola de Amazon MWAA en las opciones de configuración de Airflow como variables de entorno al contenedor de su entorno. AWS Fargate Si utiliza una configuración con el mismo nombre en airflow.cfg, las opciones que especifique en la consola Amazon MWAA anularán los valores incluidos en airflow.cfg.
Si bien no exponemos el airflow.cfg en la interfaz de usuario de Apache Airflow de un entorno de Amazon MWAA de manera predeterminada, puede cambiar las opciones de configuración de Apache Airflow directamente en la consola de Amazon MWAA, incluida la configuración de webserver.expose_config para exponer las configuraciones.
Uso de las opciones de configuración para cargar complementos
De forma predeterminada, en Apache Airflow v2 y versiones posteriores, los complementos se configuran para que se carguen de forma «lenta» mediante la configuración. core.lazy_load_plugins : True Si utiliza complementos personalizados, debe añadirlos core.lazy_load_plugins : False como opción de configuración de Apache Airflow para cargar los complementos al inicio de cada proceso de Airflow para anular la configuración predeterminada.
Información general de las opciones de configuración
Cuando agrega una configuración en la consola Amazon MWAA, Amazon MWAA escribe la configuración como una variable de entorno.
-
Opciones enumeradas. Puede elegir uno de los ajustes de configuración disponibles para su versión de Apache Airflow en la lista desplegable. Por ejemplo,
dag_concurrency:16. El ajuste de configuración se traduce al contenedor de Fargate de su entorno comoAIRFLOW__CORE__DAG_CONCURRENCY : 16 -
Opciones personalizadas. También puede especificar las opciones de configuración de Airflow que no aparecen en la lista desplegable para su versión de Apache Airflow. Por ejemplo,
foo.user:YOUR_USER_NAME. El ajuste de configuración se traduce al contenedor de Fargate de su entorno comoAIRFLOW__FOO__USER : YOUR_USER_NAME
Opciones de configuración de Apache Airflow
La siguiente imagen muestra dónde puede personalizar las opciones de configuración de Apache Airflow en la consola de Amazon MWAA.
Referencia de Apache Airflow
Para obtener una lista de las opciones de configuración compatibles con Apache Airflow, consulte la Referencia de configuración en la guía de referencia
Uso de la consola de Amazon MWAA
A continuación, se explican los pasos que debe seguir para añadir una opción de configuración de Apache Airflow a su entorno.
-
Abra la página Entornos
en la consola de Amazon MWAA. -
Seleccione un entorno.
-
Elija Editar.
-
Elija Siguiente.
-
Seleccione Agregar configuración personalizada en el panel Opciones de configuración de Airflow.
-
En la lista desplegable, elija una opción de configuración e introduzca un valor. También puede escribir una configuración personalizada e introducir un valor.
-
Seleccione Agregar configuración personalizada para cada configuración que desee agregar.
-
Seleccione Save.
Referencia de la configuración
La siguiente sección contiene la lista de configuraciones de Apache Airflow disponibles en la lista desplegable de la consola de Amazon MWAA.
Configuración de correo electrónico
La siguiente lista muestra las opciones de configuración de las notificaciones por correo electrónico de Airflow disponibles en Amazon MWAA para Apache Airflow v2 y v3.
Recomendamos utilizar el puerto 587 para el tráfico SMTP. De forma predeterminada, AWS bloquea el tráfico SMTP saliente en el puerto 25 de todas las instancias de Amazon EC2 . Si desea enviar tráfico saliente por el puerto 25, solicite que se elimine esta restricción
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
email.email_backend |
La utilidad Apache Airflow utilizada para las notificaciones por correo electrónico en email_backend |
airflow.utils.email.send_email_smtp |
|
smtp.smtp_host |
El nombre del servidor saliente utilizado como dirección de correo electrónico en smtp_host |
localhost |
|
smtp.smtp_starttls |
False |
|
|
smtp.smtp_ssl |
Se usa la capa de sockets seguros (SSL) para conectar el servidor y el cliente de correo electrónico en smtp_ssl |
True |
|
smtp.smtp_port |
El puerto de protocolo de control de transmisión (TCP) designado al servidor en smtp_port |
587 |
|
smtp.smtp_mail_from |
La dirección de correo electrónico saliente en smtp_mail_from |
myemail@domain.com |
Configuración de tareas
La siguiente lista muestra las configuraciones disponibles en la lista desplegable para las tareas de Airflow en Amazon MWAA para Apache Airflow v2 y v3.
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
core.default_task_retries |
El número de veces que se debe volver a intentar una tarea de Apache Airflow en default_task_retries |
3 |
|
core.parallelism |
El número máximo de instancias de tareas que se pueden ejecutar simultáneamente en todo el entorno en paralelo (paralelismo |
40 |
Configuraciones del programador
La siguiente lista muestra las configuraciones del programador de Apache Airflow disponibles en la lista desplegable de Amazon MWAA para Apache Airflow v2 y v3.
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
scheduler.catchup_by_default |
Indica al programador que cree una ejecución de DAG para “alcanzar” el intervalo de tiempo específico de catchup_by_default |
False |
|
scheduler.scheduler_zombie_task_threshold notaNo disponible en Apache Airflow v3. |
Indica al programador si debe marcar la instancia de la tarea como fallida y volver a programarla en scheduler_zombie_task_threshold |
300 |
Configuraciones del proceso de trabajo
La siguiente lista muestra las configuraciones de trabajo de Airflow disponibles en la lista desplegable de Amazon MWAA para Apache Airflow v2 y v3.
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
celery.worker_autoscale |
El número máximo y mínimo de tareas que se pueden ejecutar simultáneamente en cualquier proceso de trabajo que utilice el Celery Executor |
16, 12 |
Configuraciones de servidor web
La siguiente lista muestra las configuraciones del servidor web Apache Airflow disponibles en la lista desplegable de Amazon MWAA para Apache Airflow v2 y v3.
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
webserver.default_ui_timezone notaNo disponible en Apache Airflow v3. |
La configuración de fecha y hora de la interfaz de usuario de Apache Airflow predeterminada en default_ui_timezone notaAl configurar |
America/New_York |
Configuraciones del desencadenador
La siguiente lista muestra las configuraciones del activador de Apache Airflow disponibles
| Opción de configuración de Airflow | Descripción | Ejemplo de valor |
|---|---|---|
|
mwaa.triggerer_enabled |
Se utiliza para activar y desactivar el desencadenador en Amazon MWAA. De forma predeterminada, este valor se establece en |
True |
|
triggerer.default_capacity (en la versión 2) triggerer.capacity (en la versión 3) |
Define el número de desencadenamientos que cada desencadenador puede ejecutar en paralelo. En Amazon MWAA, esta capacidad se establece para cada desencadenador y para cada programador, ya que ambos componentes funcionan juntos. El valor predeterminado para cada programador es |
125 |
Ejemplos y código de ejemplo
Ejemplo de DAG
Puede usar el siguiente DAG para imprimir las opciones de configuración email_backend de Apache Airflow. Para ejecutarlo en respuesta a eventos de la MWAA de Amazon, copia el código en la DAGs carpeta de tu entorno en el depósito de almacenamiento de Amazon S3.
from airflow.decorators import dag from datetime import datetime def print_var(**kwargs): email_backend = kwargs['conf'].get(section='email', key='email_backend') print("email_backend") return email_backend @dag( dag_id="print_env_variable_example", schedule_interval=None, start_date=datetime(yyyy,m,d), catchup=False, ) def print_variable_dag(): email_backend_test = PythonOperator( task_id="email_backend_test", python_callable=print_var, provide_context=True ) print_variable_test = print_variable_dag()
Ejemplo de configuración de las notificaciones por correo electrónico
Las siguientes opciones de configuración de Apache Airflow se pueden utilizar para una cuenta de correo electrónico de Gmail.com con una contraseña de aplicación. Para obtener más información, consulta Cómo iniciar sesión con contraseñas de aplicaciones en
Siguientes pasos
-
Obtenga información sobre cómo cargar la carpeta de DAG a su bucket de Amazon S3 en Añadir o actualizar DAGs.