Como resolver problemas de configuração
Esta seção explica problemas comuns do Cloud Service Mesh e como resolvê-los. Se você precisar de mais ajuda, consulte Como receber suporte.
Como verificar MembershipState
A qualquer momento, você pode verificar o status mais recente da malha executando o seguinte comando:
gcloud container fleet mesh describe
A saída é semelhante a:
...
membershipSpecs:
projects/project_id/locations/global/memberships/cluster:
mesh:
management: MANAGEMENT_AUTOMATIC
membershipStates:
projects/project_id/locations/global/memberships/cluster:
servicemesh:
...
conditions:
- code: CONFIG_VALIDATION_WARNING
documentationLink: https://cloud.google.com/...
details: Application of one or more configs has failed. Error details are shown on individual config resources. See documentation link for more detail.
severity: WARNING
...
Códigos de erro de MembershipState
Se o Cloud Service Mesh informar condições para o MembershipState de um cluster, isso pode significar que as configurações da malha (como os recursos personalizados do Istio) não puderam ser aplicadas. As descrições de código de erro a seguir oferecem mais informações sobre como resolvê-los.
Código do erro | Causa | Resolução |
---|---|---|
CONFIG_APPLY_INTERNAL_ERROR |
Não foi possível aplicar uma ou mais configurações devido a um erro interno. | Entre em contato com o suporte ao cliente. |
QUOTA_EXCEEDED_* |
Uma ou mais configurações não foram aplicadas porque os recursos atingiram o limite de cota. | Consulte Cotas para informações sobre as cotas específicas e como aumentá-las. |
CONFIG_VALIDATION_ERROR |
Não foi possível aplicar uma ou mais configurações devido a uma configuração inválida. | Erros específicos são gravados nas configurações que os causaram. Mais informações sobre como diagnosticar esses problemas estão descritas na seção Erros de validação de configuração. |
CONFIG_VALIDATION_WARNING |
Encontramos possíveis problemas em uma ou mais configurações. Talvez elas não tenham sido aplicadas, e, se tiverem sido, talvez haja um comportamento não intencional. | Mais informações sobre como diagnosticar esses problemas estão descritas na seção Erros de validação de configuração. |
Erros de validação de configuração
Os códigos CONFIG_VALIDATION_WARNING
e CONFIG_VALIDATION_ERROR
indicam que foram encontrados problemas nas configurações de malha (recursos personalizados do Istio ou do Kubernetes) e que um subconjunto de configurações pode não ter sido aplicado corretamente.
Muitos detalhes de erro por recurso são gravados no recurso aplicável. O comando a seguir pode ser usado para localizar as configurações inválidas e conferir as mensagens de erro específicas. Observação: esses erros são específicos para recursos do Istio, e nem todos os erros de validação podem ser exibidos aqui.
for resource in serviceentries destinationrules virtualservices gateways peerauthentications authorizationpolicies requestauthentications sidecars telemetries envoyfilters;
do kubectl get $resource --all-namespaces --output=json | \
jq '.items[] | select(.status.conditions != null and any(.status.conditions[]; .type == "Accepted" and .status == "False")) | {"name": .metadata.name, "namespace": .metadata.namespace, "kind": .kind, "conditions": .status.conditions}';
done
A saída é semelhante a:
{
"name": "demo-envoy-filter",
"namespace": "default",
"kind": "EnvoyFilter",
"conditions": [
{
"lastTransitionTime": "2024-04-04T21:10:18.046975988Z",
"message": "This API is not supported",
"reason": "Invalid",
"status": "False",
"type": "Accepted"
}
]
}