Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Esta página lista problemas conhecidos do Cloud Composer. Para informações sobre as correções de problemas, consulte as notas de lançamento.
A primeira execução do DAG para um ficheiro DAG carregado tem várias tarefas com falhas
Quando carrega um ficheiro DAG, por vezes, as primeiras tarefas da primeira execução do DAG falham com o erro Unable to read remote log...
. Este problema ocorre porque o ficheiro DAG está sincronizado entre o contentor do seu ambiente, os trabalhadores do Airflow e os programadores do Airflow do seu ambiente. Se o agendador receber o ficheiro DAG e agendá-lo para execução por um trabalhador e, se o trabalhador ainda não tiver o ficheiro DAG, a execução da tarefa falha.
Para mitigar este problema, os ambientes com o Airflow 2 estão configurados para fazer duas novas tentativas para uma tarefa com falha por predefinição. Se uma tarefa falhar, é repetida duas vezes com intervalos de 5 minutos.
O Cloud Composer não deve ser afetado pela vulnerabilidade do Apache Log4j 2 (CVE-2021-44228)
Em resposta à vulnerabilidade do Apache Log4j 2 (CVE-2021-44228), o Cloud Composer realizou uma investigação detalhada e acreditamos que o Cloud Composer não é vulnerável a esta exploração.
Por vezes, a IU do Airflow pode não recarregar um plug-in depois de ser alterado
Se um plug-in consistir em muitos ficheiros que importam outros módulos, a IU do Airflow pode não conseguir reconhecer o facto de que um plug-in deve ser recarregado. Nesse caso, reinicie o servidor Web do Airflow do seu ambiente.
Erro 504 ao aceder à IU do Airflow
Pode receber o erro 504 Gateway Timeout
ao aceder à IU do Airflow. Este erro pode ter várias causas:
Problema de comunicação temporário. Neste caso, tente aceder à IU do Airflow mais tarde. Também pode reiniciar o servidor Web do Airflow.
(Apenas no Cloud Composer 3) Problema de conetividade. Se a IU do Airflow estiver permanentemente indisponível e forem gerados erros de tempo limite ou 504, certifique-se de que o seu ambiente consegue aceder a
*.composer.googleusercontent.com
.(Apenas no Cloud Composer 2) Problema de conetividade. Se a IU do Airflow estiver permanentemente indisponível e forem gerados erros de tempo limite ou 504, certifique-se de que o seu ambiente consegue aceder a
*.composer.cloud.google.com
. Se usar o acesso privado à Google e enviar tráfego através deprivate.googleapis.com
IPs virtuais, ou os VPC Service Controls e enviar tráfego através derestricted.googleapis.com
IPs virtuais, certifique-se de que o Cloud DNS também está configurado para*.composer.cloud.google.com
nomes de domínio.Servidor Web do Airflow sem resposta. Se o erro 504 persistir, mas ainda conseguir aceder à IU do Airflow em determinados momentos, o servidor Web do Airflow pode não estar a responder porque está sobrecarregado. Tente aumentar os parâmetros de escala e desempenho do servidor Web.
Erro 502 ao aceder à IU do Airflow
O erro 502 Internal server exception
indica que a IU do Airflow não consegue processar pedidos recebidos. Este erro pode ter várias causas:
Problema de comunicação temporário. Tente aceder à IU do Airflow mais tarde.
Falha ao iniciar o servidor Web. Para começar, o servidor Web requer que os ficheiros de configuração sejam sincronizados primeiro. Verifique se existem entradas de registo nos registos do servidor Web semelhantes a:
GCS sync exited with 1: gcloud storage cp gs://<bucket-name>/airflow.cfg /home/airflow/gcs/airflow.cfg.tmp
ouGCS sync exited with 1: gcloud storage cp gs://<bucket-name>/env_var.json.cfg /home/airflow/gcs/env_var.json.tmp
. Se vir estes erros, verifique se os ficheiros mencionados nas mensagens de erro ainda estão presentes no contentor do ambiente.Em caso de remoção acidental (por exemplo, porque foi configurada uma política de retenção), pode restaurá-los:
Defina uma nova variável de ambiente no seu ambiente. Pode usar qualquer nome de variável e valor.
Substitua uma opção de configuração do Airflow. Pode usar uma opção de configuração do Airflow inexistente.
Passar o cursor do rato sobre a instância da tarefa na vista de árvore gera um TypeError não capturado
No Airflow 2, a vista de árvore na IU do Airflow pode, por vezes, não funcionar corretamente quando é usado um fuso horário não predefinido. Como alternativa para este problema, configure o fuso horário explicitamente na IU do Airflow.
Pastas vazias no Scheduler e nos trabalhadores
O Cloud Composer não remove ativamente pastas vazias dos workers e dos programadores do Airflow. Essas entidades podem ser criadas como resultado do processo de sincronização do contentor do ambiente quando estas pastas existiam no contentor e foram removidas posteriormente.
Recomendação: ajuste os DAGs para que estejam preparados para ignorar essas pastas vazias.
Essas entidades são removidas dos armazenamentos locais dos programadores e dos trabalhadores do Airflow quando estes componentes são reiniciados (por exemplo, como resultado da redução da escala ou das operações de manutenção no cluster do seu ambiente).
Suporte para Kerberos
O Cloud Composer não suporta a configuração do Kerberos do Airflow.
Compatibilidade com classes de computação no Cloud Composer 2 e no Cloud Composer 3
O Cloud Composer 3 e o Cloud Composer 2 suportam apenas a classe de computação de uso geral. Isto significa que não é possível executar Pods que solicitem outras classes de computação (como Balanced ou Scale-Out).
A classe de uso geral permite a execução de pods que pedem até 110 GB de memória e até 30 CPUs (conforme descrito em Pedidos máximos da classe de computação).
Se quiser usar a arquitetura baseada em ARM ou precisar de mais CPU e memória, tem de usar uma classe de computação diferente, que não é suportada nos clusters do Cloud Composer 3 e do Cloud Composer 2.
Recomendação: use GKEStartPodOperator
para executar pods do Kubernetes num cluster diferente que suporte a classe de computação selecionada. Se executar pods personalizados que exijam uma classe de computação diferente, estes também têm de ser executados num cluster que não seja do Cloud Composer.
Não é possível reduzir o armazenamento do Cloud SQL
O Cloud Composer usa o Cloud SQL para executar a base de dados do Airflow. Ao longo do tempo, o armazenamento em disco da instância do Cloud SQL pode aumentar porque o disco é dimensionado para se ajustar aos dados armazenados pelas operações do Cloud SQL quando a base de dados do Airflow aumenta.
Não é possível reduzir o tamanho do disco do Cloud SQL.
Como solução alternativa, se quiser usar o menor tamanho do disco do Cloud SQL, pode recriar ambientes do Cloud Composer com cópias instantâneas.
A métrica de utilização do disco da base de dados não diminui após a remoção de registos do Cloud SQL
As bases de dados relacionais, como o Postgres ou o MySQL, não removem fisicamente as linhas quando são eliminadas ou atualizadas. Em vez disso, marca-as como "tuplos mortos" para manter a consistência dos dados e evitar o bloqueio de transações simultâneas.
O MySQL e o Postgres implementam mecanismos de recuperação de espaço após a eliminação de registos.
Embora seja possível forçar a base de dados a recuperar espaço em disco não utilizado, esta é uma operação que consome muitos recursos e que, além disso, bloqueia a base de dados, tornando o Cloud Composer indisponível. Por isso, é recomendável usar os mecanismos de criação para reclamar o espaço não usado.
Acesso bloqueado: erro de autorização
Se este problema afetar um utilizador, a caixa de diálogo Acesso bloqueado: erro de autorização contém a mensagem Error 400: admin_policy_enforced
.
Se a opção Controlos de API > Apps de terceiros não configuradas > Não permitir que os utilizadores acedam a apps de terceiros estiver ativada no Google Workspace e a app Apache Airflow no Cloud Composer não estiver explicitamente permitida, os utilizadores não podem aceder à IU do Airflow, a menos que permitam explicitamente a aplicação.
Para permitir o acesso, siga os passos indicados no artigo Permita o acesso à IU do Airflow no Google Workspace.
Repetição de início de sessão ao aceder à IU do Airflow
Este problema pode ter as seguintes causas:
Se as associações de acesso sensível ao contexto do Chrome Enterprise Premium forem usadas com níveis de acesso que dependem de atributos do dispositivo e a app Apache Airflow no Cloud Composer não for isenta, não é possível aceder à IU do Airflow devido a um ciclo de início de sessão. Para permitir o acesso, siga os passos indicados no artigo Permita o acesso à IU do Airflow em associações do Acesso sensível ao contexto.
Se as regras de entrada estiverem configuradas num perímetro dos VPC Service Controls que protege o projeto, e a regra de entrada que permite o acesso ao serviço Cloud Composer usar o tipo de identidade
ANY_SERVICE_ACCOUNT
ouANY_USER_ACCOUNT
, os utilizadores não podem aceder à IU do Airflow, acabando por entrar num ciclo de início de sessão. Para mais informações sobre como resolver este cenário, consulte o artigo Permita o acesso à IU do Airflow nas regras de entrada do VPC Service Controls.
A pasta /data não está disponível no servidor Web do Airflow
No Cloud Composer 2 e no Cloud Composer 3, o servidor Web do Airflow destina-se a ser um componente maioritariamente só de leitura, e o Cloud Composer não sincroniza a pasta data/
com este componente.
Por vezes, pode querer partilhar ficheiros comuns entre todos os componentes do Airflow, incluindo o servidor Web do Airflow.
Solução:
Inclua os ficheiros a partilhar com o servidor Web num módulo PYPI e instale-o como um pacote PYPI normal. Depois de o módulo PYPI ser instalado no ambiente, os ficheiros são adicionados às imagens dos componentes do Airflow e ficam disponíveis para estes.
Adicione ficheiros à pasta
plugins/
. Esta pasta está sincronizada com o servidor Web do Airflow.
Tempos de análise de DAGs não contínuos e diagramas de tamanho do contentor de DAGs na monitorização
Os tempos de análise de DAG não contínuos e os diagramas de tamanho do contentor de DAG no painel de controlo de monitorização indicam problemas com tempos de análise de DAG longos (mais de 5 minutos).

