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 2 podem ter as seguintes configurações de arquitetura:

Projetos de clientes e locatários

Quando você cria um ambiente, o Cloud Composer distribui os recursos dele entre um locatário e um projeto do 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 a segurança de dados no seu ambiente. Cada ambiente do Cloud Composer tem o próprio projeto do locatário.

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. Ambiente são executados no locatário ou no projeto do cliente em seu ambiente.

Cluster do ambiente

O cluster do ambiente é um cluster do Google Kubernetes Engine nativo da VPC no modo Autopilot do seu ambiente:

Por padrão, o Cloud Composer permite upgrades automáticos e reparos automáticos de nós para proteger o cluster do ambiente contra vulnerabilidades de segurança. Esses de manutenção ocorrem durante as janelas de manutenção que você especifica para os de nuvem.

Bucket do ambiente

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

Quando você faz 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 do Airflow executa a interface do Airflow do seu ambiente.

O Cloud Composer oferece acesso à interface com base nas identidades do usuário 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 e programam execuções do DAG com base no intervalo da programação, e coloca em fila as tarefas a serem executadas Workers do Airflow. No Cloud Composer 2, os processadores de DAG do Airflow são executados como parte dos componentes do programador.

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

  • 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 de ambiente de IP público

Recursos de ambiente do Cloud Composer de IP público no projeto de locatário e de cliente
Figura 1. Arquitetura de ambiente de IP público (clique para ampliar)

Em uma arquitetura de ambiente de IP público para o Cloud Composer 2:

  • O projeto de locatário hospeda uma instância e um armazenamento do Cloud SQL.
  • O projeto do cliente hospeda todos os outros componentes do ambiente.
  • Os programadores e workers do Airflow no projeto do cliente se comunicam com o banco de dados do Airflow por meio de uma instância de proxy do Cloud SQL localizada no projeto do cliente.

Arquitetura de ambiente de IP particular

IP privado com recursos do ambiente do PSC no Cloud Composer no projeto de locatário e no projeto do cliente (clique para ampliar)
Figura 2. Recursos do ambiente de IP privado do Cloud Composer no projeto de locatário e de cliente (clique para ampliar)

Por padrão, o Cloud Composer 2 usa o Private Service Connect para que os ambientes de IP particular se comuniquem internamente sem o uso de peerings de VPC. Também é possível usar peerings de VPC em vez de Private Service Connect no seu ambiente. Essa é uma opção não padrão.

Na arquitetura do ambiente de IP privado:

  • O projeto de locatário hospeda uma instância e um armazenamento do Cloud SQL.
  • O projeto do cliente hospeda todos os outros componentes do ambiente.
  • Os programadores e workers do Airflow se conectam ao banco de dados do Airflow por meio do endpoint PSC configurado.

Arquitetura de IP particular altamente resiliente

Recursos de ambiente de IP particular altamente resilient no projeto de locatário e de cliente (clique para ampliar)
Figura 3. Recursos do ambiente de IP privado altamente resilientes do Cloud Composer no projeto de locatário e de cliente (clique para ampliar)

Ambientes do Cloud Composer altamente resilientes são ambientes do Cloud Composer 2 que usam mecanismos de redundância e failover integrados que reduzem a suscetibilidade do ambiente a falhas de zona e pontos únicos de falha.

Nesse tipo de ambiente de IP privado:

  • Uma instância do Cloud SQL do seu ambiente está configurada para alta disponibilidade (é uma instância regional). Em uma instância regional, o é composta por uma instância primária e uma de espera.
  • Seu ambiente executa dois programadores do Airflow, dois servidores da Web e, se os acionadores forem usados, um mínimo de dois (até dez no total). Esses pares de componentes são executados em duas zonas diferentes.
  • O número mínimo de workers está definido como dois, e o cluster do ambiente que distribui instâncias de worker entre as zonas. No caso de uma interrupção do serviço zonal, as instâncias de worker afetadas são reprogramadas em uma zona diferente.

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

O Cloud Composer é integrado 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 Airflow e do DAG.

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

Devido à natureza de streaming do Cloud Logging, é possível conferir os registros emitidos pelos 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