La pagina descrive come inviare le metriche da Config Sync a Cloud Monitoring.
Config Sync utilizza OpenTelemetry per creare, registrare ed esportare le relative metriche. Questa pagina spiega come configurare le metriche di Cloud Monitoring. Per altri modi di esportare le metriche, consulta Monitorare Config Sync con Prometheus o Monitorare Config Sync con il monitoraggio personalizzato.
La configurazione delle metriche di Cloud Monitoring richiede
l'autorizzazione iam.serviceAccounts.setIamPolicy
per il progetto.
Per esempi su come visualizzare queste metriche, consulta Esempi di procedure di debug.
Puoi visualizzare queste metriche con Metrics Explorer o utilizzando l'API Cloud Monitoring.
Concedi l'autorizzazione di scrittura delle metriche per Cloud Monitoring
Per configurare Cloud Monitoring per Config Sync, devi concedere l'autorizzazione per la scrittura delle metriche a un account di servizio nel progetto. L'autorizzazione necessaria dipende dall'abilitazione o meno di Workload Identity.
Configura Cloud Monitoring con Workload Identity
Se Workload Identity è abilitato, consenti a Config Sync di inviare le metriche eseguendo questo comando:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member="serviceAccount:PROJECT_ID.svc.id.goog[config-management-monitoring/default]"
Sostituisci PROJECT_ID
con l'ID progetto del cluster.
Configura Cloud Monitoring senza Workload Identity
Se Workload Identity non è abilitato e Config Sync è in esecuzione in un ambiente Google Cloud, puoi utilizzare l'account di servizio predefinito di Compute Engine. Se le concessioni automatiche del ruolo Editor (roles/editor
) sono disabilitate, concedi all'account di servizio il ruolo IAM Writer metriche Monitoring (roles/monitoring.metricWriter
) eseguendo questo comando:
gcloud projects add-iam-policy-binding PROJECT_ID \
--role=roles/monitoring.metricWriter \
--member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.PROJECT_NUMBER
: il numero del progetto.
Elenco predefinito di metriche in Cloud Monitoring
Nome | Tipo |
---|---|
api_duration_seconds | Distribuzione |
apply_duration_seconds | Distribuzione |
apply_operations_total | Conteggio |
declared_resources | Ultimo valore |
internal_errors_total | Conteggio |
last_sync_timestamp | Ultimo valore |
pipeline_error_observed | Ultimo valore |
reconciler_errors | Ultimo valore |
resource_fights_total | Conteggio |
reconcile_duration_seconds | Distribuzione |
resource_group_total | Ultimo valore |
resource_count | Ultimo valore |
ready_resource_count | Ultimo valore |
resource_ns_count | Ultimo valore |
cluster_scoped_resource_count | Ultimo valore |
kcc_resource_count | Gauge |
Per modificare la lista consentita delle metriche in Cloud Monitoring, segui le istruzioni per applicare patch al deployment del raccoglitore Otel con ConfigMap.
Esempi di procedure di debug per Cloud Monitoring
I seguenti esempi di Cloud Monitoring illustrano alcuni pattern per l'utilizzo delle metriche OpenCensus per rilevare e diagnosticare problemi relativi a Config Sync quando utilizzi le API RootSync e RepoSync.
Formato metrica
In Cloud Monitoring, le metriche hanno il formato seguente:
custom.googleapis.com/opencensus/config_sync/METRIC
.
Questo nome di metrica è composto dai seguenti componenti:
custom.googleapis.com
: tutte le metriche personalizzate hanno questo prefissoopencensus
: questo prefisso è stato aggiunto perché Config Sync utilizza la libreria OpenCensusconfig_sync/
: le metriche esportate da Config Sync in Cloud Monitoring hanno questo prefissoMETRIC
: il nome della metrica su cui eseguire la query
Metriche di query per riconciliatore
Gli oggetti RootSync e RepoSync dispongono di metriche di alto livello che forniscono informazioni utili sul funzionamento di Config Sync sul cluster. Quasi tutte le metriche sono contrassegnate con il nome del riconciliatore, quindi puoi vedere se si sono verificati errori e impostare i relativi avvisi in Cloud Monitoring.
Un riconciliatore è un pod di cui viene eseguito il deployment come deployment. Sincronizza i manifest da una
fonte attendibile in un cluster. Quando crei un oggetto RootSync, Config Sync crea un riconciliatore denominato root-reconciler-ROOT_SYNC_NAME
o root-reconciler
se il nome di RootSync è root-sync
. Quando crei un
oggetto RepoSync, Config Sync crea un riconciliatore denominato
ns-reconciler-NAMESPACE-REPO_SYNC_NAME-REPO_SYNC_NAME_LENGTH
o ns-reconciler-NAMESPACE
se il nome di RepoSync è
repo-sync
, dove NAMESPACE
è lo spazio dei nomi in cui
hai creato l'oggetto RepoSync.
Il seguente diagramma mostra come funzionano i pod del riconciliatore quando la fonte attendibile è un repository Git:
Ad esempio, per filtrare in base al nome del riconciliatore quando utilizzi Cloud Monitoring, completa le seguenti attività:
Nella console Google Cloud, vai a Monitoring:
Nel riquadro di navigazione di Monitoring, fai clic su leaderboard Metrics Explorer.
Nell'elenco a discesa Seleziona una metrica, aggiungi
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Nell'elenco a discesa Filtro, seleziona Riconciliazione. Viene visualizzata una casella dei campi del filtro.
Nella casella dei campi del filtro, seleziona = nel primo campo e il nome del riconciliatore (ad esempio
root-reconciler
) nel secondo.Fai clic su Applica.
Ora puoi visualizzare le metriche per gli oggetti RootSync.
Per ulteriori istruzioni su come filtrare in base a un tipo di dati specifico, consulta Filtro dei dati.
Esegui query sulle operazioni di Config Sync per componente e stato
Dopo aver abilitato le API RootSync e RepoSync, l'importazione e l'origine da una fonte attendibile e la sincronizzazione con un cluster vengono gestite dai riconciliatori.
La metrica reconciler_errors
è etichettata dal componente, così puoi vedere dove si sono verificati
gli errori.
Ad esempio, per filtrare per componente quando utilizzi Cloud Monitoring, completa le seguenti attività:
Nella console Google Cloud, vai a Monitoring:
Nel riquadro di navigazione di Monitoring, fai clic su leaderboard Metrics Explorer.
Nell'elenco a discesa Seleziona una metrica, aggiungi
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Nell'elenco a discesa Filtro, seleziona componente. Viene visualizzata una casella dei campi del filtro.
Nella casella dei campi del filtro, seleziona = nella prima casella e origine nella seconda.
Fai clic su Applica.
Ora puoi visualizzare gli errori che si sono verificati durante l'acquisizione da una fonte di riferimento per i tuoi riconciliatori.
Puoi anche controllare le metriche relative ai processi di origine e di sincronizzazione in modo autonomo eseguendo query sulle seguenti metriche e filtrando in base al tag status
:
custom.googleapis.com/opencensus/config_sync/parser_duration_seconds
custom.googleapis.com/opencensus/config_sync/apply_duration_seconds
custom.googleapis.com/opencensus/config_sync/remediate_duration_seconds