Arquitectura del entorno

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

En esta página, se describe la arquitectura de los entornos de Cloud Composer.

Configuración de la arquitectura del entorno

Los entornos de Cloud Composer 3 tienen una configuración única que no depende del tipo de red:

Proyectos del cliente y el usuario

Cuando creas un entorno, Cloud Composer distribuye los recursos del entorno entre un proyecto de usuario y uno de cliente:

  • El proyecto de cliente es un proyecto de Google Cloud en el que creas tus entornos. Puedes crear más de un entorno en un solo proyecto de cliente.

El proyecto de usuario es un proyecto de usuario administrado por Google. El proyecto de usuario proporciona control de acceso unificado y una capa adicional de seguridad de los datos a tu entorno. Cada entorno de Cloud Composer tiene su propio proyecto de usuario.

Componentes del entorno

Un entorno de Cloud Composer consta de componentes de entorno.

Un componente del entorno es un elemento de una infraestructura administrada de Airflow que se ejecuta en Google Cloud, como parte de tu entorno. Los componentes del entorno se ejecutan en el usuario o en el proyecto del cliente de tu entorno.

Bucket del entorno

El bucket del entorno es un bucket de Cloud Storage que almacena DAG, complementos, dependencias de datos y registros de Airflow. El bucket de Environment se encuentra en el proyecto del cliente.

Cuando subes tus archivos DAG a la carpeta /dags en el bucket de tu entorno, Cloud Composer sincroniza los DAG con los componentes de Airflow de tu entorno.

Servidor web de Airflow

El servidor web de Airflow ejecuta la IU de Airflow de tu entorno.

Cloud Composer proporciona acceso a la interfaz en función de las identidades de los usuarios y las vinculaciones de políticas de IAM definidas para los usuarios.

Base de datos de Airflow

La base de datos de Airflow es una instancia de Cloud SQL que se ejecuta en el proyecto de usuario de tu entorno. Aloja la base de datos de metadatos de Airflow.

Para proteger la información sensible del flujo de trabajo y la conexión, Cloud Composer permite el acceso a la base de datos solo a la cuenta de servicio de tu entorno.

Otros componentes de Airflow

Estos son otros componentes de Airflow que se ejecutan en tu entorno:

  • Los programadores de Airflow analizan los archivos de definición de DAG, programan ejecuciones de DAG según el intervalo de programación y ponen en cola las tareas para que los trabajadores de Airflow las ejecuten.

  • Los activadores de Airflow supervisan todas las tareas diferidas de tu entorno de forma asíncrona. Si estableces la cantidad de activadores en tu entorno por encima de cero, puedes usar operadores diferibles en tus DAG.

  • Los procesadores de DAG de Airflow procesan archivos de DAG y los convierten en objetos DAG. En Cloud Composer 3, los procesadores de DAG se ejecutan como componentes de entorno separados.

  • Los trabajadores de Airflow ejecutan tareas que programan los programadores de Airflow. La cantidad mínima y máxima de trabajadores en tu entorno cambia de forma dinámica según la cantidad de tareas en la cola.

Arquitectura del entorno de Cloud Composer 3

Recursos del entorno de Cloud Composer 3 en el proyecto de usuario y el proyecto del cliente
Figura 1. Arquitectura del entorno de Cloud Composer 3 (haz clic para ampliar)

En los entornos de Cloud Composer 3, haz lo siguiente:

  • El proyecto de usuario aloja una instancia de Cloud SQL con la base de datos de Airflow.
  • Todos los recursos de Airflow se ejecutan en el proyecto de usuario.
  • El proyecto del cliente aloja el bucket del entorno.
  • Se puede usar un adjunto de red de VPC personalizado en el proyecto del cliente para conectar el entorno a una red de VPC personalizada. Puedes usar un adjunto existente o Cloud Composer puede crearlo automáticamente a pedido. También es posible desvincular un entorno de una red de VPC.
  • La consola de Google Cloud, Monitoring y Logging en el proyecto del cliente proporcionan formas de administrar el entorno y los DAG y las ejecuciones de DAG, además de acceder a las métricas y los registros del entorno. También puedes usar la IU de Airflow, Google Cloud CLI, la API de Cloud Composer y Terraform para los mismos fines.

Integración en Cloud Logging y Cloud Monitoring

Cloud Composer se integra en Cloud Logging y Cloud Monitoring en tu proyecto de Google Cloud, de modo que tengas un lugar central para ver los registros de Airflow y DAG.

Cloud Monitoring recopila y transfiere métricas, eventos y metadatos de Cloud Composer para generar estadísticas a través de paneles y gráficos.

Debido a la naturaleza de transmisión de Cloud Logging, puedes ver de inmediato los registros emitidos por los componentes de Airflow en lugar de esperar a que aparezcan en el bucket de Cloud Storage de tu entorno.

Para limitar la cantidad de registros en tu proyecto de Google Cloud, puedes detener la transferencia de todos los registros. No inhabilites Logging.

¿Qué sigue?