

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.

# Cómo añadir o actualizar DAG
<a name="configuring-dag-folder"></a>

Los gráficos acíclicos dirigidos (DAG) se definen dentro de un archivo de Python que define la estructura del DAG como código. Para cargar DAG en su entorno, puede usar la AWS CLI o la consola de Amazon S3. En esta página, se describen los pasos para añadir o actualizar los DAG de Apache Airflow en su entorno de Amazon Managed Workflows para Apache Airflow mediante la carpeta `dags` de su bucket de Amazon S3.

**Topics**
+ [Requisitos previos](#configuring-dag-folder-prereqs)
+ [Funcionamiento](#configuring-dag-folder-how)
+ [¿Qué ha cambiado?](#configuring-dag-folder-changed)
+ [Pruebas de los DAG mediante la utilidad de la CLI de Amazon MWAA](#working-dag-folder-cli-utility)
+ [Cómo cargar el código DAG en Amazon S3](#configuring-dag-folder-uploading)
+ [Especificación de la ruta a su carpeta DAG en la consola Amazon MWAA (la primera vez)](#configuring-dag-folder-mwaaconsole)
+ [Visualización de cambios en la UI de Apache Airflow](#configuring-dag-folder-mwaaconsole-view)
+ [Siguientes pasos](#configuring-dag-folder-next-up)

## Requisitos previos
<a name="configuring-dag-folder-prereqs"></a>

Para poder llevar a cabo los pasos de esta página, necesitará lo siguiente.
+ **Permisos**: el administrador debe haber concedido a su Cuenta de AWS acceso a la política de control de acceso de [AmazonMWAAFullConsoleAccess](access-policies.md#console-full-access) para su entorno. Además, su [rol de ejecución](mwaa-create-role.md) debe permitir que su entorno de Amazon MWAA acceda a los recursos de AWS que utiliza su entorno.
+ **Acceso**: si tiene que acceder a los repositorios públicos para instalar dependencias directamente en el servidor web, su entorno debe estar configurado con acceso a un servidor web de **red pública**. Para obtener más información, consulta [Modos de acceso de Apache Airflow](configuring-networking.md).
+ **Configuración de Amazon S3**: el [bucket de Amazon S3](mwaa-s3-bucket.md) que se utiliza para almacenar los DAG, los complementos personalizados en `plugins.zip` y las dependencias de Python en `requirements.txt` deben estar configurados con el *acceso público bloqueado* y el control de *versiones* activado.

## Funcionamiento
<a name="configuring-dag-folder-how"></a>

Un gráfico acíclico dirigido (DAG) se define dentro de un archivo de Python que define la estructura del DAG como código. Consta de lo siguiente:
+ Una definición de [DAG](https://airflow.apache.org/docs/stable/concepts.html#dags).
+ [Operadores](https://airflow.apache.org/concepts.html#operators) que describen cómo ejecutar el DAG y las [tareas](https://airflow.apache.org/docs/stable/concepts.html#tasks) que se van a ejecutar.
+ [Relaciones entre los operadores](https://airflow.apache.org/concepts.html#bitshift-composition) que describen el orden en el que se ejecutan las tareas.

Para ejecutar una plataforma Apache Airflow en un entorno Amazon MWAA, debe copiar la definición del DAG en la carpeta `dags` del bucket de almacenamiento. Por ejemplo, la carpeta DAG de su bucket de almacenamiento debe tener el siguiente aspecto:

**Example Carpeta de DAG**  

```
dags/
└ dag_def.py
```

Amazon MWAA sincroniza automáticamente los objetos nuevos y modificados de su bucket de Amazon S3 con la carpeta `/usr/local/airflow/dags` del programador y los contenedores de procesos de trabajo de Amazon MWAA cada 30 segundos, lo que preserva la jerarquía de archivos de la fuente de Amazon S3, independientemente del tipo de archivo. El tiempo que tardan los nuevos DAG en aparecer en la UI de Apache Airflow depende de `scheduler.dag\$1dir\$1list\$1interval`. Los cambios en los DAG existentes se recogerán en el siguiente [ciclo de procesamiento de los DAG](best-practices-tuning.md#best-practices-tuning-scheduler).

**nota**  
No es necesario incluir el archivo de configuración `airflow.cfg` en la carpeta del DAG. Puede anular las configuraciones predeterminadas de Apache Airflow desde la consola de Amazon MWAA. Para obtener más información, consulta [Uso de las opciones de configuración de Apache Airflow en Amazon MWAA](configuring-env-variables.md).

## ¿Qué ha cambiado?
<a name="configuring-dag-folder-changed"></a>

Para revisar los cambios de una versión específica de Apache Airflow, consulte la página de [notas de la versión](https://airflow.apache.org/docs/apache-airflow/stable/release_notes.html#release-notes).
+ Configuraciones de Apache Airflow v3: [referencia de configuración](https://airflow.apache.org/docs/apache-airflow/3.0.6/configurations-ref.html)
+ Información sobre la interfaz pública de Apache Airflow v2: [Interfaz pública de Airflow](https://airflow.apache.org/docs/apache-airflow/2.10.3/public-airflow-interface.html)

## Pruebas de los DAG mediante la utilidad de la CLI de Amazon MWAA
<a name="working-dag-folder-cli-utility"></a>
+ La utilidad de la interfaz de la línea de comandos (CLI) replica entornos en Amazon Managed Workflows para Apache Airflow de forma local.
+ La CLI crea localmente una imagen de contenedor de Docker similar a una imagen de producción de Amazon MWAA. Esto le permite ejecutar un entorno local de Apache Airflow para desarrollar y probar los DAG, los complementos personalizados y las dependencias antes de implementarlos en Amazon MWAA.
+ Para ejecutar la CLI, consulte [aws-mwaa-docker-images](https://github.com/aws/amazon-mwaa-docker-images) en GitHub.

## Cómo cargar el código DAG en Amazon S3
<a name="configuring-dag-folder-uploading"></a>

Puede usar la consola de Amazon S3 o la AWS Command Line Interface (AWS CLI) para cargar un código DAG a su bucket de Amazon S3. En los siguientes pasos se supone que está cargando el código (`.py`) a una carpeta con el nombre `dags` en su bucket de Amazon S3.

### Uso de AWS CLI
<a name="configuring-dag-folder-cli"></a>

La AWS Command Line Interface (AWS CLI) es una herramienta de código abierto que le permite interactuar con los servicios de AWS mediante el uso de comandos en el shell de la línea de comandos. Para completar los pasos de esta página, necesita lo siguiente:
+ [AWS CLI: instalar la versión 2](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html).
+ [AWS CLI: configuración rápida con `aws configure`](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

**Carga mediante la AWS CLI**

1. Use el siguiente comando para obtener una lista de todos los buckets de Amazon S3.

   ```
   aws s3 ls
   ```

1. Utilice el comando siguiente para enumerar los archivos y las carpetas del bucket de Amazon S3 para su entorno.

   ```
   aws s3 ls s3://YOUR_S3_BUCKET_NAME
   ```

1. El siguiente comando carga el archivo `dag_def.py` en una carpeta `dags`. 

   ```
   aws s3 cp dag_def.py s3://amzn-s3-demo-bucket/dags/
   ```

   Si aún no existe una carpeta con el nombre `dags` en su bucket de Amazon S3, este comando crea la carpeta `dags` y carga el archivo con el nombre `dag_def.py` en la nueva carpeta.

### Uso de la consola de Amazon S3
<a name="configuring-dag-folder-console"></a>

La consola de Amazon S3 es una interfaz de usuario basada en la web que le permite crear y administrar los recursos de su bucket de Amazon S3. En los siguientes pasos se supone que tiene una carpeta DAG denominada `dags`.

**Carga del contenido usando la consola de Amazon S3**

1. Abra la página [Entornos](https://console.aws.amazon.com/mwaa/home#/environments) en la consola de Amazon MWAA.

1. Seleccione un entorno.

1. Seleccione el enlace del **bucket de S3** en el panel de **códigos de DAG en S3** para abrir el bucket de almacenamiento en la consola.

1. Elija la carpeta `dags`.

1. Seleccione **Cargar**.

1. Elija **Añadir archivo**.

1. Seleccione la copia local de su `dag_def.py`, elija **Cargar**.

## Especificación de la ruta a su carpeta DAG en la consola Amazon MWAA (la primera vez)
<a name="configuring-dag-folder-mwaaconsole"></a>

En los pasos siguientes, se supone que está especificando la ruta de una carpeta del bucket de Amazon S3 denominada `dags`.

1. Abra la página [Entornos](https://console.aws.amazon.com/mwaa/home#/environments) en la consola de Amazon MWAA.

1. Elija el entorno en el que desee ejecutar los DAG.

1. Seleccione **Editar**.

1. En el panel **DAG code in Amazon S3** (Código DAG en Amazon S3), elija **Browse S3** (Navegar en S3) junto al campo **DAG folder** (Carpeta de DAG).

1. Seleccione su carpeta `dags`.

1. Seleccione **Elegir**.

1. Seleccione **Siguiente**, **Actualizar entorno**.

## Visualización de cambios en la UI de Apache Airflow
<a name="configuring-dag-folder-mwaaconsole-view"></a>

Necesita permisos de [Política de acceso a la interfaz de usuario de Apache Airflow: Amazon MWAAWeb ServerAccess](access-policies.md#web-ui-access) para su cuenta de Cuenta de AWS en AWS Identity and Access Management (IAM) para ver la UI de Apache Airflow.

**Pasos para acceder a la interfaz de usuario de Apache Airflow**

1. Abra la página [Entornos](https://console.aws.amazon.com/mwaa/home#/environments) en la consola de Amazon MWAA.

1. Seleccione un entorno.

1. Elija **Abrir interfaz de usuario de Airflow**.

## Siguientes pasos
<a name="configuring-dag-folder-next-up"></a>

Pruebe sus DAG, complementos personalizados y dependencias de Python de forma local con [aws-mwaa-docker-images](https://github.com/aws/amazon-mwaa-docker-images) en GitHub.