Esta página foi traduzida pela API Cloud Translation.
Switch to English

Como criar ambientes

Nesta página, você aprende a criar um ambiente do Cloud Composer e modificar as configurações padrão do ambiente do Airflow durante a criação.

O ambiente do Cloud Composer executa o software Apache Airflow. Ao criar um novo ambiente em um projeto do Google Cloud (GCP), será possível especificar vários parâmetros, como tipo de máquina do Compute Engine ou o número de nós no cluster.

Antes de começar

Controle de acesso

  • As permissões a seguir são necessárias para criar ambientes do Cloud Composer: (1) composer.environments.create e (2) iam.serviceAccounts.actAs na conta de serviço em que o ambiente será executado. Para mais informações, consulte Controle de acesso do Cloud Composer.

  • Por padrão, os ambientes do Cloud Composer são executados com a conta de serviço padrão do Compute Engine. Durante a criação do ambiente, é possível especificar uma conta de serviço personalizada. Essa conta de serviço requer pelo menos as permissões fornecidas pelo papel composer.worker para acessar os recursos no ambiente do Cloud Composer. Você também precisa ter autorização para "atuar como" a conta de serviço, com a permissão iam.serviceAccounts.actAs ativada na conta de serviço ou projeto que contém a conta de serviço. Verifique se você recebeu um dos papéis que inclui essa permissão, como Usuário da conta de serviço, Proprietário ou Editor. Consulte Noções básicas sobre contas de serviço para mais detalhes.

  • Se sua conta de serviço personalizada precisar acessar outros recursos no projeto do Google Cloud durante a execução da tarefa, será possível conceder à conta de serviço os papéis necessários. Se preferir, é possível fornecer as credenciais relevantes como uma conexão do Airflow e mencioná-la no operador.

  • Talvez você veja mais contas de serviço do Google na política de IAM do seu projeto ou no Console do GCP (por exemplo, service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com ). Para informações sobre os tipos e papéis disponíveis, consulte Contas de serviço para começar.

  • A compatibilidade com VPC Service Controls está atualmente na versão Beta. Consulte Como configurar o VPC Service Controls para saber como implantar ambientes do Cloud Composer em um perímetro de segurança. Para mais informações, consulte as limitações conhecidas do VPC Service Controls.

Recursos Beta

Esta seção lista os recursos que estão atualmente disponíveis na versão Beta.

  • Controle de acesso à rede do servidor da Web: com esse recurso, é possível especificar os intervalos de IP que podem acessar o servidor da Web do Airflow para seu ambiente.

Como criar um novo ambiente

Para criar um ambiente do Cloud Composer, faça o seguinte:

