Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Esta página explica como atualizar um ambiente.
Sobre as operações de atualização
Quando você muda os parâmetros do ambiente, como especificar novos parâmetros de escalonamento e desempenho ou instalar pacotes PyPI personalizados, o ambiente é atualizado.
Depois que essa operação for concluída, as alterações ficarão disponíveis no seu de nuvem.
Em um único ambiente do Cloud Composer, é possível iniciar apenas um de 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.
Limites de CPU do acionador
O Cloud Composer na versão 2.4.4 apresenta uma abordagem de escalonamento de desempenho diferente para o componente Airflow triggerer, que se aplica a todas as versões do Cloud Composer 2.
Antes da versão 2.4.4, os ambientes do Cloud Composer podiam usar 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. É necessário ajustar a configuração para atender ao limite de uma vCPU para realizar atualizações em outros componentes.
Veja mais informações em:
- Configurar a alocação de recursos do acionador
- Ajustar a contagem de acionadores
- Solução de problemas de upgrade do ambiente: CPU do acionador excedida
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 é concluída, o Airflow programa essas tarefas para uma nova tentativa, dependendo da forma como você configura as novas tentativas para seus DAGs.
As seguintes mudanças 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 de opções de configuração do Airflow ou alterar os valores delas.
- Alterar a CPU, a memória ou o armazenamento dos workers do Airflow.
- Reduza o número máximo de workers do Airflow se o novo valor for menor do que o número de workers em execução. Por exemplo, se um que executa atualmente três workers, e o máximo é reduzido para dois.
- Mudar o modo de resiliência do ambiente.
As seguintes mudanças não causam o encerramento da tarefa do Airflow:
- Criação, atualização ou exclusão de 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).
- mudar as conexões do Airflow (não é uma operação de atualização).
- Ativar ou desativar a integração da linhagem de dados do Dataplex.
- Alterar o tamanho do ambiente.
- Alterar o número de programadores.
- Como mudar programadores do Airflow CPU, memória ou armazenamento.
- Alterar o número de acionadores.
- Alterar a CPU, a memória ou o armazenamento dos acionadores do Airflow.
- 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.
- Reduza o número máximo de workers do Airflow. Por exemplo, se um ambiente estiver executando dois workers e o máximo for reduzido para três.
- Alteração das janelas de manutenção.
- Alterar as 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
ambiente em vez de atualizá-lo.
Antes de começar
Verifique se sua conta, a conta de serviço do ambiente e a conta do agente de serviço do Cloud Composer no projeto têm as 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.
A conta de agente de serviço do Cloud Composer precisa ter permissões para criar vinculações entre a conta de serviço do ambiente e a conta de serviço do Kubernetes do cluster do ambiente.
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 páginas de documentação 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
- Atualizar ambientes para ter alta resiliência
Ver detalhes do ambiente
Console
No console do Google Cloud, acesse a página Ambientes.
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 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 ambiente.
O nome do recurso do Terraform do seu 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.
Como reverter 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 mudanças solicitadas podem não ser retornadas 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 DAG e plug-in nas pastas /dags
e /plugins
(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 não exceder 100 MB de dados.
Para mais informações, consulte também: