Cloud Composer 1 | Cloud Composer 2
Nesta página, você encontrará informações para solucionar problemas que podem ser encontrados durante a criação de ambientes do Cloud Composer.
Para informações sobre solução de problemas relacionadas à atualização e atualização de ambientes, consulte Solução de problemas de atualizações e upgrades do ambiente.
Quando os ambientes do Cloud Composer são criados, a maioria dos problemas acontece pelos seguintes motivos:
Problemas de permissão da conta de serviço
Informações incorretas de firewall, DNS ou roteamento
Problemas relacionados à rede. Por exemplo, configuração de VPC inválida, conflitos de endereço IP ou intervalos de IP de rede que sejam muito estreitos
Problemas relacionados a cotas
Políticas da organização incompatíveis
Permissões insuficientes para criar um ambiente
Se o Cloud Composer não criar um ambiente porque sua conta não tem permissões suficientes, as seguintes mensagens de erro serão exibidas:
ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: The caller
does not have permission
ou
ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: User not
authorized to act as service account <service-account-name>.
The user must be granted iam.serviceAccounts.actAs permission, included in
Owner, Editor, Service Account User role. See https://cloud.google.com/iam/docs
/understanding-service-accounts for additional details.
Solução: atribua papéis à sua conta e à conta de serviço do seu ambiente, conforme descrito em Controle de acesso.
No Cloud Composer 2, verifique se a conta de serviço do Agente de serviço do Cloud Composer (
service-PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com
) tem o papel Extensão do agente de serviço da API Cloud Composer v2 atribuído.Verifique se o Agente de serviço de APIs do Google (
PROJECT_NUMBER@cloudservices.gserviceaccount.com
) tem o papel Editor atribuído.Na configuração da VPC compartilhada, siga as instruções para configurar a VPC compartilhada.
A conta de serviço do ambiente não tem permissões suficientes
Ao criar um ambiente do Cloud Composer, especifique uma conta de serviço que executa os nós do cluster do GKE do ambiente. Se essa conta de serviço não tiver permissões suficientes para a operação solicitada, o Cloud Composer gerará o seguinte erro:
Errors in: [Web server]; Error messages:
Creation of airflow web server version failed. This may be an intermittent
issue of the App Engine service. You may retry the operation later.
{"ResourceType":"appengine.v1.version","ResourceErrorCode":"504","ResourceError
Message":"Your deployment has failed to become healthy in the allotted time
and therefore was rolled back. If you believe this was an error, try adjusting
the 'app_start_timeout_sec' setting in the 'readiness_check' section."}
Solução: atribua papéis à sua conta e à conta de serviço do seu ambiente, conforme descrito em Controle de acesso.
Avisos sobre papéis do IAM ausentes em contas de serviço
Quando a criação de um ambiente falha, o Cloud Composer gera a seguinte mensagem de aviso após a ocorrência de um erro: The issue may be caused by missing IAM roles in the following Service Accounts
...
.
Essa mensagem de aviso destaca as possíveis causas do erro. O Cloud Composer verifica os papéis necessários nas contas de serviço do projeto e, se esses papéis não estiverem presentes, ele gera essa mensagem de aviso.
Solução: verifique se as contas de serviço mencionadas na mensagem de aviso têm os papéis necessários. Para mais informações sobre papéis e permissões no Cloud Composer, consulte Controle de acesso.
Em alguns casos, você pode ignorar esse aviso. O Cloud Composer não verifica as permissões individuais atribuídas aos papéis. Por exemplo, se você usa papéis de IAM personalizados, é possível que a conta de serviço mencionada na mensagem de aviso já tenha todas as permissões necessárias. Nesse caso, ignore esse aviso.
Não existe uma rede VPC selecionada para o ambiente
É possível especificar uma rede VPC e uma sub-rede para o
ambiente do Cloud Composer ao criá-la. Se uma rede VPC não for especificada, o serviço Cloud Composer selecionará a VPC default
e a sub-rede default
para a região e a zona do ambiente.
Se a rede VPC e a sub-rede especificadas não existirem, o Cloud Composer gerará o seguinte erro:
Errors in: [GKE cluster]; Error messages:
{"ResourceType":"gcp-types/container-v1:projects.locations.clusters","R
esourceErrorCode":"400","ResourceErrorMessage":{"code":400,"message":"P
roject \"<your composer project>\" has no network named \"non-existing-
vpc\".","status":"INVALID_ARGUMENT","statusMessage":"Bad
Request","requestPath":"https://container.googleapis.com/
v1/projects/<your composer
project>/locations/<zone>/clusters","httpMethod":"POST"}}
Solução:
- No Cloud Composer 2, é possível criar ambientes que usam o Private Service Connect, em vez de redes VPC.
- Antes de criar um ambiente, verifique se a rede VPC e a sub-rede do novo ambiente existem.
Configuração de rede incorreta
As criações de ambientes do Cloud Composer exigem a configuração adequada de rede ou DNS. Siga estas instruções para configurar a conectividade com as APIs e os serviços do Google:
Se você configurar os ambientes do Cloud Composer em um modo de VPC compartilhada, siga também estas instruções de VPC compartilhada.
O ambiente do Cloud Composer usa uma sub-rede para nós do cluster e intervalos de IP para pods e serviços. Para garantir a comunicação com esses e outros intervalos de IP, siga estas instruções para configurar regras de firewall:
Também é possível verificar se há entradas de registro nas categorias de configuração GCE Networking
e
Subnetwork
selecionadas em Atividades
para ver se há algum erro informado durante a criação do ambiente.
Problemas de cotas encontrados ao criar ambientes em redes de grande escala
Ao criar ambientes do Cloud Composer em redes de grande escala, você pode encontrar as seguintes limitações de cotas:
- O número máximo de peerings de VPC por rede VPC é atingido.
- O número máximo de intervalos de IP de sub-redes primárias e secundárias foi atingido.
- O número máximo de regras de encaminhamento no grupo de peering para balanceamento de carga TCP/UDP interno é atingido.
Solução:
- No Cloud Composer 2, é possível criar ambientes que usam o Private Service Connect, em vez de redes VPC.
- No Cloud Composer 1, aplique a abordagem recomendada para o Cloud Composer em redes de grande escala.
Políticas da organização incompatíveis
As políticas a seguir precisam ser configuradas corretamente para que os ambientes do Cloud Composer possam ser criados.
Política da organização | Cloud Composer 1 | Cloud Composer 2 |
---|---|---|
compute.disableSerialPortLogging |
Desativado para versões anteriores à 1.13.0. qualquer valor | Precisa ser desativado |
compute.requireOsLogin |
Precisa ser desativado | É permitido qualquer valor |
compute.vmCanIpForward |
É necessário permitir (obrigatório para clusters do GKE do Cloud Composer) quando o modo nativo da VPC (usando o IP do alias) não está configurado. | É permitido qualquer valor |
compute.vmExternalIpAccess |
Precisa ser permitido em ambientes de IP público | Precisa ser permitido em ambientes de IP público |
compute.restrictVpcPeering |
Não é possível aplicar | Não é possível aplicar |
compute.disablePrivateServiceConnectCreationForConsumers |
É permitido qualquer valor | Não é possível impedir "SERVICE_PRODUCERS" se o Private Service Connect for usado |
Para mais informações, consulte a página Problemas conhecidos e Restrições da política da organização.
Como restringir serviços usados na organização ou no projeto
Os administradores da organização ou do projeto podem restringir quais serviços do Google podem ser
usados nos projetos usando a restrição da política da organização gcp.restrictServiceUsage
.
Ao usar essa política da organização, é importante permitir todos os serviços exigidos pelo Cloud Composer.
Mensagens de erro 400: falha ao implantar o servidor da Web do Airflow.
Esse erro pode ser causado por uma falha na criação de um cluster do GKE de um ambiente de IP privado porque há sobreposição de intervalos de IP.
Solução: verifique os registros em busca de falhas no cluster do ambiente e resolva o problema com base na mensagem de erro do GKE.
O Cloud Build falha ao criar imagens de ambiente
Se a conta de serviço do Cloud Build (PROJECT_NUMBER@cloudbuild.gserviceaccount.com
) não tiver o papel Conta de serviço do Cloud Build (roles/cloudbuild.builds.builder
) no projeto, as tentativas de criar ou atualizar um ambiente poderão falhar com erros relacionados à permissão.
Por exemplo, é possível ver a mensagem
denied: Permission "artifactregistry.repositories.uploadArtifacts" denied
seguida por ERROR: failed to push because we ran out of retries
nos
registros do Cloud Build.
Para resolver esse problema, verifique se a conta de serviço do Cloud Build tem o papel Conta de serviço do Cloud Build.
A seguir
- Como criar ambientes
- Como resolver problemas de atualizações e upgrades do ambiente
- Controle de acesso