Visualizza lo stato di Config Sync con gcloud CLI

Questa pagina spiega come utilizzare i comandi Google Cloud CLI per monitorare Config Sync:

  • Usa gcloud alpha anthos config sync repo per elencare lo stato del tuo in più cluster.

  • Utilizza gcloud alpha anthos config sync resources per visualizzare le risorse che Config Sync gestisce.

Puoi anche visualizzare informazioni simili nella Dashboard di Config Sync.

Prima di iniziare

Prima di utilizzare i comandi in questa pagina, completa i seguenti passaggi:

  1. Aggiorna i componenti di Google Cloud CLI:

    gcloud components update
    
  2. Registra i cluster se non l'hai fatto. Se hai installato e configurato Config Sync tramite nella console Google Cloud, puoi saltare questo passaggio.

  3. Se il cluster non è un cluster GKE, gli amministratori della piattaforma devi configurare Connect Gateway per il cluster registrato.

  4. Imposta il progetto:

    gcloud config set project PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID progetto in cui Config Sync è configurato e in esecuzione.

Visualizza lo stato di Config Sync in più cluster

Se installi e configuri Config Sync su più cluster registrati in un progetto, puoi usare gcloud alpha anthos config sync repo per elencare lo stato del repository da sincronizzare tra i cluster risolvere i problemi di Config Sync.

Rispetto a nomos status, stato dei gruppi gcloud alpha anthos config sync repo per repository, mentre il comando nomos status raggruppa lo stato per cluster.

Elenca tutti i repository

per elencare tutti gli stati dei repository Git sincronizzati con qualsiasi cluster registrati nel progetto corrente, esegui questo comando:

gcloud alpha anthos config sync repo list

L'output è simile al seguente:

┌─────────────────────────────────────────────────────────────────┬───────┬────────┬─────────┬───────┬─────────┬─────────────┐
│                       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           │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘

Per ogni repository, puoi vedere lo stato corrispondente nei vari cluster:

  • TOTAL è il numero di cluster in cui è sincronizzato il repository.
  • SYNCED è il numero di cluster in cui è sincronizzato questo repository correttamente.
  • PENDING è il numero di cluster in cui questo repository è in attesa di sincronizzazione.
  • ERROR è il numero di cluster in cui questo repository rileva durante la sincronizzazione.
  • STALLED è il numero di cluster in cui il deployment che lo sincronizza il repository è bloccato.
  • RECONCILING è il numero di cluster in cui il deployment che lo sincronizza è in fase di riconciliazione.

Elenca i repository con uno stato specifico

Puoi anche elencare i repository con uno stato specifico utilizzando il flag --status. I valori supportati sono synced, pending, error, stalled e reconciling.

Ad esempio, elenca i repository con errori eseguendo questo :

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

L'output è simile al seguente:

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

Descrivi un repository

Utilizza il comando describe per visualizzare i dettagli sullo stato del repository:

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

Sostituisci URL con un URL dell'output del repo list descritto nella sezione precedente.

Puoi anche utilizzare --namespace e --name per specificare il repository desiderato da descrivere.

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

Per impostazione predefinita, il comando visualizza lo stato del repository e le eventuali e risorse applicate ma la riconciliazione non è riuscita. Ad esempio:

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

Puoi anche utilizzare il flag --managed-resources per controllare le risorse gestite che vuoi visualizzare. I valori supportati sono all, current, inprogress, notfound, failed (valore predefinito) o unknown. Puoi utilizzare il comando seguente per visualizzare tutte le risorse gestite:

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

L'output è simile al seguente:

   [
     {
       "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 │            │
   └───────┴───────────┴─────────┴───────────┴─────────┴────────────┘

Visualizza le risorse gestite di Config Sync

Puoi utilizzare gcloud alpha anthos config sync resources per filtrare i prodotti gestiti le risorse per cluster, gruppo, tipo, spazio dei nomi, nome, stato o una combinazione di questi attributi.

Elenco di tutte le risorse gestite

   gcloud alpha anthos config sync resources list

Questo comando elenca tutte le risorse gestite sincronizzati con qualsiasi cluster registrato nel progetto corrente. L'output è simile al seguente:

┌───────────────────┬───────────────────────────┬──────────────────────────┬──────────────────┬───────────────────────────────────────────┬─────────┬───────────┐
│    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 │           │
└───────────────────┴───────────────────────────┴──────────────────────────┴──────────────────┴───────────────────────────────────────────┴─────────┴───────────┘

Ogni riga dell'output descrive la risorsa gestita e la relativa stato:

  • CLUSTER_NAME è il nome del cluster da cui proviene la risorsa gestita.
  • GROUP è l'attributo di gruppo della risorsa gestita.
  • KIND è l'attributo kind della risorsa gestita.
  • NAMESPACE è lo spazio dei nomi della risorsa gestita.
  • NAME è il nome della risorsa gestita.
  • STATUS è lo stato di riconciliazione della risorsa gestita. Puoi visualizzare l'elenco dei possibili stati nel Documentazione di Kubernetes Sig.
  • CONDITION è il messaggio che spiega lo stato della risorsa gestita.

Elenco delle risorse gestite da un singolo cluster

Puoi visualizzare le risorse gestite per cluster utilizzando un comando gcloud oppure nella console Google Cloud.

Puoi elencare le risorse gestite da un cluster specifico utilizzando il flag --cluster. Ad esempio, elenca le risorse gestite del cluster con assegna il nome cluster-1 con il seguente comando:

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

L'output è simile al seguente:

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

Passaggi successivi