Konfigurationsprobleme beheben
In diesem Abschnitt werden häufig auftretende Cloud Service Mesh-Probleme und deren Behebung erläutert. Weitere Informationen finden Sie unter Support.
MembershipState prüfen
Sie können den aktuellen Status des Mesh jederzeit mit dem folgenden Befehl prüfen:
gcloud container fleet mesh describe
Die Ausgabe sieht etwa so aus:
...
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
...
Fehlercodes für MembershipState
Wenn Cloud Service Mesh Bedingungen für den Mitgliedschaftsstatus für einen Cluster meldet, konnten Mesh-Konfigurationen (z. B. benutzerdefinierte Istio-Ressourcen) möglicherweise nicht angewendet werden. In den folgenden Beschreibungen der Fehlercodes finden Sie weitere Informationen zur Behebung.
Fehlercode | Ursache | Auflösung |
---|---|---|
CONFIG_APPLY_INTERNAL_ERROR |
Die Anwendung einer oder mehrerer Konfigurationen ist aufgrund eines internen Fehlers fehlgeschlagen. | Bitte wenden Sie sich an den Kundensupport. |
QUOTA_EXCEEDED_* |
Die Anwendung einer oder mehrerer Konfigurationen ist fehlgeschlagen, da das Kontingent für die Ressourcen erreicht wurde. | Informationen zu den einzelnen Kontingenten und dazu, wie Sie sie erhöhen können, finden Sie unter Kontingente. |
CONFIG_VALIDATION_ERROR |
Mindestens eine Konfiguration konnte aufgrund einer ungültigen Konfiguration nicht angewendet werden. | Spezifische Fehler werden in die Konfigurationen geschrieben, die sie verursacht haben. Weitere Informationen zur Diagnose dieser Fehler finden Sie im Abschnitt Fehler bei der Konfigurationsvalidierung. |
CONFIG_VALIDATION_WARNING |
Bei einer oder mehreren Konfigurationen sind potenzielle Probleme aufgetreten. Diese Änderungen wurden möglicherweise nicht angewendet. Falls doch, kann es zu unerwarteten Verhaltensweisen kommen. | Weitere Informationen zur Diagnose dieser Fehler finden Sie im Abschnitt Fehler bei der Konfigurationsvalidierung. |
Fehler bei der Konfigurationsvalidierung
Die Codes CONFIG_VALIDATION_WARNING
und CONFIG_VALIDATION_ERROR
weisen darauf hin, dass Probleme mit Mesh-Konfigurationen (Istio- oder benutzerdefinierte Kubernetes-Ressourcen) gefunden wurden und dass einige Konfigurationen möglicherweise nicht richtig angewendet wurden.
Viele Fehlerdetails pro Ressource werden in die entsprechende Ressource geschrieben. Mit dem folgenden Befehl können Sie die ungültigen Konfigurationen finden und die entsprechenden Fehlermeldungen aufrufen. Hinweis: Diese Informationen beziehen sich speziell auf Istio-Ressourcen. Es werden möglicherweise nicht alle Validierungsfehler angezeigt.
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
Die Ausgabe sieht etwa so aus:
{
"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"
}
]
}