Nesta página, descrevemos:
Como inspecionar detalhes e registros de implantações e revisões individuais.
Estratégias de solução de problemas para erros comuns que podem ocorrer ao implantar uma configuração do Terraform.
Inspecionar detalhes e registros de implantação
É possível inspecionar detalhes e registros de implantações e revisões individuais.
Inspecionar o estado da implantação
Cada implantação tem informações sobre o estado atual, o código de erro e detalhes sobre as causas da falha.
Para encontrar erros, comece por verificar o estado de uma implantação.
Inspecionar o estado de uma revisão
Se uma implantação falhar com o código de erro REVISION_FAILED
, você poderá
verificar o estado de uma revisão.
Na saída do estado da revisão, observe os campos stateDetail
e
errorCode
.
O estado da revisão inclui as mesmas informações de uma implantação. Além disso, ele inclui o ID do build.
Inspecionar os registros do Cloud Build
Conferir o estado de uma revisão e receber o ID do build do Cloud Build usado pela revisão.
Use o ID do build para inspecionar os registros do Cloud Build. Consulte Conferir os resultados do build para saber mais sobre como inspecionar os resultados do build.
Erros comuns
Esta seção descreve erros comuns que podem ocorrer ao implantar uma configuração do Terraform com o Infra Manager.
Falha na implantação
Se o estado da implantação for FAILED
, ela terá encontrado um erro inesperado.
Confira o estado da implantação
e inspecione os campos stateDetail
e errorCode
para mais informações.
Se uma implantação falhar com o código de erro REVISION_FAILED
, você poderá
inspecionar o estado da revisão.
Erros de configuração
Se o estado da implantação for FAILED
, ela pode ter falhado devido a erros de configuração com o Terraform.
Se o erro de implantação estiver relacionado à sua configuração, os campos tfErrors
e
errorLogs
serão incluídos na saída do
estado da implantação.
Exemplos de erros de configuração incluem uma configuração inválida ou
permissões ausentes.
Confira os erros do Terraform. Na saída do estado da implantação:
tfErrors
é um resumo dos erros encontrados pelo Terraform (limitado pelo Infra Manager a 10 erros nesta lista).errorLogs
apontam para um objeto do Cloud Storage no bucket de artefatos. Esse bucket contém todos ostfErrors
no formato JSON delimitado por nova linha.
Cada tfError
tem um endereço de recurso e uma descrição de erro legível por humanos no
campo errorDescription
. Se o recurso falhar devido a um código de erro HTTP
retornado de uma API do Google Cloud , o campo httpResponseCode
também será
preenchido. Todas as informações adicionais sobre falhas da API são registradas no
campo de erro.
A conta de serviço não tem permissões para buscar a configuração
O seguinte erro aparece:
error downloading 'GCS_LOCATION': googleapi: Error 403: SA_EMAIL does
not have storage.objects.list access to the Google Cloud Storage bucket.
Esse erro aparece porque o Infra Manager não tem permissão para acessar a configuração do Terraform no bucket do Cloud Storage.
Para resolver o problema, conceda o papel storage.objectViewer
à conta de serviço. Para mais detalhes sobre a concessão de permissões à conta de serviço, consulte
Configurar a conta de serviço.
Local incorreto para buscar a configuração
O seguinte erro aparece:
`blueprint fetch failed: invalid path`
Esse erro aparece quando um local inválido é especificado para buscar a configuração do Terraform. O Infra Manager usa o termo blueprint para se referir a uma configuração do Terraform.
Para resolver esse erro, verifique o local da configuração do Terraform e verifique se o local está formatado corretamente no comando.
Permissão incorreta para acionar recursos
Os erros geralmente estão em tfErrors
com o código de resposta 403
para os recursos que não puderam ser implantados.
Esse erro aparece quando a conta de serviço não tem permissão suficiente para criar, ler, atualizar ou excluir recursos definidos na configuração do Terraform.
Para resolver esse erro, consulte Conceder permissões do IAM à conta de serviço.
Configuração com back-end
O seguinte erro aparece:
`blueprint invalid: found backend config in file.tf`
Esse erro aparece quando a configuração do Terraform tem um bloco de back-end. O Gerenciador de infraestrutura gerencia o back-end, portanto, um bloco de back-end não pode ser definido na configuração do Terraform.
Para resolver esse erro, remova o bloco de back-end da configuração.
Validar a configuração do repositório do Cloud Build
Se o Infra Manager não conseguir acessar seu repositório do Git (usando um repositório do Git particular ou um fluxo de trabalho automatizado do Cloud Build), talvez seja necessário validar se o repositório do Cloud Build foi configurado corretamente.
Para validar se o repositório do Cloud Build foi configurado para fornecer acesso ao repositório particular, consulte Conectar-se a um repositório do GitHub.
O Infra Manager usa a primeira conexão em que o URL do repositório do Cloud Build corresponde à configuração do Terraform (referenciada em --git-source-repo
) e em que é possível gerar um token somente leitura.
A conexão do repositório é validada diretamente por uma chamada para a API accessReadToken no repositório do Cloud Build selecionado.
Execute este comando usando a conta de serviço do Infra Manager para verificar se as permissões estão corretas:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token \
--impersonate-service-account=SERVICE_ACCOUNT)" \
"https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/connections/CB_CONNECTION/repositories/CB_REPO:accessReadToken"
A seguir
- Saiba mais sobre o Terraform com o Google Cloud.
- Atualizar uma implantação.
- Conferir o estado de uma implantação.
- Conferir os recursos implantados.
- Excluir uma implantação.