Console

  1. Abra a página Criar ambiente no Console do Google Cloud.

    Abrir a página "Criar ambiente"

  2. Dê um nome para o ambiente.

    O nome precisa começar com uma letra minúscula seguida por até 62 letras minúsculas, números ou hifens. Ele não pode terminar com um hífen. O nome do ambiente é usado para criar subcomponentes para o ambiente. Você precisa fornecer um nome que também seja válido como um nome de bucket do Cloud Storage. Para ver uma lista de restrições, consulte Diretrizes de nomenclatura de bucket.

  3. Em Configuração do nó, especifique as configurações dos nós no cluster do Google Kubernetes Engine. Se você não especificar uma configuração, o padrão será usado.

    Configuração Descrição
    Contagem de nós O número de nós do Google Kubernetes Engine usado para executar o ambiente. O padrão é três. A contagem de nós é a única configuração de cluster do Google Kubernetes Engine que pode ser alterada após a criação do ambiente.
    Local (Obrigatório) A região do Compute Engine em que o ambiente é criado.
    Sufixo de zona A zona do Compute Engine em que as instâncias de máquina virtual que executam o Apache Airflow são criadas. Uma zona aleatória no local será selecionada se essa configuração não for especificada.
    Tipo de máquina O tipo de máquina do Compute Engine usado em instâncias de cluster. Ele determina o número de CPUs e a quantidade de memória do ambiente. O tipo de máquina padrão é n1-standard-1.
    Tamanho do disco O tamanho do disco em GB usado nas instâncias de VM do nó. O tamanho mínimo é de 20 GB. O tamanho padrão é 100 GB.
    Escopos do OAuth O conjunto de escopos da API do Google disponibilizado em todas as instâncias de VM do nó. O padrão é https://www.googleapis.com/auth/cloud-platform e precisa ser incluído na lista de escopos especificados.
    Conta de serviço A conta de serviço do Google Cloud a ser usada pelas instâncias de VM do nó. A conta de serviço padrão do Compute Engine será usada se esse argumento não for especificado.
    Tags A lista de tags de instância aplicadas a todas as instâncias de VM do nó. As tags são usadas para identificar origens ou destinos válidos em firewalls de rede. Cada tag na lista precisa estar em conformidade com o RFC 1035.
    Versão da imagem A versão do Cloud Composer que será usada no ambiente, incluindo a do Airflow. Para informações sobre a versão padrão, consulte Lista de versões.
    Versão do Python A versão do Python que será usada no ambiente. As versões compatíveis são Python 2 e 3. A versão padrão é a 3.
  4. Em Configuração do Cloud SQL, especifique as configurações da instância do Cloud SQL que executa o banco de dados do Airflow. Se você não especificar uma configuração, o padrão será usado.

    Configuração Descrição
    Tipo de máquina do Cloud SQL o tipo de máquina da instância do Cloud SQL que executa o banco de dados do Airflow; Ele determina o número de CPUs e a quantidade de memória do ambiente.
  5. Em Configuração de rede, especifique as configurações da rede do cluster do Google Kubernetes Engine. Se você não especificar uma configuração, o padrão será usado.

    Configuração Descrição
    Ativar cluster nativo de VPC (usando o IP do alias) Cria um cluster do GKE nativo de VPC com IPs de alias para seu ambiente. O padrão é um cluster do GKE baseado em rotas. Obrigatório para um ambiente de IP particular do Cloud Composer.
    Rede A rede de nuvem privada virtual que é usada para comunicações de máquinas. Ela é necessária para especificar uma sub-rede. A rede padrão será usada se esse argumento não for especificado. A VPC compartilhada requer um projeto host.
    Sub-rede A sub-rede de nuvem privada virtual que é usada para comunicações de máquinas. Caso sua rede use uma rede no modo personalizado, a sub-rede é obrigatória.
    Alocação de endereços IP do pod O intervalo secundário para alocar endereços IP para pods no cluster do GKE. Se não for especificado, um novo intervalo secundário será criado. Essa configuração é permanente.
    Alocação de endereços IP de serviço O intervalo secundário para reservar espaço para os serviços do Cloud Composer. Se não for especificado, um novo intervalo secundário será criado. Essa configuração é permanente.
    Ambiente de IP privado Ativa um ambiente de IP privado do Cloud Composer. Essa configuração está desativada por padrão.
    Acesso ao mestre do GKE usando o endereço IP externo dele Permite o acesso público ao mestre do cluster do GKE. Requer o ambiente de IP privado.
    Intervalo de IP do mestre do GKE O intervalo privado RFC 1918 da VPC do mestre. Se não for especificado, usará o valor padrão 172.16.0.0/28. Obrigatório para o ambiente de IP privado.

    Garanta que os intervalos secundários sejam grandes o suficiente para acomodar o tamanho do cluster e o crescimento previsto. Por exemplo, os prefixos de rede dos intervalos secundários de um ambiente do Cloud Composer com três nós não podem ultrapassar os limites abaixo:

    • Pods: /22
    • Serviços: /27

    Consulte Como criar um cluster nativo de VPC para ver diretrizes sobre como configurar intervalos secundários de pods e serviços.

  6. Em Configuração do servidor da Web, especifique os intervalos de IPs que podem acessar o servidor da Web do Airflow para seu ambiente e um tipo de máquina para o servidor da Web do Airflow.

    Configuração Descrição
    Permitir o acesso de todos os endereços IP (padrão) Todos os intervalos de IP podem acessar o servidor da Web do Airflow.
    Permitir o acesso somente de endereços IP específicos Apenas intervalos de IP específicos podem acessar o servidor da Web. Para adicionar um novo intervalo, clique em Adicionar intervalo de IP. Para remover um intervalo, clique no botão "Lixeira" dessa linha. Para negar todos os intervalos de IP, exclua todas as linhas.
    Tipo de máquina do servidor da Web O tipo de máquina da instância do Compute Engine que executa o servidor da Web do Airflow. Ele determina o número de CPUs e a quantidade de memória do ambiente.
  7. (Visualização) Em Janelas de manutenção, defina janelas de tempo personalizadas para que o Cloud Composer realize a manutenção do ambiente. Seu ambiente pode estar temporariamente indisponível durante essas janelas. Por isso, escolha horários (por exemplo, fim de semana ou fora de pico) quando tiver menos chances de executar fluxos de trabalho. Suas janelas de manutenção precisam durar pelo menos 12 horas por semana. Isso também pode ser definido após a criação do ambiente na guia Configuração do ambiente da página Detalhes do ambiente.

  8. (Opcional) Para alterar ou substituir os valores padrão no arquivo de configuração do Airflow (airflow.cfg), clique em Adicionar propriedade de configuração do Airflow.

  9. (Opcional) Para configurar variáveis de ambiente, clique em Adicionar variável de ambiente. Consulte este artigo para ver os requisitos.

  10. (Opcional) Para adicionar um rótulo, clique em Adicionar rótulos.

    As chaves e os valores de rótulos só podem conter letras, números, traços e sublinhados. As chaves precisam começar com uma letra ou um número.

  11. Clique em Criar

gcloud

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    OTHER_ARGUMENTS

Os seguintes parâmetros são necessários:

  • ENVIRONMENT_NAME é o nome do ambiente; Precisa corresponder ao padrão ^[a-z](?:[-0-9a-z]{0,61}[0-9a-z])?$. O nome do ambiente é usado para criar subcomponentes para o ambiente. Você precisa fornecer um nome que também seja válido como um nome de bucket do Cloud Storage. Para ver uma lista de restrições, consulte Diretrizes de nomenclatura de bucket.
  • LOCATION é a região do Compute Engine em que o ambiente está localizado. Certifique-se de que o local especificado seja aquele em que o Composer está disponível.

Os seguintes parâmetros são opcionais:

  • airflow-configs é uma lista de modificações de configuração SECTION_NAME-PROPERTY_NAME=VALUE do Airflow. O nome da seção e da propriedade precisam ser separados por um hífen.
  • cloud-sql-machine-type é um tipo de máquina para a instância do Cloud SQL que executa o banco de dados do Airflow. Ele determina o número de CPUs e a quantidade de memória do ambiente. O tipo de máquina padrão é db-n1-standard-2. Os valores possíveis para esse parâmetro são: db-n1-standard-2, db-n1-standard-4, db-n1-standard-8 e db-n1-standard-16.
  • disk-size é o tamanho do disco em GB usado nas VMs do nó. O mínimo é 20 GB, e o padrão é 100 GB.
  • env-variables é uma lista de variáveis de ambiente NAME=VALUE definidos no programador, no worker e nos processos do servidor da Web do Airflow.
  • enable-private-environment ativa um ambiente de IP particular do Cloud Composer.
    • master-ipv4-cidr é o intervalo RFC 1918 particular da VPC do mestre. Obrigatório quando enable-private-environment for verdadeiro.
  • enable-private-endpoint permite o acesso público ao mestre do cluster do GKE. Exige enable-private-environment.
  • enable-ip-alias ativa o Nativo de VPC usando endereços IP de alias. Obrigatório quando enable-private environment for verdadeiro ou para configurar intervalos secundários de pods e serviços:
    • cluster-secondary-range-name ou cluster-ipv4-cidr configura a configuração do intervalo secundário de pods.
    • services-secondary-range-name ou services-ipv4-cidr configura o intervalo secundário de serviços.
    • Visualizar: max-pods-per-node configura o máximo de pods por nó no cluster do GKE alocado durante a criação do ambiente. A redução desse valor reduz o consumo de endereços IP pelo cluster do Kubernetes do Cloud Composer. Para mais informações, consulte Como otimizar a alocação de endereços IP. Esse valor só pode ser definido durante a criação do ambiente e apenas se o ambiente for nativo de VPC. O intervalo de valores possíveis é 8-110, e o padrão é 32. Na visualização, esse parâmetro requer que você use o comando gcloud beta composer.
  • image-version é a versão de composer-addon e do Airflow a ser usada no ambiente no formato composer-a.b.c-airflow-x.y.z. Para informações sobre versão padrão e alias de versão, consulte Controle de versões do Cloud Composer.
  • labels são rótulos especificados pelo usuário anexados ao ambiente e os respectivos recursos.
  • machine-type é o tipo de máquina do Compute Engine. Ele determina o número de CPUs e a quantidade de memória do ambiente. O tipo de máquina padrão é n1-standard-1.
  • network é a rede de nuvem particular virtual usada nas comunicações da máquina.
    • Ela é necessária para especificar uma sub-rede. A rede padrão será usada se esse argumento não for especificado.
    • Ao usar a VPC compartilhada, o nome de recurso relativo da rede é fornecido usando o formato projects/HOST_PROJECT_ID/global/networks/NETWORK_ID. Para requisitos de sub-rede de VPC compartilhada, consulte subnetwork abaixo.
  • node-count é o número de nós do GKE usados para executar o ambiente. A contagem padrão é três. A contagem de nós é a única configuração de cluster do Google Kubernetes Engine que pode ser alterada após a criação do ambiente.
  • oauth-scopes é o conjunto de escopos da API do Google disponibilizados em todas as VMs do nó. O escopo OAuth padrão é https://www.googleapis.com/auth/cloud-platform e precisa ser incluído na lista de escopos, se especificado.
  • python-version é a versão do Python a ser usada no seu ambiente. As versões compatíveis são Python 2 e 3. A versão padrão é a 2.
  • subnetwork é a sub-rede do Compute Engine à qual o ambiente está conectado.
    • Caso sua rede use uma rede no modo personalizado, a sub-rede é obrigatória.
    • Ao criar um ambiente de VPC compartilhada usando a gcloud, você precisa usar os composer-pods e composer-services dos intervalos de IP secundários. É possível especificar diferentes nomes de intervalos secundários ao usar a API Cloud Composer. O nome da sub-rede também precisa ser especificado como um nome de recurso relativo usando o formato projects/HOST_PROJECT_ID/regions/REGION_ID/subnetworks/SUBNET_ID.
  • service-account é a conta de serviço do Google Cloud a ser usada pelas instâncias de VM do nó. A conta de serviço padrão do Compute Engine será usada se esse argumento não for especificado.
  • tags é a lista de tags de instância aplicadas a todas as VMs do nó. As tags são usadas para identificar origens ou destinos válidos em firewalls de rede. Cada tag na lista precisa estar em conformidade com o RFC 1035 (em inglês).
  • web-server-machine-type é um tipo de máquina para a instância do Compute Engine que executa o servidor da Web do Airflow. Ele determina o número de CPUs e a quantidade de memória do ambiente. O tipo de máquina padrão é composer-n1-webserver-2. Os valores possíveis para esse parâmetro são: composer-n1-webserver-2, composer-n1-webserver-4 e composer-n1-webserver-8.

