Arquitetura de ambiente

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Nesta página, descrevemos a arquitetura dos ambientes do Cloud Composer.

Configurações de arquitetura de ambiente

Os ambientes do Cloud Composer 3 têm uma única configuração que não depende do tipo de rede:

Projetos de clientes e locatários

Quando você cria um ambiente, o Cloud Composer distribui os recursos dele entre um projeto de locatário e um cliente:

  • Projeto do cliente é um projeto do Google Cloud em que você cria seus ambientes. É possível criar mais de um ambiente em um único projeto do cliente.

O projeto do locatário é um projeto de locatário gerenciado pelo Google. O projeto de locatário fornece controle de acesso unificado e uma camada adicional de segurança de dados para o ambiente. Cada ambiente do Cloud Composer tem um projeto de locatário próprio.

Componentes do ambiente

Um ambiente do Cloud Composer consiste em componentes do ambiente.

Um componente de ambiente é um elemento de uma infraestrutura gerenciada do Airflow executada no Google Cloud, como parte do seu ambiente. Os componentes do ambiente são executados no locatário ou no projeto do cliente do seu ambiente.

Bucket do ambiente

O bucket do ambiente é um bucket do Cloud Storage que armazena DAGs, plug-ins, dependências de dados e registros do Airflow. O bucket do ambiente está localizado no projeto do cliente.

Quando você faz o upload dos arquivos DAG para a pasta /dags no bucket do ambiente, o Cloud Composer sincroniza os DAGs com os componentes do Airflow do ambiente.

Servidor da Web do Airflow

O servidor da Web Airflow executa a interface do Airflow do seu ambiente.

O Cloud Composer fornece acesso à interface com base nas identidades dos usuários e nas vinculações de políticas do IAM definidas para os usuários.

Banco de dados do Airflow

O banco de dados do Airflow é uma instância do Cloud SQL executada no projeto de locatário do seu ambiente. Ele hospeda o banco de dados de metadados do Airflow.

Para proteger informações confidenciais de conexão e fluxo de trabalho, o Cloud Composer permite acesso ao banco de dados apenas para a conta de serviço do seu ambiente.

Outros componentes do Airflow

Outros componentes do Airflow que são executados no seu ambiente são:

  • Os programadores do Airflow analisam arquivos de definição do DAG, programam execuções de DAG com base no intervalo de programação e enfileiram tarefas para execução por workers do Airflow.

  • Os acionadores do Airflow monitoram de maneira assíncrona todas as tarefas adiadas no seu ambiente. Se você definir o número de acionadores no ambiente acima de zero, será possível usar operadores adiáveis nos DAGs.

  • Os processadores de DAG do Airflow processam arquivos DAG e os transformam em objetos DAG. No Cloud Composer 3, os processadores de DAG são executados como componentes de ambiente separados.

  • Os workers do Airflow executam tarefas programadas pelos programadores do Airflow. O número mínimo e máximo de workers no ambiente muda dinamicamente, dependendo do número de tarefas na fila.

Arquitetura do ambiente do Cloud Composer 3

Recursos do ambiente do Cloud Composer 3 nos projetos de locatário e de cliente
Figura 1. Arquitetura do ambiente do Cloud Composer 3 (clique para ampliar)

Nos ambientes do Cloud Composer 3:

  • O projeto de locatário hospeda uma instância do Cloud SQL com o banco de dados do Airflow.
  • Todos os recursos do Airflow são executados no projeto de locatário.
  • O projeto do cliente hospeda o bucket do ambiente.
  • É possível usar um anexo de rede VPC personalizado no projeto do cliente para anexar o ambiente a uma rede VPC personalizada. É possível usar um anexo atual, ou o Cloud Composer pode criá-lo automaticamente sob demanda. Também é possível desanexar um ambiente de uma rede VPC.
  • O console do Google Cloud, o Monitoring e o Logging no projeto do cliente oferecem maneiras de gerenciar o ambiente e as execuções de DAGs e DAGs, além de acessar as métricas e os registros do ambiente. Também é possível usar a interface do Airflow, a Google Cloud CLI, a API Cloud Composer e o Terraform para as mesmas finalidades.

Integração com o Cloud Logging e o Cloud Monitoring

O Cloud Composer se integra ao Cloud Logging e ao Cloud Monitoring do seu projeto do Google Cloud para que você tenha um local central para visualizar os registros do DAG e do Airflow.

O Cloud Monitoring coleta e ingere métricas, eventos e metadados do Cloud Composer para gerar insights por meio de painéis e gráficos.

Devido à natureza de streaming do Cloud Logging, é possível visualizar os registros emitidos por componentes do Airflow imediatamente, em vez de esperar que eles apareçam no bucket do Cloud Storage do seu ambiente.

Para limitar o número de registros no seu projeto do Google Cloud, pare o processamento de todos os registros. Não desative o Logging.

A seguir