Solução: Recomendamos que mantenha o tempo de análise do DAG total abaixo de 5 minutos. Para reduzir o tempo de análise de DAG, siga as diretrizes de escrita de DAG.
Os registos de tarefas aparecem com atrasos
Sintoma:
- No Cloud Composer 3, os registos de tarefas do Airflow não aparecem imediatamente e são atrasados durante alguns minutos.
- Pode encontrar mensagens
Logs not found for Cloud Logging filter
nos registos do Airflow
Causa:
Se o seu ambiente executar um grande número de tarefas em simultâneo, os registos de tarefas podem sofrer um atraso porque o tamanho da infraestrutura do ambiente não é suficiente para processar todos os registos com rapidez suficiente.
Soluções:
- Pondere aumentar o tamanho da infraestrutura do ambiente para aumentar o desempenho.
- Distribuir execuções de DAG ao longo do tempo para que as tarefas não sejam executadas ao mesmo tempo.
Aumento dos tempos de arranque para KubernetesPodOperator e KubernetesExecutor
Os pods criados com o KubernetesPodOperator e as tarefas executadas com o KubernetesExecutor registam tempos de início mais longos. A equipa do Cloud Composer está a trabalhar numa solução e vai anunciar quando o problema estiver resolvido.
Soluções alternativas:
- Inicie pods com mais CPU.
- Se possível, otimize as imagens (menos camadas, tamanho mais pequeno).
O ambiente está no estado ERROR depois de a conta de faturação do projeto ter sido eliminada ou desativada, ou a API Cloud Composer ter sido desativada
Os ambientes do Cloud Composer afetados por estes problemas são irrecuperáveis:
- Depois de a conta de faturação do projeto ter sido eliminada ou desativada, mesmo que outra conta tenha sido associada posteriormente.
- Depois de a API Cloud Composer ter sido desativada no projeto, mesmo que tenha sido ativada posteriormente.
Pode fazer o seguinte para resolver o problema:
Continua a poder aceder aos dados armazenados nos contentores do seu ambiente, mas os próprios ambientes já não são utilizáveis. Pode criar um novo ambiente do Cloud Composer e, em seguida, transferir os seus DAGs e dados.
Se quiser realizar qualquer uma das operações que tornam os seus ambientes não recuperáveis, certifique-se de que faz uma cópia de segurança dos seus dados, por exemplo, criando uma captura instantânea de um ambiente. Desta forma, pode criar outro ambiente e transferir os respetivos dados carregando esta imagem instantânea.
Os registos das tarefas do Airflow não são recolhidos se [core]execute_tasks_new_python_interpreter estiver definido como True
O Cloud Composer não recolhe registos de tarefas do Airflow se a opção de configuração do Airflow estiver definida como True
.[core]execute_tasks_new_python_interpreter
Possível solução:
- Remova a substituição desta opção de configuração ou defina o valor como
False
.
Erro ao remover a associação de rede quando um ambiente é eliminado
Se vários ambientes que partilham a mesma ligação de rede forem eliminados ao mesmo tempo, algumas operações de eliminação falham com um erro.
Sintomas:
É gerado o seguinte erro:
Got error while removing Network Attachment: <error code>
O código de erro comunicado pode ser Bad request: <resource> is not ready
ou
Precondition failed: Invalid fingerprint
.
Possíveis soluções alternativas:
Elimine os ambientes que usam o mesmo anexo de rede um a um.
Desative a ligação a uma rede VPC para os seus ambientes antes de os eliminar. Recomendamos esta solução alternativa para a eliminação automática de ambientes.
O que se segue?
- Resolução de problemas de criação do ambiente
- Resolução de problemas de DAGs
- Resolução de problemas do agendador do Airflow