Config Sync-Status mit der gcloud CLI ansehen

Auf dieser Seite wird erläutert, wie Sie Config Sync mit Google Cloud CLI-Befehlen überwachen:

  • Verwenden Sie gcloud alpha anthos config sync repo, um den Status Ihrer Repositories in mehreren Clustern aufzulisten.

  • Verwenden Sie gcloud alpha anthos config sync resources, um die Ressourcen anzusehen, die von Config Sync verwaltet werden.

Ähnliche Informationen finden Sie auch im Config Sync-Dashboard.

Hinweise

Führen Sie die folgenden Schritte aus, bevor Sie die Befehle auf dieser Seite verwenden:

  1. Aktualisieren Sie die Google Cloud CLI-Komponenten:

    gcloud components update
    
  2. Registrieren Sie die Cluster, falls noch nicht geschehen. Wenn Sie Config Sync über die Google Cloud Console installiert und konfiguriert haben, können Sie diesen Schritt überspringen.

  3. Wenn Ihr Cluster kein GKE-Cluster ist, müssen die Plattformadministratoren Connect Gateway für den registrierten Cluster einrichten.

  4. Legen Sie Ihr Projekt fest:

    gcloud config set project PROJECT_ID
    

    Ersetzen Sie PROJECT_ID durch die Projekt-ID, in der Config Sync eingerichtet ist und ausgeführt wird.

Config Sync-Status in mehreren Clustern ansehen

Wenn Sie Config Sync auf mehreren registrierten Clustern in einem Projekt installieren und konfigurieren, können Sie mit gcloud alpha anthos config sync repo den Status des Repositorys auflisten, das zwischen Clustern synchronisiert wird, und Probleme mit Config Sync beheben.

Im Vergleich zu nomos status gruppiert gcloud alpha anthos config sync repo den Status nach Repository, während der Befehl nomos status den Status nach Cluster gruppiert.

Alle Repositories auflisten

Führen Sie den folgenden Befehl aus, um den Status aller Git-Repositories aufzulisten, die mit allen registrierten Clustern im aktuellen Projekt synchronisiert sind:

gcloud alpha anthos config sync repo list

Die Ausgabe sieht in etwa so aus:

┌─────────────────────────────────────────────────────────────────┬───────┬────────┬─────────┬───────┬─────────┬─────────────┐
│                       SOURCE                                    │ TOTAL │ SYNCED │ PENDING │ ERROR │ STALLED │ RECONCILING │
├─────────────────────────────────────────────────────────────────┼───────┼────────┼─────────┼───────┼─────────┼─────────────┤
│ https://source.developers.google.com/p/test/r/test//@main       │ 2     │ 2      │ 0       │ 0     │ 0       │ 0           │
│ https://source.developers.google.com/p/test/r/dev//@main        │ 2     │ 1      │ 0       │ 0     │ 1       │ 0           │
│ https://source.developers.google.com/p/test/r/staging//@main    │ 1     │ 0      │ 0       │ 1     │ 0       │ 0           │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘

Für jedes Repository können Sie den entsprechenden Status in allen Clustern sehen:

  • TOTAL ist die Anzahl der Cluster, mit denen das Repository synchronisiert wird.
  • SYNCED ist die Anzahl der Cluster, bei denen dieses Repository erfolgreich synchronisiert wurde.
  • PENDING ist die Anzahl der Cluster, bei denen die Synchronisierung dieses Repositorys aussteht.
  • ERROR ist die Anzahl der Cluster, in denen in diesem Repository während der Synchronisierung ein Fehler auftritt.
  • STALLED ist die Anzahl der Cluster, bei denen das Deployment, das dieses Repository synchronisiert, angehalten wird.
  • RECONCILING ist die Anzahl der Cluster, bei denen das Deployment, das dieses Repository synchronisiert, abgeglichen wird.

Repositories mit einem bestimmten Status auflisten

Sie können die Repositories auch mit einem bestimmten Status auflisten, indem Sie das Flag --status verwenden. Die unterstützten Werte sind synced, pending, error, stalled und reconciling.

Listen Sie beispielsweise die Repositories mit Fehlern auf, indem Sie den folgenden Befehl ausführen:

gcloud alpha anthos config sync repo list --status=error

Die Ausgabe sieht in etwa so aus:

┌─────────────────────────────────────────────────────────────────┬───────┬────────┬─────────┬───────┬─────────┬─────────────┐
│                       SOURCE                                    │ TOTAL │ SYNCED │ PENDING │ ERROR │ STALLED │ RECONCILING │
├─────────────────────────────────────────────────────────────────┼───────┼────────┼─────────┼───────┼─────────┼─────────────┤
│ https://source.developers.google.com/p/test/r/staging//@main    │ 1     │ 0      │ 0       │ 1     │ 0       │ 0           │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘

Repository beschreiben

Rufen Sie mit dem Befehl "describe" Details zum Status Ihres Repositorys auf:

   gcloud alpha anthos config sync repo describe \
     --source URL

Ersetzen Sie URL durch eine URL aus der Ausgabe des im vorherigen Abschnitt beschriebenen Befehls repo list.

Sie können auch --namespace und --name verwenden, um das Repository anzugeben, das Sie beschreiben möchten.

   gcloud alpha anthos config sync repo describe \
     --sync-namespace config-management-system --sync-name root-sync

