Questa pagina spiega come utilizzare i comandi dellGoogle Cloud CLI per monitorare Config Sync:
Utilizza
gcloud alpha anthos config sync repo
per elencare lo stato dei tuoi repository su più cluster.Utilizza
gcloud alpha anthos config sync resources
per visualizzare le risorse gestite da Config Sync.
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:
Aggiorna i componenti di Google Cloud CLI:
gcloud components update
Registra i tuoi cluster se non l'hai ancora fatto. Se hai installato e configurato Config Sync tramite la console Google Cloud, puoi saltare questo passaggio.
Se il tuo cluster non è un cluster GKE, gli amministratori della piattaforma devono configurare Connect Gateway per il cluster registrato.
Configura il progetto:
gcloud config set project PROJECT_ID
Sostituisci
PROJECT_ID
con l'ID progetto in cui è configurata e in esecuzione Config Sync.
Visualizza lo stato di Config Sync in più cluster
Se installi e configuri Config Sync su più cluster registrati
in un progetto, puoi utilizzare gcloud alpha anthos config sync repo
per elencare lo stato del repository in fase di sincronizzazione tra i cluster e risolvere i problemi relativi a Config Sync.
Rispetto a nomos status
, gcloud alpha anthos config sync repo
raggruppa lo stato per repository, mentre il comando nomos status
raggruppa lo stato per cluster.
Elenca tutti i repository
Per elencare lo stato di tutti i repository Git sincronizzati con qualsiasi cluster registrato nel progetto corrente, esegui il seguente 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 cluster:
TOTAL
è il numero di cluster con cui è sincronizzato il repository.SYNCED
è il numero di cluster in cui questo repository è sincronizzato correttamente.PENDING
è il numero di cluster in cui la sincronizzazione di questo repository è in attesa.ERROR
è il numero di cluster in cui questo repository riscontra un errore durante la sincronizzazione.STALLED
è il numero di cluster in cui il deployment che sincronizza questo repository è in stallo.RECONCILING
è il numero di cluster in cui viene eseguita la riconciliazione del deployment che sincronizza questo repository.
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 il seguente comando:
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 │
└─────────────────────────────────────────────────────────────────┴───────┴────────┴─────────┴───────┴─────────┴─────────────┘
Descrivere un repository
Utilizza il comando describe per visualizzare i dettagli sullo stato del tuo repository:
gcloud alpha anthos config sync repo describe \
--source URL
Sostituisci URL
con un URL dall'output del comando repo list
descritto nella sezione precedente.
Puoi anche utilizzare --namespace
e --name
per specificare il repository da descrivere.
gcloud alpha anthos config sync repo describe \
--sync-namespace config-management-system --sync-name root-sync
Per impostazione predefinita, il comando stampa lo stato del repository, nonché eventuali risorse gestite applicate, ma la cui 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
(il valore predefinito) o unknown
.
Puoi utilizzare il seguente comando 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 │ │
└───────┴───────────┴─────────┴───────────┴─────────┴────────────┘
Visualizzare le risorse gestite da Config Sync
Puoi utilizzare gcloud alpha anthos config sync resources
per filtrare le risorse gestite per cluster, gruppo, tipo, spazio dei nomi, nome, stato o una combinazione di questi attributi.
Elenca tutte le risorse gestite
gcloud alpha anthos config sync resources list
Questo comando elenca tutte le risorse gestite sincronizzate con eventuali cluster registrati 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 il relativo 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 della riconciliazione della risorsa gestita. Puoi trovare l'elenco dei possibili stati nella documentazione di Kubernetes Sig.CONDITION
è il messaggio che spiega lo stato della risorsa gestita.
Elenca la risorsa gestita da un singolo cluster
Puoi visualizzare le risorse gestite per cluster utilizzando un comando gcloud
o visualizzandole 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 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
- Scopri come utilizzare lo strumento a riga di comando nomos per monitorare Config Sync.
- Scopri come monitorare Config Sync con le metriche.