La pagina descrive come inviare le metriche da Config Sync a Cloud Monitoring.
Config Sync utilizza OpenTelemetry per creare, registrare ed esportare le sue metriche. Questa pagina spiega come configurare le metriche di Cloud Monitoring. Per altri modi per esportare le metriche, consulta Monitora Config Sync con Prometheus o Monitora Config Sync con il monitoraggio personalizzato.
La configurazione delle metriche di Cloud Monitoring richiede l'autorizzazioneiam.serviceAccounts.setIamPolicy
per il progetto.
Per esempi su come visualizzare queste metriche, consulta
Procedure di debug di esempio.
Puoi visualizzare queste metriche con
Metrics Explorer o con
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 di scrittura delle metriche a un account di servizio nel tuo progetto. L'autorizzazione necessaria dipende dall'abilitazione di Workload Identity Federation for GKE.
Configurare il monitoraggio di Cloud con Workload Identity Federation per GKE
Se Workload Identity Federation for GKE è attivata, 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 del progetto del cluster.
Configurare il monitoraggio di Cloud senza la federazione delle identità per i carichi di lavoro per GKE
Se la federazione delle identità per i carichi di lavoro per GKE non è abilitata e Config Sync è in esecuzione in un ambiente Google Cloud, puoi utilizzare l'account di servizio predefinito di Compute Engine. Se la tua organizzazione applica il
iam.automaticIamGrantsForDefaultServiceAccounts
vincolo dei criteri dell'organizzazione,
a questo account di servizio potrebbe non essere concesso automaticamente il ruolo Editor
(roles/editor
) nel progetto. Devi concedere il ruolo IAM Writer di metriche di monitoraggio (roles/monitoring.metricWriter
) sul progetto all'account di servizio predefinito di Compute Engine eseguendo il seguente 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 delle 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 | Misuratore |
Per modificare la lista consentita delle metriche in Cloud Monitoring, segui le istruzioni per eseguire la patch del deployment del collector 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 i problemi relativi a Config Sync quando utilizzi le API RootSync e RepoSync.
Formato della metrica
In Cloud Monitoring, le metriche hanno il seguente formato:
custom.googleapis.com/opencensus/config_sync/METRIC
.
Questo nome metrica è composto dai seguenti componenti:
custom.googleapis.com
: tutte le metriche personalizzate hanno questo prefissoopencensus
: questo prefisso viene 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 per cui vuoi eseguire una query
Query sulle metriche per riconciliatore
Gli oggetti RootSync e RepoSync sono dotati di metriche di alto livello che forniscono informazioni utili sul funzionamento di Config Sync nel cluster. Quasi tutte le metriche sono taggate in base al nome del riconciliatore, quindi puoi vedere se si sono verificati errori e puoi configurare avvisi in Cloud Monitoring.
Un riconciliatore è un pod di cui viene eseguito il deployment come deployment. Sincronizza i manifest da una
fonte attendibile a 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 di riconciliazione quando la fonte di verità è 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 Monitoraggio:
Nel riquadro di navigazione Monitoraggio, fai clic su leaderboard Esplora metriche.
Nell'elenco a discesa Seleziona una metrica, aggiungi:
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Nell'elenco a discesa Filtro, seleziona reconciler. Viene visualizzata una casella dei campi di filtro.
Nella casella dei campi di 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 i tuoi oggetti RootSync.
Per ulteriori istruzioni su come filtrare i dati in base a un tipo di dati specifico, consulta Filtrare i dati.
Esegui query sulle operazioni di Config Sync per componente e stato
Dopo aver attivato 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 in base al componente, in modo da poter vedere dove si sono verificati eventuali errori.
Ad esempio, per filtrare per componente quando utilizzi Cloud Monitoring, compila le seguenti attività:
Nella console Google Cloud, vai a Monitoraggio:
Nel riquadro di navigazione Monitoraggio, fai clic su leaderboard Esplora metriche.
Nell'elenco a discesa Seleziona una metrica, aggiungi
custom.googleapis.com/opencensus/config_sync/reconciler_errors
.Nell'elenco a discesa Filtro, seleziona component. Viene visualizzata una casella dei campi di filtro.
Nella casella dei campi di filtro, seleziona = nella prima casella e source nella seconda.
Fai clic su Applica.
Ora puoi vedere gli errori che si sono verificati durante l'estrazione dei dati da una fonte attendibile per i tuoi riconciliatori.
Puoi anche controllare le metriche relative alle procedure di origine e sincronizzazione stesse 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