La pagina descrive le metriche OpenTelemetry disponibili per monitorare le risorse Config Sync.
Config Sync utilizza OpenCensus per creare e registrare le metriche e OpenTelemetry per esportarle in Prometheus e Cloud Monitoring. Puoi esportare le metriche OpenTelemetry in un altro sistema di monitoraggio. Le seguenti guide spiegano come esportare le metriche:
Metriche OpenTelemetry
Config Sync e Resource Group Controller raccolgono le seguenti metriche con OpenCensus e renderle disponibili tramite Raccoglitore OpenTelemetry . La colonna Tag elenca le specifiche Config Sync tag applicabili a ciascun componente o una metrica di valutazione. Le metriche con tag rappresentano più misurazioni, una per ciascuna di valori di tag.
Metriche di Config Sync
Nome | Tipo | Tag | Descrizione |
---|---|---|---|
api_duration_seconds | Distribuzione | operazione, stato | La distribuzione della latenza delle chiamate al server API. |
apply_duration_seconds | Distribuzione | stato | La distribuzione della latenza dell'applicazione delle risorse dichiarate dalla sorgente attendibile a un cluster. |
apply_operations_total | Conteggio | operazione, stato, controller | Il numero totale di operazioni eseguite per sincronizzare le risorse dall'origine attendibile a un cluster. |
declared_resources | Ultimo valore | Il numero di risorse dichiarate analizzate da Git. | |
internal_errors_total | Conteggio | origine | Il numero totale di errori interni riscontrati da Config Sync. La metrica potrebbe non essere visualizzata nei risultati della query se non si è verificato alcun errore interno. |
last_sync_timestamp | Ultimo valore | stato | Il timestamp della sincronizzazione più recente da Git. |
parser_duration_seconds | Distribuzione | stato, trigger, origine | La distribuzione della latenza delle diverse fasi coinvolte nella sincronizzazione dalla fonte attendibile a un cluster. |
pipeline_error_observed | Ultimo valore | name, reconciler, component | Lo stato delle risorse personalizzate RootSync e RepoSync. Un valore pari a 1 indica un errore. |
reconcile_duration_seconds | Distribuzione | stato | La distribuzione della latenza degli eventi di riconciliazione gestiti dal gestore della riconciliazione. |
reconciler_errors | Ultimo valore | component, errorclass | Il numero di errori riscontrati durante la sincronizzazione delle risorse dall'origine dei dati attendibili a un cluster. |
remediate_duration_seconds | Distribuzione | stato | La distribuzione della latenza degli eventi di riconciliazione del rimediatore. |
resource_conflicts_total | Conteggio | Il numero totale di conflitti delle risorse derivanti da una mancata corrispondenza tra le risorse memorizzate nella cache e le risorse del cluster. La metrica potrebbe non essere visualizzata nei risultati della query se non si è verificato alcun conflitto di risorse. | |
resource_fights_total | Conteggio | Il numero totale di risorse sincronizzate troppo di frequente. Qualsiasi risultato maggiore di zero indica un problema. Per ulteriori informazioni, consulta KNV2005: ResourceFightWarning. La metrica potrebbe non essere visualizzata nei risultati della query se non si è verificato alcun conflitto di risorse. |
Metriche del controller del gruppo di risorse
Resource Group Controller è un componente di Config Sync che tiene traccia delle risorse gestite e controlla se ogni singola risorsa è pronta o riconciliata. Sono disponibili le metriche riportate di seguito.
Nome | Tipo | Tag | Descrizione |
---|---|---|---|
rg_reconcile_duration_seconds | Distribuzione | stallreason | La distribuzione del tempo necessario per riconciliare una RP ResourceGroup |
resource_group_total | Ultimo valore | Il numero attuale di RP ResourceGroup | |
resource_count | Ultimo valore | resourcegroup | Il numero totale di risorse monitorate da un ResourceGroup |
ready_resource_count | Ultimo valore | resourcegroup | Il numero totale di risorse pronte in un ResourceGroup |
resource_ns_count | Ultimo valore | resourcegroup | Il numero di spazi dei nomi utilizzati dalle risorse in un ResourceGroup |
cluster_scoped_resource_count | Ultimo valore | resourcegroup | Il numero di risorse con ambito cluster in un gruppo di risorse |
crd_count | Ultimo valore | resourcegroup | Il numero di CRD in un ResourceGroup |
kcc_resource_count | Ultimo valore | resourcegroup | Il numero totale di risorse KCC in un ResourceGroup |
pipeline_error_observed | Ultimo valore | name, reconciler, component | Lo stato delle risorse personalizzate RootSync e RepoSync. Un valore pari a 1 indica un errore. |
Etichette delle metriche di Config Sync
È possibile utilizzare le etichette delle metriche per aggregare i dati delle metriche in Cloud Monitoring e Prometheus È possibile selezionarli in "Raggruppa per" nell'elenco a discesa Console di monitoraggio.
Per ulteriori informazioni sull'etichetta di Cloud Monitoring e sull'etichetta della metrica Prometheus, consulta Componenti del modello metrico e Modello di dati Prometheus.
Etichette metriche
Le seguenti etichette vengono utilizzate dalle metriche di Config Sync e Resource Group Controller, disponibili durante il monitoraggio con Cloud Monitoring e Prometheus.
Nome | Valori | Descrizione |
---|---|---|
operation |
create, patch, update, delete | Il tipo di operazione eseguita |
status |
operazione riuscita, errore | Lo stato di esecuzione di un'operazione |
reconciler |
rootsync, reposync | Il tipo di riconciliatore |
source |
parser, differenziare, correzione | La fonte dell'errore interno |
trigger |
retry, watchUpdate, managementConflict, resync, reimport | L'attivatore di un evento di riconciliazione |
name |
Il nome del riconciliatore | Il nome del riconciliatore |
component |
analisi, origine, sincronizzazione, rendering, idoneità | Il nome del componente/la fase corrente della riconciliazione |
container |
riconciliatore, git-sync | Il nome del contenitore |
resource |
cpu, memoria | Il tipo di risorsa |
controller |
applier, remediator | Il nome del controller in un riconciliatore della radice o dello spazio dei nomi |
type |
Qualsiasi risorsa Kubernetes, ad esempio ClusterRole, Spazio dei nomi, NetworkPolicy, Role e così via. | Il tipo di API Kubernetes |
commit |
---- | L'hash dell'ultimo commit sincronizzato |
Etichette risorse
Le metriche di Config Sync inviate a Prometheus e Cloud Monitoring hanno le seguenti etichette delle metriche impostate su identificare il pod di origine:
Nome | Descrizione |
---|---|
k8s.node.name |
Il nome del nodo che ospita un pod Kubernetes |
k8s.pod.namespace |
Lo spazio dei nomi del pod |
k8s.pod.uid |
L'UID del pod |
k8s.pod.ip |
L'IP del pod |
k8s.deployment.name |
Il nome del deployment proprietario del pod |
Le metriche di Config Sync inviate a Prometheus e Cloud Monitoring dai pod reconciler
hanno anche le seguenti etichette delle metriche impostate per identificare RootSync o RepoSync utilizzato per configurare il riconciliatore:
Nome | Descrizione |
---|---|
configsync.sync.kind |
Il tipo di risorsa che configura questo riconciliatore: RootSync o RepoSync |
configsync.sync.name |
Il nome del RootSync o del RepoSync che configura questo riconciliatore |
configsync.sync.namespace |
Lo spazio dei nomi dell'elemento RootSync o RepoSync che configura questo riconciliatore |
Etichette delle risorse Cloud Monitoring
Le etichette delle risorse Cloud Monitoring vengono utilizzate per indicizzare le metriche nello spazio di archiviazione, significa che hanno un effetto trascurabile sulla cardinalità, a differenza delle etichette delle metriche, dove cardinalità è un importante problema di prestazioni. Per saperne di più, consulta Tipi di risorse monitorate.
Il tipo di risorsa k8s_container
imposta le seguenti etichette delle risorse per identificare il container di origine:
Nome | Descrizione |
---|---|
container_name |
Il nome del contenitore |
pod_name |
Il nome del pod |
namespace_name |
Lo spazio dei nomi del pod |
location |
La regione o la zona del cluster che ospita il nodo |
cluster_name |
Il nome del cluster che ospita il nodo |
project |
L'ID del progetto che ospita il cluster |
Comprendere la metrica pipeline_error_observed
La metrica pipeline_error_observed
è una metrica che può aiutarti a identificare rapidamente
RP RepoSync o RootSync che non sono sincronizzate o che contengono risorse che non sono
riconciliato con lo stato desiderato.
Per una sincronizzazione riuscita da parte di RootSync o RepoSync, le metriche con tutti i componenti (
rendering
,source
,sync
,readiness
) vengono osservate con il valore 0.Quando l'ultimo commit non va a buon fine, rendering automatico, con il componente
rendering
viene osservata con valore 1.Al momento del check-out l'ultimo commit si verifica un errore o l'ultimo commit contiene una configurazione non valida, la metrica con il componente
source
è osservato con il valore 1.Quando non è possibile applicare una risorsa al cluster, la metrica con il componente
sync
viene osservata con il valore 1.Quando una risorsa viene applicata, ma non riesce a raggiungere lo stato desiderato, la metrica con il componente
readiness
viene osservata con il valore 1. Ad esempio, un Il deployment viene applicato al cluster, ma i pod corrispondenti non vengono creati correttamente.
Passaggi successivi
- Scopri di più su come monitorare gli oggetti RootSync e RepoSync.
- Scopri come utilizzare gli SLI di Config Sync.