Einführung in die Fehlerbehebung

Wenn Probleme mit Config Sync auftreten, bietet diese Seite einige gängige Tools und Verfahren, mit denen Sie Probleme identifizieren und beheben können.

Upgrade auf eine unterstützte Version ausführen

Ziehen Sie ein Upgrade von Config Sync auf eine unterstützte Version in Betracht. Durch Upgrades werden häufige Probleme gelöst und Sie erhalten Zugriff auf die neuesten Funktionen. Damit Sie immer eine unterstützte Version verwenden, können Sie automatische Upgrades aktivieren (Vorschau).

nomos-Befehlszeilentool verwenden

Das nomos-Befehlszeilentool bietet wichtige Informationen zu Ihrer Config Sync-Einrichtung. Die in den folgenden Abschnitten beschriebenen Befehle sind besonders hilfreich, wenn Sie versuchen, die Ursache Ihres Problems zu ermitteln, oder wenn Sie mit Cloud Customer Care arbeiten müssen.

Config Sync-Status ansehen

Der Befehl nomos status bietet Ihnen zusammengefasste Daten und aufgetretene Fehler. So können Sie verstehen, welches Problem Ihre Config Sync-Installation hat. Die folgenden Informationen sind mit nomos status verfügbar:

  • Installationsstatus pro Cluster
  • Synchronisierungsfehler (sowohl Lesen von Git-Werten als auch Ausgleichen von Änderungen)

Fehlerbericht erstellen

Wenn Sie ein Problem mit Config Sync haben, für das Sie die Unterstützung von Cloud Customer Care benötigen, können Sie dem Support mit dem nomos bugreport-Befehl wertvolle Debugging-Informationen bereitstellen.

Dieser Befehl generiert eine zeitgestempelte Zip-Datei mit Informationen zum Kubernetes-Cluster, der in Ihrem kubectl-Kontext festgelegt ist. Die Datei enthält auch Logs aus den Config Sync-Pods. Sie enthält keine Informationen aus den mit Config Sync synchronisierten Ressourcen.

Übersichts-Dashboard aufrufen

Im Config Sync-Dashboard erhalten Sie einen Überblick über den Status der von Config Sync verwalteten Pakete und den Status der Ressourcen in diesen Paketen. Mit diesem Dashboard können Sie sich einen schnellen Überblick über den Status Ihrer Config Sync-Installation verschaffen und nach Paketen mit Problemen suchen.

  • Rufen Sie in der Google Cloud Console die Seite Konfiguration im Abschnitt Features auf, um auf das Dashboard zuzugreifen:

    Zu „Config“

Monitoring und Loganalyse verwenden

Wenn Sie Config Sync überwachen und dessen Logs untersuchen, können Sie die Ursache von Programmfehlern ermitteln und unerwartetes Verhalten besser verstehen.

Informationen zu Config Sync-Messwerten

Verwenden Sie Config Sync-Messwerte, um einen Einblick in den Status von Config Sync zu erhalten.

RootSync- und RepoSync-Objekte überwachen

Wenn Sie Config Sync mithilfe der Google Cloud Console oder dem Google Cloud CLI installieren, erstellt Config Sync automatisch ein RootSync-Objekt für Sie. Wenn Sie Synchronisierung aus mehreren Repositories konfigurieren, können Sie RepoSync-Objekte erstellen, die Konfigurationsinformationen zu Ihren Namespace-Repositories enthalten.

Das Monitoring dieser Objekte kann wertvolle Informationen über den Status von Config Sync aufzeigen. Weitere Informationen finden Sie unter RootSync- und RepoSync-Objekte überwachen.

Service Level Indicators (SLIs) verwenden

Verwenden Sie Config Sync-SLIs, um Benachrichtigungen zu erhalten, wenn Config Sync nicht wie vorgesehen funktioniert.

Abfragelogs

Mit dem Log-Explorer können Sie Logdaten für Config Sync abrufen, ansehen und analysieren. Diese Logs können wertvolle Verlaufsdaten enthalten, die nicht von nomos bugreport erfasst werden, wenn die Operator- oder Reconciler-Pods neu gestartet werden. Beispiele für Abfragen, die Ihnen bei der Diagnose Ihres Problems helfen können, finden Sie unter Config Sync-Logs abfragen.

Ressourcen mit dem kubectl-Befehlszeilentool untersuchen

Config Sync besteht aus mehreren benutzerdefinierten Ressourcen, die Sie mit kubectl-Befehlen abfragen können. Mit diesen Befehlen können Sie den Status der einzelnen Config Sync-Objekte verstehen.

Sie sollten die folgenden Informationen zu den von Config Sync verwalteten Kubernetes-Ressourcen kennen:

  • config-management-system ist der Namespace, mit dem alle zentralen Systemkomponenten von Config Sync ausgeführt werden.
  • configmanagement.gke.io und configsync.gke.io sind die API-Gruppen, die wir für alle benutzerdefinierten Ressourcen verwenden.

Beispiele

In den folgenden Abschnitten wird gezeigt, wie Sie Config Sync mit kubectl-Befehlen untersuchen können.

Benutzerdefinierte Ressourcen auflisten

  • Mit dem folgenden Befehl können Sie eine vollständige Liste der benutzerdefinierten Ressourcen abrufen:

    kubectl api-resources | grep -E "configmanagement.gke.io|configsync.gke.io"
    
  • Einzelne benutzerdefinierte Ressourcen können mit dem folgenden Befehl verwendet werden:

    kubectl get RESOURCE -o yaml.
    

    Ersetzen Sie RESOURCE durch den Namen der Ressource, die Sie abfragen möchten.

    Mit der Ausgabe des folgenden Befehls können Sie beispielsweise den Status eines RootSync-Objekts prüfen:

    kubectl get rootsync -n config-management-system -o yaml
    

Token-Annotation eines Objekts prüfen

Möglicherweise möchten Sie wissen, wann ein verwaltetes Kubernetes-Objekt zuletzt von Config Sync aktualisiert wurde. Jedes verwaltete Objekt wird mit dem Hash des Git-Commits zum Zeitpunkt der letzten Änderung und dem Pfad zur Konfiguration annotiert, die die Änderung enthielt.

Führen Sie beispielsweise den folgenden Befehl aus, um die Annotation einer ClusterRoleBinding mit dem Namen namespace-readers abzurufen:

kubectl get clusterrolebinding namespace-readers

Die Ausgabe sieht in etwa so aus:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  annotations:
    configmanagement.gke.io/source-path: cluster/namespace-reader-clusterrolebinding.yaml
    configmanagement.gke.io/token: bbb6a1e2f3db692b17201da028daff0d38797771
  name: namespace-readers
...

Weitere Informationen finden Sie unter Labels und Annotationen.

Zusätzliche Dokumentation zur Fehlerbehebung lesen

Wenn weiterhin Probleme auftreten, können die folgenden Ressourcen hilfreich sein:

  • Wenn Sie eine Fehlermeldung erhalten haben, finden Sie in der Fehlerreferenz Tipps zum Beheben des Fehlers.

  • Überprüfen Sie, ob Ihr Problem durch ein bekanntes Problem verursacht wurde.

  • Wenn Sie Probleme in einem bestimmten Bereich haben, kann eine der gezielten Fehlerbehebungsanleitungen hilfreich sein, die im Abschnitt Fehlerbehebung nach Problemtyp des Inhaltsverzeichnisses aufgeführt sind.

Nächste Schritte