Standardmäßig gibt der Befehl den Repository-Status sowie alle verwalteten Ressourcen aus, die angewendet wurden, aber der Abgleich fehlgeschlagen ist. Beispiel:

   [
     {
       "clusters": [
         "cluster-1",
         "cluster-2",
       ],
       "commit": "32293c90a63efba3121c7648048fcd3e85043a34",
       "errors": [],
       "source": "https://source.developers.google.com/p/test/r/test//@main",
       "status": "SYNCED"
     }
   ]

Sie können auch das Flag --managed-resources verwenden, um die verwalteten Ressourcen zu steuern, die Sie aufrufen möchten. Die unterstützten Werte sind all, current, inprogress, notfound, failed (Standardeinstellung) oder unknown. Mit dem folgenden Befehl können Sie alle verwalteten Ressourcen aufrufen:

   gcloud alpha anthos config sync repo describe \
     --namespace config-management-system --name root-sync \
     --managed-resources all

Die Ausgabe sieht in etwa so aus:

   [
     {
       "clusters": [
         "cluster-1",
         "cluster-2",
       ],
       "commit": "32293c90a63efba3121c7648048fcd3e85043a34",
       "errors": [],
       "source": "https://source.developers.google.com/p/test/r/test//@main",
       "status": "SYNCED"
     }
   ]
   ┌────────────────────────────────────────────────────────────────┐
   │                       managed_resources                        │
   ├───────┬───────────┬─────────┬───────────┬─────────┬────────────┤
   │ GROUP │    KIND   │   NAME  │ NAMESPACE │  STATUS │ CONDITIONS │
   ├───────┼───────────┼─────────┼───────────┼─────────┼────────────┤
   │       │ Namespace │ default │           │ Current │            │
   │       │ ConfigMap │ foo     │ default   │ Current │            │
   └───────┴───────────┴─────────┴───────────┴─────────┴────────────┘

Von Config Sync verwaltete Ressourcen ansehen

Sie können gcloud alpha anthos config sync resources verwenden, um die verwalteten Ressourcen nach Cluster, Gruppe, Art, Namespace, Name, Status oder einer Kombination dieser Attribute zu filtern.

Alle verwalteten Ressourcen auflisten

   gcloud alpha anthos config sync resources list

Dieser Befehl listet alle verwalteten Ressourcen auf, die mit allen registrierten Clustern im aktuellen Projekt synchronisiert werden. Die Ausgabe sieht in etwa so aus:

┌───────────────────┬───────────────────────────┬──────────────────────────┬──────────────────┬───────────────────────────────────────────┬─────────┬───────────┐
│    CLUSTER_NAME   │           GROUP           │           KIND           │    NAMESPACE     │                    NAME                   │  STATUS │ CONDITION │
├───────────────────┼───────────────────────────┼──────────────────────────┼──────────────────┼───────────────────────────────────────────┼─────────┼───────────┤
│ cluster-1         │                           │ Namespace                │                  │ default                                   │ Current │           │
│ cluster-1         │ rbac.authorization.k8s.io │ RoleBinding              │ default          │ viewers                                   │ Current │           │
│ cluster-2         │                           │ Namespace                │                  │ gamestore                                 │ Current │           │
│ cluster-2         │ rbac.authorization.k8s.io │ RoleBinding              │ gamestore        │ gamestore-admin                           │ Current │           │
│ cluster-2         │ rbac.authorization.k8s.io │ RoleBinding              │ gamestore        │ gamestore-webstore-admin                  │ Current │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

Jede Zeile der Ausgabe beschreibt die verwaltete Ressource und ihren entsprechenden Status:

  • CLUSTER_NAME ist der Name des Clusters, aus dem die verwaltete Ressource stammt.
  • GROUP ist das Gruppenattribut der verwalteten Ressource.
  • KIND ist das Typattribut der verwalteten Ressource.
  • NAMESPACE ist der Namespace der verwalteten Ressource.
  • NAME ist der Name der verwalteten Ressource.
  • STATUS ist der Abgleichsstatus der verwalteten Ressource. Eine Liste der möglichen Status finden Sie in der Kubernetes-Sig-Dokumentation.
  • CONDITION ist die Nachricht, die den Status der verwalteten Ressource erläutert.

Verwaltete Ressource aus einem einzelnen Cluster auflisten

Sie können verwaltete Ressourcen pro Cluster mithilfe eines gcloud-Befehls oder in der Google Cloud Console anzeigen lassen.

Mit dem Flag --cluster können Sie die verwalteten Ressourcen aus einem bestimmten Cluster auflisten. Listen Sie beispielsweise die verwalteten Ressourcen aus dem Cluster mit dem Namen cluster-1 mit dem folgenden Befehl auf:

gcloud alpha anthos config sync resources list --cluster=cluster-1

Die Ausgabe sieht in etwa so aus:

┌───────────────────┬───────────────────────────┬──────────────────────────┬──────────────────┬───────────────────────────────────────────┬─────────┬───────────┐
│    CLUSTER_NAME   │           GROUP           │           KIND           │    NAMESPACE     │                    NAME                   │  STATUS │ CONDITION │
├───────────────────┼───────────────────────────┼──────────────────────────┼──────────────────┼───────────────────────────────────────────┼─────────┼───────────┤
│ cluster-1         │                           │ Namespace                │                  │ default                                   │ Current │           │
│ cluster-1         │ rbac.authorization.k8s.io │ RoleBinding              │ default          │ viewers                                   │ Current │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

Nächste Schritte