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.
Após a conclusão da operação, as alterações ficam disponíveis no seu de nuvem.
Em um único ambiente do Cloud Composer, é possível iniciar apenas uma de 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.
Como as atualizações afetam a execução de tarefas do Airflow
Quando você executa uma operação de atualização, como instalar pacotes PyPI personalizados, todos os programadores e workers do Airflow no seu ambiente reiniciar e todas as tarefas em execução no momento serão encerradas. Após a atualização operação for concluída, o Airflow programa essas tarefas para uma nova tentativa, dependendo a 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
em vez de atualizá-lo.
Antes de começar
Verifique se a conta, a conta de serviço do ambiente a conta do agente de serviço do Cloud Composer no projeto tem permissões necessárias:
Sua conta precisa ter um papel que pode acionar operações de atualização do ambiente.
A conta de serviço do seu ambiente precisa ter um papel que tem permissões suficientes para executar operações de atualização.
O comando
gcloud composer environments update
termina quando a operação for concluída. Use a sinalização--async
para evitar a espera que a operação seja concluída.
Atualizar ambientes
Para mais informações sobre como atualizar seu ambiente, consulte outras documentações sobre operações de atualização específicas. Exemplo:
- Substituir as opções de configuração do Airflow
- Definir as variáveis de ambiente
- Instalar dependências do Python
- Escalonar ambientes
- Configurar redes autorizadas
Ver detalhes do ambiente
Console
No console do Google Cloud, acesse a página Ambientes.
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 ambienteLOCATION
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 ser a instalação Módulos PyPI, redefinição ou definição de um novo Airflow ou Cloud Composer variável de ambiente ou alterar alguns parâmetros relacionados ao Airflow.
Essa situação pode ocorrer se uma operação de atualização for acionada quando outros operações estão em andamento, por exemplo, as operações escalonamento automático 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. Dados em excesso
nas pastas /dags
e /plugins
pode atrasar a inicialização do Airflow
e, em alguns casos, pode 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 da
o cluster do GKE excluindo os default-pool
e
criando um novo default-pool
com o tipo de máquina desejado.
Recomendamos que você especifique um tipo de máquina adequado para o tipo de que ocorre no ambiente do Cloud Composer quando você criar um ambiente.
Se você estiver executando jobs que fazem computação que consome muitos recursos, é possível quiser usar operadores do GKE.
Após o upgrade, o tipo de máquina anterior ainda aparece na sua do ambiente de execução. 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:
No console do Google Cloud, acesse a página Ambientes.
Na lista de ambientes, clique no nome do ambiente. A página Detalhes do ambiente é aberta.
Receba informações sobre o pool de nós padrão:
Acesse a guia Configuração do ambiente.
Clique no link Visualizar detalhes do cluster.
Na seção Nós da página Clusters, clique em default-pool:
Anote todas as informações de default-pool nos detalhes do pool de nós página. Use essas informações para criar um novo pool de nós padrão para seu ambiente.
Para excluir o default-pool:
Na página Detalhes do pool de nós, clique na seta para voltar para a página Clusters do ambiente.
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.
Para criar o novo default-pool:
Na página Clusters, clique em Adicionar pool de nós.
Em "Nome", insira
default-pool
. Use o nomedefault-pool
para que os fluxos de trabalho no seu ambiente possam ser executados nesse pool.Insira as configurações de tamanho e nós.
(Apenas para contas de serviço padrão do Compute Engine) Para acesso escopos, selecione Permitir acesso completo a todas as APIs do Cloud.
Clique em Salvar.
Se você perceber que as cargas de trabalho estão distribuídas de maneira desigual, reduzir a escala vertical a implantação do Airflow para zero e escalonar verticalmente novamente.