Airflow gerenciado (Geração 3) | Airflow gerenciado (Geração 2) | Airflow gerenciado (Geração 1 legada)
Esta página fornece informações para solucionar problemas que podem ocorrer ao atualizar ou fazer upgrade de ambientes do Serviço gerenciado para Apache Airflow.
Para informações sobre solução de problemas relacionadas à criação de ambientes, consulte Como resolver problemas da criação de ambientes.
Quando os ambientes do Airflow gerenciado são atualizados, a maioria dos problemas acontece pelos seguintes motivos:
- Problemas de permissão da conta de serviço
- Problemas de dependência do PyPI
- Tamanho do banco de dados do Airflow
Permissões insuficientes para atualizar ou fazer upgrade de um ambiente
Se o Airflow gerenciado não puder atualizar ou fazer upgrade de um ambiente devido a permissões insuficientes, a seguinte mensagem de erro será exibida:
ERROR: (gcloud.composer.environments.update) PERMISSION_DENIED: The caller does not have permission
Solução: atribua papéis à sua conta e à conta de serviço do ambiente, conforme descrito em Controle de acesso.
A conta de serviço do ambiente não tem permissões suficientes
Ao criar um ambiente do Airflow gerenciado, você especifica uma conta de serviço que realiza a maioria das operações do ambiente. Se essa conta de serviço não tiver permissões suficientes para a operação solicitada, o Airflow gerenciado vai gerar um erro:
UPDATE operation on this environment failed 3 minutes ago with the
following error message:
Composer Backend timed out. Currently running tasks are [stage:
CP_COMPOSER_AGENT_RUNNING
description: "No agent response published."
response_timestamp {
seconds: 1618203503
nanos: 291000000
}
].
Solução: atribua papéis à sua Conta do Google e à conta de serviço do ambiente, conforme descrito em Controle de acesso.
O tamanho do banco de dados do Airflow é muito grande para realizar a operação
Uma operação de upgrade pode falhar porque o tamanho do banco de dados do Airflow é muito grande para que as operações de upgrade sejam bem-sucedidas.
Se o tamanho do banco de dados do Airflow for maior que 16 GB, o Airflow gerenciado vai gerar o seguinte erro:
Airflow database uses more than 16 GB. Please clean the database before upgrading.
Solução: execute a limpeza do banco de dados do Airflow, conforme descrito em Limpar o banco de dados do Airflow.
Falha no upgrade para uma nova versão do Airflow gerenciado devido a conflitos de pacote do PyPI
Ao fazer upgrade de um ambiente com pacotes PyPI personalizados instalados, talvez ocorram erros relacionados a conflitos no pacote PyPI. Isso pode acontecer porque a nova imagem do Serviço gerenciado para Apache Airflow contém versões mais recentes de pacotes pré-instalados. Isso pode causar conflitos de dependência com pacotes PyPI que você instalou no ambiente.
Solução:
- Para ver informações detalhadas sobre conflitos de pacotes, execute uma verificação de upgrade.
- Reduza as restrições de versão para pacotes PyPI personalizados instalados. Por exemplo,
em vez de especificar uma versão como
==1.0.1, especifique-a como>=1.0.1. - Para mais informações sobre como alterar os requisitos de versão para resolver dependências conflitantes, consulte a documentação do pip.
Não é possível fazer upgrade de um ambiente para uma versão que ainda é compatível
Os ambientes do Airflow gerenciado só podem ser atualizados para várias versões mais recentes e anteriores.
As limitações de versão para criar novos ambientes e fazer upgrade de ambientes atuais são diferentes. A versão do Airflow gerenciado escolhida ao criar um novo ambiente pode não estar disponível ao fazer upgrade de ambientes atuais.
É possível realizar a operação de upgrade usando a Google Cloud CLI, a API ou o Terraform. No Google Cloud console, apenas as versões mais recentes estão disponíveis como opções de upgrade.
O ambiente não é íntegro (falha na verificação de atividade)
Só é possível fazer upgrade de um ambiente se o status dele for informado como íntegro.
Uma das causas mais comuns para o status não íntegro é quando os componentes do ambiente se aproximam dos limites de recursos configurados e operam constantemente na carga máxima. Como alguns componentes do ambiente não podem informar o status, o DAG de verificação de atividade informa o status do ambiente como não íntegro.
Para resolver esse problema, recomendamos aumentar os limites de recursos. Embora recomendemos manter o ambiente longe dos limites em todos os momentos, você também pode fazer isso apenas durante o período em que o ambiente é atualizado.
A falta de conectividade com o DNS pode causar problemas ao realizar upgrades ou atualizações
Esses problemas de conectividade podem resultar em entradas de registro como esta:
WARNING - Compute Engine Metadata server unavailable attempt 1 of 5. Reason: [Errno -3] Temporary failure in name resolution Error
Isso geralmente significa que não há rota para o DNS. Portanto, verifique se o nome DNS metadata.google.internal pode ser resolvido para o endereço IP nas redes de cluster, pods e serviços. Verifique se o Acesso privado do Google está ativado na VPC (no projeto host ou de serviço) em que o ambiente foi criado.
A seguir
- Como atualizar ambientes
- Como fazer upgrade de ambientes
- Como resolver problemas da criação de ambientes