Atualizar ambientes

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Nesta página, explicamos como um ambiente pode ser atualizado.

Sobre as operações de atualização

Quando você altera os parâmetros do ambiente, como especificar um novo escalonamento e parâmetros de desempenho ou instalar pacotes PyPI personalizados, atualizações do ambiente de execução.

Depois que essa operação for concluída, as mudanças vão ficar disponíveis no seu ambiente.

Para um único ambiente do Cloud Composer, é possível iniciar apenas uma operação de atualização por vez. Você precisa aguardar a conclusão de uma operação de atualização antes de iniciar outra operação do ambiente.

Limites de CPU do acionador

O Cloud Composer versão 2.4.4 apresenta uma implementação abordagem de escalonamento para o acionador do Airflow que se aplica a todas as versões 2 do Cloud Composer.

Antes da versão 2.4.4, os ambientes do Cloud Composer podiam use no máximo um ou dois acionadores. Após a alteração, é possível ter até 10 acionadores por ambiente. mas cada engatilhador é limitado a uma vCPU.

As operações de atualização do ambiente vão falhar se o ambiente for configurado com mais de 1 vCPU por engatilhador. É preciso ajustar a configuração para atender ao limite de uma vCPU e executar atualizações em outros componentes.

Veja mais informações em:

Como as atualizações afetam a execução de tarefas do Airflow

Quando você executa uma operação de atualização, os programadores e os e os workers do ambiente talvez precisem de uma reinicialização. Nesse caso, todos as tarefas em execução no momento são encerradas. Depois que a operação de atualização for concluídas, o Airflow programa essas tarefas para uma nova tentativa, dependendo da maneira que você configurar novas tentativas para os DAGs.

As mudanças a seguir causam o encerramento da tarefa do Airflow:

  • Fazendo upgrade do ambiente para uma nova versão.
  • Adicionar, alterar ou excluir pacotes PyPI personalizados.
  • Como alterar as variáveis de ambiente do Cloud Composer.
  • adicionar ou remover substituições das opções de configuração do Airflow ou alterar as valores.
  • Como mudar workers do Airflow CPU, memória ou armazenamento.
  • reduzir o número máximo de workers do Airflow, se o novo valor for menor que o número de workers em execução no momento. Por exemplo, se um que executa atualmente três workers, e o máximo é reduzido para dois.
  • Alterar o modo de resiliência do ambiente.

As mudanças a seguir não causam o encerramento da tarefa do Airflow:

  • Criar, atualizar ou excluir um DAG (não uma operação de atualização).
  • Pausar ou retomar DAGs (não é uma operação de atualização).
  • Alterar variáveis do Airflow (não é uma operação de atualização).
  • Alterar conexões do Airflow (não é uma operação de atualização).
  • Ativar ou desativar a integração da linhagem de dados do Dataplex.
  • Mudar o tamanho do ambiente.
  • Alterar o número de programadores.
  • Alterar a CPU, a memória ou o armazenamento dos programadores do Airflow.
  • Mudar o número de acionadores.
  • Como mudar os acionadores do Airflow CPU, memória ou armazenamento.
  • Alterar a CPU, a memória ou o armazenamento do servidor da Web do Airflow.
  • Aumentar ou diminuir o número mínimo de workers.
  • reduzir o número máximo de workers do Airflow. Por exemplo, se um no momento, são executados dois workers, e o máximo é reduzido para três.
  • Alteração das janelas de manutenção.
  • Alteração das configurações de snapshots programados.
  • Como mudar os identificadores de ambiente.

Como atualizar com o Terraform

Execute terraform plan antes de terraform apply para ver se o Terraform cria um novo em vez de atualizá-lo.

Antes de começar

Atualizar ambientes

Para mais informações sobre como atualizar seu ambiente, consulte outras documentações sobre operações de atualização específicas. Exemplo:

Ver detalhes do ambiente

Console

  1. No console do Google Cloud, acesse a página Ambientes.

    Acessar "Ambientes"

  2. Na lista de ambientes, clique no nome do seu ambiente. A página Detalhes do ambiente é aberta.

gcloud

Execute o seguinte comando gcloud:

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION

Substitua:

  • ENVIRONMENT_NAME pelo nome do ambiente
  • LOCATION pela região em que o ambiente está localizado;

API

Crie uma solicitação de API environments.get.

Exemplo:

GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment

Terraform

Execute o comando terraform state show para o recurso do seu ambiente.

O nome do recurso do Terraform do seu ambiente pode ser diferente do com o nome do ambiente.

terraform state show google_composer_environment.RESOURCE_NAME

Substitua:

  • RESOURCE_NAME pelo nome do recurso do ambiente.

Reverter as mudanças de atualização

Em algumas situações raras, uma operação de atualização pode ser interrompida (por exemplo, devido a um tempo limite), e as alterações solicitadas podem não ser revertido em todos os componentes do ambiente (como o servidor da Web do Airflow).

Por exemplo, uma operação de atualização pode instalar ou remover outros módulos PyPI, redefinir ou definir uma nova variável de ambiente do Airflow ou do Cloud Composer ou alterar alguns parâmetros relacionados ao Airflow.

Essa situação pode ocorrer se uma operação de atualização for acionada quando outras estiver em andamento, por exemplo, o escalonamento automático do cluster do Cloud Composer ou uma operação de manutenção.

Nessa situação, é recomendável repetir a operação.

Duração das operações de atualização ou upgrade

A maioria das operações de atualização ou upgrade exige a reinicialização dos componentes do Airflow como programadores, workers e servidores da Web do Airflow.

Quando um componente é reiniciado, ele precisa ser inicializado. Durante o inicialização, os programadores e os workers do Airflow fazem o download do conteúdo de /dags e /plugins pastas do bucket do ambiente. O processo de sincronização de arquivos para programadores e workers do Airflow não é instantâneo e depende o tamanho total e o número de todos os objetos nessas pastas.

Recomendamos manter apenas arquivos de DAG e de plug-in em /dags e /plugins pastas (respectivamente) e remover todos os outros arquivos. Muitos dados nas pastas /dags e /plugins podem desacelerar a inicialização dos componentes do Airflow e, em alguns casos, impedir a inicialização.

Recomendamos manter menos de 30 MB de dados nas pastas /dags e /plugins e definitivamente não exceder 100 MB de tamanho de dados.

Para mais informações, consulte também:

A seguir