O exemplo a seguir cria um ambiente executando a versão de imagem do Cloud Composer compatível mais recente na região us-central1 que usa o tipo de máquina n1-standard-2 com um rótulo de ambiente beta:

gcloud beta composer environments create test-environment \
    --location us-central1 \
    --zone us-central1-f \
    --machine-type n1-standard-2 \
    --image-version composer-latest-airflow-x.y.z \
    --labels env=beta  

No exemplo de VPC compartilhada a seguir, você cria um ambiente no projeto host. O ambiente está na região us-central1 e usa o tipo de máquina n1-standard-2 com um rótulo de ambiente beta:

gcloud beta composer environments create host-project-environment \
    --network vpc-network-name --subnetwork vpc-subnetwork-name
    --location us-central1 \
    --zone us-central1-f \
    --machine-type n1-standard-2 \
    --labels env=beta  

Visualização: janelas de manutenção personalizadas

É possível definir janelas de tempo personalizadas para que o Cloud Composer realize a manutenção do ambiente. Seu ambiente pode estar temporariamente indisponível durante essas janelas. Por isso, escolha horários (por exemplo, fim de semana ou fora de pico) quando tiver menos chances de executar fluxos de trabalho. Suas janelas de manutenção precisam durar pelo menos 12 horas por semana. Use os seguintes parâmetros opcionais:

  • maintenance-window-start define o horário de início de uma janela de manutenção personalizada.
  • maintenance-window-end define o horário de término de uma janela de manutenção personalizada.
  • maintenance-window-recurrence define os dias para repetição da janela de manutenção.

Exemplo:

gcloud beta composer environments create test-environment \
    --location us-central1 \
    --zone us-central1-f \
    --machine-type n1-standard-2 \
    --image-version composer-latest-airflow-x.y.z \
    --labels env=beta \
    --maintenance-window-start-time='2019-08-01T01:00:00Z' \
    --maintenance-window-end-time='2019-08-01T07:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'
  

