Introduzione alla risoluzione dei problemi

Se riscontri problemi con Config Sync, questa pagina illustra alcuni strumenti e procedure comuni che possono aiutarti a identificare e risolvere i problemi riscontrati.

Esegui l'upgrade a una versione supportata

Valuta la possibilità di eseguire l'upgrade di Config Sync a una versione supportata. L'upgrade spesso risolve i problemi comuni e ti consente di accedere alle funzionalità più attuali. Per assicurarti di utilizzare sempre una versione supportata, puoi abilitare l'upgrade automatico (anteprima).

Usa lo strumento a riga di comando nomos

Lo strumento a riga di comando nomos fornisce insight essenziali sulla configurazione di Config Sync. I comandi descritti nelle sezioni seguenti sono particolarmente utili quando cerchi di determinare l'origine del problema o quando devi collaborare con l'assistenza clienti Google Cloud.

Visualizza lo stato di Config Sync

Il comando nomos status fornisce dati aggregati ed errori per aiutarti a capire cosa sta succedendo con l'installazione di Config Sync. Le seguenti informazioni sono disponibili con nomos status:

  • Stato di installazione per cluster
  • Errori di sincronizzazione (sia di lettura da Git sia di riconciliazione delle modifiche)

Crea una segnalazione di bug

Se riscontri un problema con Config Sync che richiede l'intervento dell'assistenza clienti Google Cloud, puoi fornire preziose informazioni di debug utilizzando il comando nomos bugreport.

Questo comando genera un file ZIP con timestamp con informazioni sul cluster Kubernetes impostato nel tuo contesto kubectl. Il file contiene anche i log dei pod di Config Sync. Non contiene informazioni sulle risorse sincronizzate con Config Sync.

Visualizza la dashboard della panoramica

La dashboard di Config Sync fornisce una panoramica dello stato dei pacchetti gestiti da Config Sync e dello stato delle risorse in questi pacchetti. Esplorare questa dashboard può aiutarti a ottenere una rapida panoramica dello stato dell'installazione di Config Sync e a individuare i pacchetti che presentano problemi.

  • Per accedere alla dashboard, nella console Google Cloud vai alla pagina Configurazione nella sezione Funzionalità:

    Vai a Configurazione

Utilizza il monitoraggio e l'analisi dei log

Il monitoraggio di Config Sync e l'esplorazione dei relativi log possono aiutarti a determinare l'origine dei bug e a comprendere meglio eventuali comportamenti imprevisti.

Comprendi le metriche di Config Sync

Utilizza le metriche di Config Sync per ottenere visibilità sull'integrità di Config Sync.

Monitoraggio di oggetti RootSync e RepoSync

Quando installi Config Sync utilizzando la console Google Cloud o Google Cloud CLI, Config Sync crea automaticamente un oggetto RootSync per te. Quando configuri la sincronizzazione da più repository, puoi creare oggetti RepoSync contenenti informazioni di configurazione sui repository dello spazio dei nomi.

Il monitoraggio di questi oggetti può rivelare informazioni preziose sullo stato di Config Sync. Per ulteriori informazioni, consulta Monitorare gli oggetti RootSync e RepoSync.

Utilizzare gli indicatori del livello del servizio (SLI)

Per ricevere notifiche quando Config Sync non funziona come previsto, utilizza gli SLI di Config Sync.

Log delle query

Puoi utilizzare Esplora log per recuperare, visualizzare e analizzare i dati dei log per Config Sync. Questi log possono contenere dati storici importanti che non vengono acquisiti da nomos bugreport quando vengono riavviati i pod dell'operatore o del riconciliatore. Per esempi di query che potrebbero aiutarti a diagnosticare il tuo problema, consulta Log di Query Config Sync.

Esamina le risorse con lo strumento a riga di comando kubectl

Config Sync è composto da più risorse personalizzate su cui puoi eseguire query utilizzando i comandi kubectl. Questi comandi aiutano a comprendere lo stato di ciascuno degli oggetti di Config Sync.

Dovresti conoscere le seguenti informazioni sulle risorse Kubernetes gestite da Config Sync:

  • config-management-system è lo spazio dei nomi che utilizziamo per eseguire tutti i componenti di sistema principali di Config Sync.
  • configmanagement.gke.io e configsync.gke.io sono i gruppi API che utilizziamo per tutte le risorse personalizzate.

Esempi

Le sezioni seguenti mostrano come utilizzare i comandi kubectl per esaminare Config Sync.

Elenca risorse personalizzate

  • Puoi ottenere un elenco completo delle risorse personalizzate eseguendo questo comando:

    kubectl api-resources | grep -E "configmanagement.gke.io|configsync.gke.io"
    
  • Puoi utilizzare singole risorse personalizzate eseguendo questo comando:

    kubectl get RESOURCE -o yaml.
    

    Sostituisci RESOURCE con il nome della risorsa su cui vuoi eseguire la query.

    Ad esempio, l'output del comando seguente consente di verificare lo stato di un oggetto RootSync:

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

Controlla l'annotazione del token di un oggetto

Potresti voler sapere quando un oggetto Kubernetes gestito è stato aggiornato l'ultima volta da Config Sync. Ogni oggetto gestito è annotato con l'hash del commit Git quando è stato modificato l'ultima volta e con il percorso della configurazione che conteneva la modifica.

Ad esempio, per ottenere l'annotazione di un ClusterRoleBinding denominato namespace-readers, esegui questo comando:

kubectl get clusterrolebinding namespace-readers

L'output è simile al seguente:

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
...

Per ulteriori informazioni, consulta etichette e annotazioni.

Leggi la documentazione aggiuntiva per la risoluzione dei problemi

Se continui a riscontrare problemi, le seguenti risorse potrebbero essere utili:

  • Se hai ricevuto un messaggio di errore, consulta la pagina di riferimento degli errori per consigli su come risolvere l'errore.

  • Verifica se il problema che stai riscontrando è causato da un problema noto.

  • Se hai difficoltà con un'area specifica, una delle guide alla risoluzione dei problemi mirate elencate nella sezione Risolvere i problemi in base al tipo di problema del sommario potrebbe essere di aiuto.

Passaggi successivi