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.
Anotação incorreta para a classe Entrada
Sintoma
Ao criar uma 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, você pode ter configurado a classe Ingress incorretamente 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
.
Anotação incorreta para o endereço IP estático
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:
- Reservar 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 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 Entrada.
O endereço IP estático já está em uso
Sintoma
Talvez você encontre o seguinte erro ao especificar um endereço IP estático para provisionar seu 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 do Google
Sintoma
Se você estiver configurando um certificado SSL gerenciado pelo Google e desativando o tráfego HTTP na 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 ao mesmo tempo 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 uma entrada interna
Sintoma
Ao implantar um Entrada para um balanceador de carga de aplicativo interno, talvez você encontre 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 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 a entrada interna.
A chave do certificado SSL é muito grande
Sintoma
Se o tamanho da chave do certificado SSL do balanceador de carga for muito grande, talvez você receba 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
OGoogle 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 padrão
Sintoma
Se você estiver implantando uma entrada em um projeto com o nível de rede padrão do projeto definido como Padrão, a seguinte mensagem de erro será exibida:
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
Defina o nível de rede padrão do projeto como Premium.