Isso cria um ambiente com uma janela de manutenção entre 0h e 07:00 (UTC) a cada domingo e sábado. Os dias da semana (domingo a sábado) são representados da seguinte maneira: SU, MO, TU, WE, TH, FR, SA. Usar FREQ=DAILY definirá a janela de manutenção para repetir todos os dias.

API

Para criar um novo ambiente do Cloud Composer com a API REST do Cloud Composer, faça uma solicitação de API environments.create, preenchendo o recurso Environment com suas informações de configuração.

Terraform

Para configurar esse ambiente usando o Terraform, adicione o seguinte bloqueio de recursos à configuração do Terraform e execute terraform apply.

resource "google_composer_environment" "example-resource" {
  name   = "ENVIRONMENT_NAME"
  region = "LOCATION"
}

Os seguintes parâmetros são necessários:

  • name, em que ENVIRONMENT_NAME é o nome do ambiente. Precisa corresponder ao padrão: ^[a-z](?:[-0-9a-z]{0,61}[0-9a-z])?$. O nome do ambiente é usado para criar subcomponentes para o ambiente. Você precisa fornecer um nome que também seja válido como um nome de bucket do Cloud Storage. Para ver uma lista de restrições, consulte Diretrizes de nomenclatura de bucket.
  • region, em que LOCATION é a região do Compute Engine em que o ambiente está localizado. Certifique-se de que o local especificado seja aquele em que o Composer está disponível.

O uso de parâmetros opcionais adicionais é definido na Referência de argumentos do Terraform.

No exemplo a seguir, criamos um ambiente executando a versão de imagem do Cloud Composer compatível mais recente na região us-central1 que usa o tipo de máquina n1-standard-2 com um rótulo de ambiente beta. Para configurar esse ambiente usando o Terraform, adicione o seguinte bloqueio de recursos à configuração do Terraform e execute terraform apply:

resource "google_composer_environment" "example-resource" {
  name   = "example-environment"
  region = "us-central1"

  config {
    node_config {
      zone = "us-central1-f"
      machine_type = "n1-standard-2"
    }
    software_config {
      image_version = "composer-latest-airflow-x.y.z"
    }
  }
  labels = {"env": "beta"}
}

No exemplo de VPC compartilhada a seguir, você cria um ambiente no projeto host. O ambiente está na região us-central1 e usa o tipo de máquina n1-standard-2 com um rótulo de ambiente beta. Para configurar esse ambiente usando o Terraform, adicione o seguinte bloqueio de recursos à configuração do Terraform e execute terraform apply:

resource "google_composer_environment" "example-resource" {
  name   = "host-project-environment"
  region = "us-central1"

  config {
    node_config {
      zone = "us-central1-f"
      machine_type = "n1-standard-2"
      network = "vpc-network-name"
      subnetwork = "vpc-subnetwork-name"
    }
    software_config {
      image_version = "composer-latest-airflow-x.y.z"
    }
  }
  labels = {"env": "beta"}
}

Como configurar notificações por e-mail

Como configurar os serviços de e-mail SendGrid

Para receber notificações, configure as variáveis de ambiente para enviar e-mails por meio do serviço SendGrid.

  1. Se ainda não tiver feito isso, inscreva-se com o SendGrid pelo Console do Google Cloud e crie uma chave de API. Sendo um desenvolvedor do Google Cloud, é possível começar com 12.000 e-mails gratuitos por mês.

  2. No Console do Cloud, abra a página Criar ambiente.

    Abrir a página "Criar ambiente"

  3. Em Configuração do nó, clique em Adicionar variável de ambiente.

  4. Insira as variáveis de ambiente a seguir:

    Nome Valor
    SENDGRID_MAIL_FROM O endereço de e-mail "De:", como noreply-composer@<your-domain>.
    SENDGRID_API_KEY A chave da API SendGrid.
  5. Para testar a configuração do SendGrid:

    1. crie um DAG de teste que use EmailOperator;
    2. faça o upload do DAG para o ambiente e veja se a tarefa "EmailOperator" foi concluída;
    3. faça login no SendGrid com as respectivas credenciais;
    4. na IU do SendGrid, acesse a página "Activity";
    5. procure o e-mail na lista. Você verá que o SendGrid processou e entregou o e-mail.
    6. Se o e-mail não tiver sido processado e entregue:
      • verifique as configurações do SendGrid;
      • verifique se as variáveis de ambiente SENDGRID_MAIL_FROM e SENDGRID_API_KEY estão corretas;
      • verifique o filtro de spam no seu cliente de e-mail.

Como configurar serviços SMTP de terceiros

Para enviar e-mails por meio de um serviço SMTP de terceiros, você precisa substituir o parâmetro email_backend e configurar outros parâmetros relacionados a SMTP (descritos abaixo).

  1. Abra a página Criar ambiente.

    Abrir a página "Criar ambiente"

  2. Em Modificações da configuração do Airflow, clique em Adicionar modificação da configuração do Airflow.
  3. Insira as seguintes propriedades de configuração:

    Seção Chave Valor
    email email_backend airflow.utils.email.send_email_smtp
    smtp smtp_host O nome do host do servidor SMTP.
    smtp smtp_user O nome de usuário no servidor SMTP.
    smtp smtp_port A porta do servidor SMTP. A porta 25 não está disponível. É possível usar outras portas, como as portas SMTP padrão 465 e 587.
    smtp smtp_password Não é possível definir uma senha por smtp_password. Para definir uma senha SMTP, siga as instruções em Como configurar uma senha SMTP.
    smtp smtp_mail_from O endereço de e-mail "De:", como noreply-composer@.
    smtp smtp_starttls Para mais segurança, defina como True.
    smtp smtp_ssl Para mais segurança, defina como True.

Para outras configurações de SMTP, consulte o default_airflow.cfg para a versão do Airflow.

Como configurar uma senha SMTP para um serviço SMTP de terceiros

Manter uma senha SMTP em texto simples no arquivo de configuração do Airflow é uma prática de segurança ineficiente. Por isso, esse método não é compatível com o Cloud Composer. O Airflow oferece dois outros métodos para configurar a senha SMTP, além de definir uma senha SMTP com o parâmetro de configuração smtp_password.

Como usar AIRFLOW__SMTP__SMTP_PASSWORD_CMD para recuperar uma senha SMTP

É possível usar a variável de ambiente AIRFLOW__SMTP__SMTP_PASSWORD_CMD (como descrito aqui) para fornecer um comando para conseguir a senha SMTP. O Airflow usará este comando para saber qual senha deve ser usada ao se comunicar com o serviço SMTP.

Como usar um secret armazenado no Gerenciador de secrets para recuperar uma senha SMTP

É possível configurar o Gerenciador de secret como back-end secreto para armazenar secrets como senhas.

Depois de configurar o Gerenciador de secrets para o ambiente do Composer, armazene a senha SMTP no Gerenciador de secret da seguinte maneira:

echo "your-password" | gcloud beta secrets create airflow-config-smtp-password --data-file=- --replication-policy=automatic

A última etapa da configuração é configurar o Airflow para receber a senha SMTP do Gerenciador de secrets. Para isso, defina o valor da variável de ambiente AIRFLOW__SMTP__SMTP_PASSWORD_SECRET como smtp-password.

Agora, sempre que uma senha SMTP for necessária, o Airflow entrará em contato com o Gerenciador de secrets para recuperar a senha do secret.

Como modificar as configurações do Airflow

Ao criar ou atualizar um ambiente, é possível modificar as propriedades de configuração do Apache Airflow. Algumas delas estão bloqueadas.

Console

  1. Abra a página Criar ambiente.

    Abrir a página "Criar ambiente"

  2. Em Modificações da configuração do Airflow, clique em Adicionar modificação da configuração do Airflow.

  3. Insira a Seção, Chave e o novo Valor da configuração.

Por exemplo:

Seção Chave Valor
webserver dag_orientation RL

gcloud

Para modificar as configurações do Airflow ao criar um ambiente, execute o seguinte:

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    --airflow-configs=KEY=VALUE,KEY=VALUE,...

em que:

  • ENVIRONMENT_NAME é o nome do ambiente;
  • LOCATION é a região do Compute Engine em que o ambiente está localizado.
  • KEY=VALUE é a seção de configuração e o nome da propriedade separados por um hífen, como core-print_stats_interval, e o valor correspondente.

Exemplo:

gcloud composer environments create test-environment \
    --location us-central1 \
    --airflow-configs=core-load_example=True,webserver-dag_orientation=TB 

O comando termina quando a operação é concluída. Para não ficar esperando, use a sinalização --async. Consulte a página de referência Atualização de ambientes do gcloud Composer para mais exemplos.

API

Para substituir as propriedades do Airflow durante a criação do ambiente do Cloud Composer com a API REST do Cloud Composer, preencha o campo airflowConfigOverrides opcional do recurso Environment ao criar a solicitação environments.create.

A seguir