Nesta página, mostramos como resolver problemas relacionados ao Entrada no Google Kubernetes Engine (GKE).
Se precisar de mais ajuda, entre em contato com o Cloud Customer Care.
A anotação da classe Entrada está incorreta
Sintoma
Ao criar um Entrada, talvez você veja o seguinte erro:
Missing one or more resources. If resource creation takes longer than expected, you might have an invalid configuration.
Causas possíveis
Ao criar a Entrada, talvez você tenha configurado incorretamente a classe de Entrada no manifesto.
Resolução
Para especificar uma classe de entrada, use a anotação kubernetes.io/ingress.class
. Não é possível especificar uma Entrada do GKE usando spec.ingressClassName
.
- Para implantar um balanceador de carga de aplicativo interno, use a anotação
kubernetes.io/ingress.class: gce-internal
. - Para implantar um balanceador de carga de aplicativo externo, use a anotação
kubernetes.io/ingress.class: gce
.
A anotação do endereço IP estático está incorreta
Sintoma
Ao configurar um Entrada externo para usar um endereço IP estático, você pode receber o seguinte erro:
Error syncing to GCP: error running load balancer syncing routine: loadbalancer <Name of load balancer> does not exist: the given static IP name <Static IP> doesn't translate to an existing static IP.
Causas possíveis
- Você não criou um endereço IP externo estático antes de implantar o Entrada.
- Você não está usando a anotação correta para seu tipo de balanceador de carga.
Resolução
Se você estiver configurando uma Entrada externa:
- Reserve um endereço IP externo estático antes de implantar a entrada.
- Use a anotação
kubernetes.io/ingress.global-static-ip-name
no recurso de entrada.
Se você estiver configurando um Entrada interno:
- Reserve um endereço IP interno estático regional antes de implantar o Entrada.
- Use a anotação
kubernetes.io/ingress.regional-static-ip-name
no recurso de entrada.
O endereço IP estático já está em uso
Sintoma
Talvez você veja o seguinte erro ao especificar um endereço IP estático para provisionar o recurso de entrada interno ou externo:
Error syncing to GCP: error running load balancer syncing
routine: loadbalancer <LB name> does not exist:
googleapi: Error 409: IP_IN_USE_BY_ANOTHER_RESOURCE - IP ''<IP address>'' is already being used by another resource.
Causas possíveis
O endereço IP estático já está sendo usado por outro recurso.
Erro ao desativar o HTTP e usar um certificado gerenciado pelo Google
Sintoma
Se você estiver configurando um certificado SSL gerenciado pelo Google e desativando o tráfego HTTP no Entrada, vai aparecer o seguinte erro:
Error syncing to GCP: error running load balancer syncing
routine: loadbalancer <Load Balancer name> does not exist:
googleapi: Error 404: The resource ''projects/<Project>/global/sslPolicies/<Policy name>' was not found, notFound
Causas possíveis
Não é possível usar as seguintes anotações juntas ao configurar o Entrada:
networking.gke.io/managed-certificates
(para associar o certificado gerenciado pelo Google a uma Entrada)kubernetes.io/ingress.allow-http: false
(para desativar o tráfego HTTP)
Resolução
Desative o tráfego HTTP somente depois que o balanceador de carga de aplicativo externo estiver totalmente programado. Você pode atualizar a entrada e adicionar a anotação kubernetes.io/ingress.allow-http: false
ao manifesto.
A sub-rede somente proxy está ausente para um recurso de entrada interno
Sintoma
Ao implantar um Entrada para um balanceador de carga de aplicativo interno, talvez você veja o seguinte erro:
Error syncing to GCP: error running load balancer syncing routine:
loadbalancer <LB name> does not exist: googleapi: Error 400: Invalid value for field 'resource.target': 'https://www.googleapis.com/compute/v1/projects/<Project ID>/regions/<Region>/targetHttpsProxies/<Target proxy>'.
An active proxy-only subnetwork is required in the same region and VPC as
the forwarding rule.
Causas possíveis
Você não criou uma sub-rede somente proxy antes de criar o recurso de entrada. Uma sub-rede somente proxy é necessária para balanceadores de carga de aplicativo internos.
Resolução
Crie uma sub-rede somente proxy antes de implantar o Entrada interno.
A chave do certificado SSL é muito grande
Sintoma
Se o tamanho da chave do certificado SSL do balanceador de carga for muito grande, você poderá receber o seguinte erro:
Error syncing to GCP: error running load balancer syncing routine: loadbalancer gky76k70-load-test-trillian-api-ingress-fliismmb does not exist: Cert creation failures - k8s2-cr-gky76k70-znz6o1pfu3tfrguy-f9be3a4abbe573f7 Error:googleapi: Error 400: The SSL key is too large., sslCertificateKeyTooLarge
Causas possíveis
Google Cloud tem um limite de 2.048 bits para chaves de certificado SSL.
Resolução
Reduza o tamanho da chave do certificado SSL para 2.048 bits ou menos.
Erro ao criar uma entrada no nível Standard
Sintoma
Se você estiver implantando um Entrada em um projeto com o nível de rede padrão do projeto definido como Standard, a seguinte mensagem de erro vai aparecer:
Error syncing to GCP: error running load balancer syncing routine: load balancer <LB Name> does not exist: googleapi: Error 400: STANDARD network tier (the project''s default network tier) is not supported: STANDARD network tier is not supported for global forwarding rule., badRequest
Resolução
Configure o nível de rede padrão do projeto como Premium.
A seguir
Se você não encontrar uma solução para seu problema na documentação, consulte Receber suporte para mais ajuda, incluindo conselhos sobre os seguintes tópicos:
- Abrir um caso de suporte entrando em contato com o Cloud Customer Care.
- Receber suporte da comunidade fazendo perguntas no StackOverflow e usando a tag
google-kubernetes-engine
para pesquisar problemas semelhantes. Você também pode participar do canal do Slack#kubernetes-engine
para receber mais suporte da comunidade. - Abrir bugs ou solicitações de recursos usando o Issue Tracker público.