Resolução de problemas de atualizações do ambiente

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Esta página fornece informações de resolução de problemas para problemas que pode encontrar ao atualizar ou fazer a atualização dos ambientes do Cloud Composer.

Para ver informações de resolução de problemas relacionadas com a criação de ambientes, consulte o artigo Resolução de problemas de criação de ambientes.

Quando os ambientes do Cloud Composer são atualizados, a maioria dos problemas ocorre pelos seguintes motivos:

  • Problemas de autorização da conta de serviço
  • Problemas de dependência do PyPI
  • Tamanho da base de dados do Airflow

Autorizações insuficientes para atualizar ou fazer uma atualização de um ambiente

Se o Cloud Composer não conseguir atualizar nem fazer uma atualização de um ambiente devido a autorizações insuficientes, apresenta a seguinte mensagem de erro:

ERROR: (gcloud.composer.environments.update) PERMISSION_DENIED: The caller does not have permission

Solução: atribua funções à sua conta e à conta de serviço do seu ambiente, conforme descrito em Controlo de acesso.

A conta de serviço do ambiente tem autorizações insuficientes

Quando cria um ambiente do Cloud Composer, especifica uma conta de serviço que executa a maioria das operações do ambiente. Se esta conta de serviço não tiver autorizações suficientes para a operação pedida, o Cloud Composer gera 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 funções à sua Conta Google e à conta de serviço do seu ambiente, conforme descrito em Controlo de acesso.

O tamanho da base de dados do Airflow é demasiado grande para realizar a operação

Uma operação de atualização pode não ser bem-sucedida porque o tamanho da base de dados do Airflow é demasiado grande para que as operações de atualização sejam bem-sucedidas.

Se o tamanho da base de dados do Airflow for superior a 16 GB, o Cloud Composer devolve o seguinte erro:

Airflow database uses more than 16 GB. Please clean the database before upgrading.

Solução: execute a limpeza da base de dados do Airflow, conforme descrito no artigo Limpe a base de dados do Airflow.

Uma atualização para uma nova versão do Cloud Composer falha devido a conflitos de pacotes do PyPI

Quando atualiza um ambiente com pacotes PyPI personalizados instalados, podem ocorrer erros relacionados com conflitos de pacotes PyPI. Isto pode acontecer porque a nova imagem do Cloud Composer contém versões posteriores de pacotes pré-instalados. Isto pode causar conflitos de dependência com pacotes PyPI que instalou no seu ambiente.

Solução:

  • Para obter informações detalhadas sobre conflitos de pacotes, execute uma verificação de atualização.
  • Afrouxe 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 em conflito, consulte a documentação do pip.

Não é possível atualizar um ambiente para uma versão que ainda seja suportada

Os ambientes do Cloud Composer só podem ser atualizados para várias versões mais recentes e anteriores.

As limitações de versão para criar novos ambientes e atualizar os ambientes existentes são diferentes. A versão do Cloud Composer que escolher quando criar um novo ambiente pode não estar disponível quando atualizar ambientes existentes.

Pode realizar a operação de atualização através da CLI Google Cloud, da API ou do Terraform. Na Google Cloud consola, apenas as versões mais recentes estão disponíveis como opções de atualização.

O ambiente não está em bom estado (falha na verificação de atividade)

Só é possível atualizar um ambiente se o respetivo estado for comunicado como em bom estado.

Uma das causas mais comuns para o estado não saudável é quando os componentes do ambiente se aproximam dos limites de recursos configurados e funcionam constantemente com a carga máxima. Uma vez que alguns componentes do ambiente não conseguem comunicar o respetivo estado, o DAG de verificação de atividade comunica o estado do ambiente como não saudável.

Para resolver este problema, recomendamos que aumente os limites de recursos. Embora recomendemos que mantenha o seu ambiente sempre longe dos limites, também pode fazê-lo apenas durante o período em que o seu ambiente é atualizado.

A falta de conetividade ao DNS pode causar problemas ao realizar atualizações

Estes problemas de conetividade podem resultar em entradas de registo como esta:

WARNING - Compute Engine Metadata server unavailable attempt 1 of 5. Reason: [Errno -3] Temporary failure in name resolution Error

Normalmente, significa que não existe um caminho para o DNS. Por isso, certifique-se de que o nome DNS metadata.google.internal pode ser resolvido para o endereço IP a partir das redes de clusters, pods e serviços. Verifique se tem o acesso privado à Google ativado na VPC (no projeto anfitrião ou de serviço) onde o seu ambiente foi criado.

O que se segue?