Atualizar ambientes

Cloud Composer 1 | Cloud Composer 2

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 novos parâmetros de escalonamento e desempenho ou instalar pacotes PyPI personalizados, o ambiente é atualizado.

Quando a operação for concluída, as alterações ficarão disponíveis no seu ambiente.

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

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

Quando você executa uma operação de atualização, como a instalação de pacotes PyPI personalizados, todos os programadores e workers do Airflow no ambiente são reiniciados, e todas as tarefas em execução no momento são encerradas. Após a conclusão da operação de atualização, o Airflow programa essas tarefas para uma nova tentativa, dependendo da maneira como você configura novas tentativas para os DAGs.

Como atualizar com o Terraform

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

Antes de começar

Atualizar ambientes

Para mais informações sobre como atualizar seu ambiente, consulte outras páginas de documentação 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 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 ambiente pode ser diferente do 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 revertidas em todos os componentes do ambiente (como o servidor da Web do Airflow).

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

Isso pode ocorrer se uma operação de atualização for acionada quando outras operações estiverem em andamento, como 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 de componentes do Airflow, como programadores, workers e servidores da Web.

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

Recomendamos manter apenas os arquivos DAG e de plug-in nas pastas /dags e /plugins (respectivamente) e remover todos os outros arquivos. Muitos dados nas pastas /dags e /plugins podem atrasar a inicialização de componentes do Airflow e, em alguns casos, impossibilitar 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:

Como fazer upgrade do tipo de máquina para nós do GKE

É possível fazer upgrade manual do tipo de máquina do cluster do GKE do seu ambiente excluindo o default-pool atual e criando um novo default-pool com o tipo de máquina desejado.

Recomendamos especificar um tipo de máquina adequado para o tipo de computação que ocorre no ambiente do Cloud Composer quando você cria um ambiente.

Se você estiver executando jobs que fazem cálculos com uso intensivo de recursos, convém usar os operadores do GKE.

Após o upgrade, o tipo de máquina anterior ainda aparece nos detalhes do ambiente. Por exemplo, a página "Detalhes do ambiente" não reflete o novo tipo de máquina.

Console

Para fazer upgrade do tipo de máquina, siga estas etapas:

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

    Acessar "Ambientes"

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

  3. Receba informações sobre o pool de nós padrão:

    1. Acesse a guia Configuração do ambiente.

    2. Clique no link Visualizar detalhes do cluster.

    3. Na seção Nós da página Clusters, clique em default-pool.

    4. Observe todas as informações de default-pool na página de detalhes do pool de nós. Use essas informações para criar um novo pool de nós padrão para seu ambiente.

  4. Para excluir o default-pool:

    1. Na página Detalhes do pool de nós, clique na seta para voltar para a página Clusters do ambiente.

    2. Na seção Pools de nós, clique no ícone de lixeira do default-pool. Em seguida, clique em Excluir para confirmar a operação.

  5. Para criar o novo default-pool:

    1. Na página Clusters, clique em Adicionar pool de nós.

    2. Em "Nome", insira default-pool. Use o nome default-pool para que os fluxos de trabalho no seu ambiente possam ser executados nesse pool.

    3. Insira as configurações de tamanho e nós.

    4. (Apenas para contas de serviço padrão do Compute Engine) Para escopos de acesso, selecione Permitir acesso completo a todas as APIs do Cloud.

    5. Clique em Salvar.

  6. Se você perceber que as cargas de trabalho estão distribuídas de maneira desigual, reduza a implantação do worker do Airflow para zero e escalonar verticalmente novamente.

A seguir