Resolva problemas de implementações de service mesh do GKE do Cloud Service Mesh
Este guia contém informações para resolver problemas com implementações de malhas de serviço da Gateway API.
Informações no campo status
Todos os recursos da API Gateway têm um campo status
que reflete o estado dos recursos na perspetiva do controlador. Além do campo status
, a app do controlador anexa eventos aos recursos da API Gateway para fornecer informações sobre as respetivas operações nesses recursos.
Por exemplo, use os seguintes comandos para inspecionar o estado e os eventos de um
TDMesh
:
kubectl describe tdmesh td-mesh
O resultado é semelhante ao seguinte:
... Status: Conditions: Last Transition Time: 1970-01-01T00:00:00Z Message: Waiting for controller Reason: NotReconciled Status: False Type: Scheduled Events: ...
O estado anterior indica que o controlador não começou a conciliar esta malha específica. Se este estado durar mais de 5 minutos sem eventos anexados, leia a secção seguinte,
O controlador não parece conciliar um recurso TDMesh
para resolver o problema.
Pode usar um método semelhante para depurar problemas relacionados com outros recursos, como HTTPRoute
, TCPRoute
e outros recursos de encaminhamento.
Normalmente, os estados e os eventos indicam o problema subjacente.
O controlador não parece reconciliar um recurso TDMesh
Para diagnosticar o problema, confirme se existe um gke-td
GatewayClass
:
kubectl get gatewayclasses
O resultado deve incluir um elemento GatewayClass
denominado gke-td
.
NAME CONTROLLER gke-td networking.gke.io/gateway
Se não for devolvido um GatewayClass
com esse nome, siga as instruções em
Instale as definições de recursos personalizados necessárias
para confirmar que todas as CRDs necessárias estão instaladas no cluster de configuração e, em seguida, reative
a funcionalidade do hub para a malha de serviços do Google Kubernetes Engine do Cloud Service Mesh com os
seguintes comandos:
Desative a funcionalidade:
gcloud container hub ingress disable
Reative a funcionalidade:
gcloud container hub ingress enable \ --config-membership=/projects/PROJECT_ID/locations/global/memberships/gke-1