Config Sync-Status mit der gcloud CLI aufrufen

Auf dieser Seite wird erläutert, wie Sie Config Sync mit Befehlen der Google Cloud CLI ü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 von Config Sync verwalteten Ressourcen aufzurufen.

Sie können ähnliche Informationen auch im Config Sync-Dashboard aufrufen.

Vorbereitung

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 Ihre 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. Projekt festlegen

    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 zu synchronisierenden Repositories auflisten 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.

Listen Sie alle Repositories auf

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

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, in denen dieses Repository erfolgreich synchronisiert wird.
  • PENDING ist die Anzahl der Cluster, in denen dieses Repository synchronisiert werden soll.
  • ERROR ist die Anzahl der Cluster, in denen dieses Repository während der Synchronisierung einen Fehler feststellt.
  • STALLED ist die Anzahl der Cluster, in denen das Deployment, das dieses Repository synchronisiert, angehalten wird.
  • RECONCILING ist die Anzahl der Cluster, in denen das Deployment, das dieses Repository synchronisiert, abgeglichen wird.

Repositories mit einem bestimmten Status auflisten

Mit dem Flag --status können Sie auch die Repositories mit einem bestimmten Status auflisten. 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

Verwenden Sie den Befehl "describe", um Details zum Status Ihres Repositorys anzuzeigen:

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

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

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 werden, aber nicht abgeglichen wurden. 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

Mit gcloud alpha anthos config sync resources können Sie die verwalteten Ressourcen nach Cluster, Gruppe, Art, Namespace, Name, Status oder einer Kombination dieser Attribute 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 │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

In jeder Ausgabezeile werden die verwaltete Ressource und der zugehörige Status beschrieben:

  • 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 Abgleichstatus 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