Configurazione della raccolta di metriche


Questo documento descrive come configurare Google Kubernetes Engine (GKE) per inviare le metriche di Google Cloud a Cloud Monitoring. Metriche in Cloud Monitoring possono completare le dashboard personalizzate, generare avvisi, creare obiettivi del livello di servizio, o essere recuperato da servizi di monitoraggio di terze parti utilizzando API Cloud Monitoring.

GKE fornisce diverse origini di metriche:

  • Metriche di sistema: metriche del sistema essenziale. per componenti di base, descrivendo risorse di basso livello come CPU, memoria e spazio di archiviazione.
  • Google Cloud Managed Service per Prometheus: consente di monitorare e creare avvisi sui carichi di lavoro utilizzando Prometheus, senza gestire e utilizzare Prometheus manualmente su larga scala.
  • Pacchetti di metriche di osservabilità:

    • Metriche del piano di controllo: metriche esportate da alcuni componenti del piano di controllo, come il server API e lo scheduler.
    • Metriche dello stato Kube: un insieme selezionato di metriche esportate servizio di stato kube, utilizzati per monitorare lo stato degli oggetti Kubernetes, come pod, deployment e altro ancora. Per l'insieme delle metriche incluse, consulta Utilizza le metriche di stato kube.

      Il pacchetto di stati kube è una soluzione gestita. Se hai bisogno maggiore flessibilità, ad esempio se devi raccogliere ulteriori metriche o la necessità di gestire intervalli di scrape o di eseguire lo scraping di risorse: puoi disabilitare il pacchetto, se abilitata, ed eseguirai il deployment della tua istanza dell'open source servizio di metriche di stato kube. Per ulteriori informazioni informazioni, consulta la documentazione dell'esportatore di Google Cloud Managed Service per Prometheus per Kube state metrics.

    • cAdvisor/Kubelet: un un insieme selezionato di metriche di cAdvisor e Kubelet. Per il set di consulta le metriche Utilizza le metriche di cAdvisor/Kubelet.

      Il pacchetto cAdvisor/Kubelet è una soluzione gestita. Se hai bisogno di maggiore flessibilità, ad esempio se devi raccogliere metriche aggiuntive o per gestire intervalli di scraping o altri dati di risorse: puoi disabilitare il pacchetto, se abilitata, ed eseguirai il deployment della tua istanza dell'open source Metriche cAdvisor/Kubelet i servizi di machine learning. Per ulteriori informazioni, consulta Google Cloud Managed Service per Prometheus documentazione per cAdvisor/Kubelet esportatore.

    • Metriche di NVIDIA Data Center GPU Manager (DCGM): metriche di DCGM che offrono una gamma completa visualizzazione dell'integrità, delle prestazioni e dell'utilizzo della GPU.

Metriche di sistema

Quando viene creato un cluster, GKE raccoglie per impostazione predefinita metriche emesse dai componenti del sistema.

Puoi scegliere se inviare o meno le metriche da GKE in Cloud Monitoring. Se scegli di inviare le metriche a Cloud Monitoring, devi inviare le metriche di sistema.

Tutte le metriche di sistema di GKE vengono importate in Cloud Monitoring con il prefisso kubernetes.io.

Prezzi

Cloud Monitoring non addebita alcun costo per l'importazione delle metriche di sistema di GKE. Per ulteriori informazioni, vedi Prezzi di Cloud Monitoring.

Configurazione della raccolta delle metriche di sistema

Per attivare la raccolta delle metriche di sistema, passa il valore SYSTEM alla --monitoring del gruppo gcloud container clusters create o gcloud container clusters update tramite comandi SQL.

Per disattivare la raccolta delle metriche di sistema, utilizza il valore NONE per il parametro --monitoring flag. Se la raccolta delle metriche di sistema è disattivata, informazioni di base come utilizzo della CPU, né l'uso della memoria né l'uso del disco sono disponibili per un cluster della Scheda Osservabilità oppure la sezione GKE della console Google Cloud.

Per i cluster GKE Autopilot, non puoi disabilitare raccolta di metriche di sistema.

Vedi Osservabilità per GKE per maggiori dettagli sull'integrazione di Cloud Monitoring con GKE.

Per configurare la raccolta di metriche di sistema con Terraform, vedi il blocco monitoring_config nella Registro Terraform per google_container_cluster. Per informazioni generali sull'utilizzo di Google Cloud con Terraform, consulta Terraform con Google Cloud.

Elenco delle metriche di sistema

Le metriche di sistema includono metriche di componenti di sistema essenziali, importanti per: in Kubernetes. Per un elenco di queste metriche, consulta Metriche di sistema di GKE.

Se abiliti Cloud Monitoring per il cluster, non puoi disabilitare monitoraggio del sistema (--monitoring=SYSTEM).

Metriche abilitate per impostazione predefinita in GKE Enterprise

Nelle seguenti tabelle è presente un segno di spunta () indica quali metriche sono abilitate per impostazione predefinita quando crei e registra un nuovo cluster in un progetto con GKE Enterprise abilitato:

Nome metrica Autopilot Standard
Sistema
Server API
Scheduler
Gestore del controller
Volume permanente (archiviazione)
Pod
Deployment
StatefulState
DaemonSet
HorizonalPodAutoscaler
cAdvisor
Kubelet
Metriche NVIDIA Data Center GPU Manager (DCGM)

Tutti i cluster registrati in un progetto con GKE Enterprise possono utilizzare i pacchetti metriche del piano di controllo, metriche di stato kube e Metriche cAdvisor/kubelet senza costi aggiuntivi. In caso contrario, queste metriche vengono Cloud Monitoring addebita i costi.

Risoluzione dei problemi relativi alle metriche di sistema

Se le metriche di sistema non sono disponibili in Cloud Monitoring come previsto, vedi Risolvi i problemi relativi alle metriche di sistema.

Pacchetto: Metriche del piano di controllo

Puoi configurare un cluster GKE per inviare determinate metriche emesse dal server API, dallo scheduler e dal gestore del controller Kubernetes per e configurazione in Cloud Monitoring.

Per ulteriori informazioni, vedi Raccogli e visualizza le metriche del piano di controllo.

Pacchetto: metriche di stato kube

Puoi configurare un cluster GKE per inviare un set selezionato di le metriche di stato kube in formato Prometheus a Cloud Monitoring. Questo pacchetto di metriche di stato kube include metriche per pod, Deployment, StatefulSet, DaemonSet, risorse HorizontalPodAutoscaler volumi permanenti e attestazioni di volumi permanenti.

Per ulteriori informazioni, vedi Raccogli e visualizza le metriche dello stato kube.

Pacchetto: metriche cAdvisor/Kubelet

Puoi configurare un cluster GKE per inviare un set selezionato di le metriche cAdvisor/Kubelet in formato Prometheus per e configurazione in Cloud Monitoring. L'insieme selezionato di metriche è un sottoinsieme un ampio set di metriche cAdvisor/Kubelet integrate in ogni il deployment Kubernetes per impostazione predefinita. La selezione di cAdvisor/Kubelet è progettato per fornire le metriche più utili, riducendo il volume di importazione e costi associati.

Per ulteriori informazioni, vedi Raccogliere e visualizzare le metriche di cAdvisor/Kubelet.

Pacchetto: metriche NVIDIA Data Center GPU Manager (DCGM)

Puoi monitorare l'utilizzo, le prestazioni e l'integrità della GPU configurando a GKE di inviare Metriche di NVIDIA Data Center GPU Manager (DCGM) per e configurazione in Cloud Monitoring.

Per ulteriori informazioni, vedi Raccogli e visualizza le metriche di NVIDIA Data Center GPU Manager (DCGM).

Disabilita pacchetti di metriche

Puoi disabilitare l'utilizzo dei pacchetti di metriche nel cluster. Potresti voler disattivare alcuni pacchetti per ridurre i costi o se utilizzi un'interfaccia meccanismo di raccolta delle metriche, come Google Cloud Managed Service per Prometheus e un esportatore.

Console

Per disattivare la raccolta delle metriche da Dettagli per il cluster, procedi nel seguente modo:

  1. Nella console Google Cloud, vai alla pagina Cluster Kubernetes:

    Vai a Cluster Kubernetes

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Kubernetes Engine.

  2. Fai clic sul nome del cluster.

  3. Nella riga Funzionalità con etichetta Cloud Monitoring, Fai clic sull'icona Modifica.

  4. Nel menu a discesa Componenti, cancella il dei componenti delle metriche da disattivare.

  5. Fai clic su OK.

  6. Fai clic su Salva modifiche.

gcloud

  1. Apri una finestra del terminale con Google Cloud SDK e Google Cloud CLI installato. Un modo per farlo è utilizzare Cloud Shell.

  2. Nella console Google Cloud, attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.

  3. Chiama il gcloud container clusters update e passare un insieme aggiornato di valori all'elemento --monitoring flag. L'insieme di valori fornito al flag --monitoring sostituisce qualsiasi impostazione precedente.

    Ad esempio, per disattivare la raccolta di tutte le metriche tranne metriche di sistema, esegui questo comando:

    gcloud container clusters update CLUSTER_NAME \
        --location=COMPUTE_LOCATION \
        --enable-managed-prometheus \
        --monitoring=SYSTEM
    

    Questo comando disabilita la raccolta dei dati configurati in precedenza pacchetti di metriche.

Terraform

Per configurare la raccolta di metriche con Terraform, vedi il blocco monitoring_config nella Registro Terraform per google_container_cluster. Per informazioni generali sull'utilizzo di Google Cloud con Terraform, consulta Terraform con Google Cloud.

Informazioni sulla fattura di Monitoring

Puoi usare Cloud Monitoring per identificare il piano di controllo Metriche di stato kube che scrivono il maggior numero di campioni. Queste metriche contribuiscono maggiormente ai tuoi costi. Dopo aver identificato le metriche più costose, puoi modifica le tue configurazioni di scrape per filtrare queste metriche in modo appropriato.

La pagina Gestione delle metriche di Cloud Monitoring fornisce informazioni che può aiutarti a controllare l'importo speso per le metriche addebitabili senza influire sull'osservabilità. La pagina Gestione delle metriche riporta le seguenti informazioni:

  • Volumi di importazione per la fatturazione basata sia su byte che su campioni, nelle varie metriche domini e per singole metriche.
  • Dati su etichette e cardinalità delle metriche.
  • Utilizzo di metriche nei criteri di avviso e nelle dashboard personalizzate.
  • Percentuale di errori di scrittura delle metriche.

Per visualizzare la pagina Gestione delle metriche, segui questi passaggi:

  1. Nella console Google Cloud, vai alla Pagina Gestione delle metriche:

    Vai a Gestione delle metriche

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

  2. Nella barra degli strumenti, seleziona la finestra temporale. Per impostazione predefinita, La pagina Gestione delle metriche mostra informazioni sulle metriche raccolte. nel giorno precedente.

Per saperne di più sulla pagina Gestione delle metriche, consulta Visualizza e gestisci l'utilizzo delle metriche.

per identificare quali metriche del piano di controllo o dello stato kube hanno di campioni da importare, segui questi passaggi:

  1. Nella console Google Cloud, vai alla Pagina Gestione delle metriche:

    Vai a Gestione delle metriche

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

  2. Nel prospetto Campioni fatturabili importati: fai clic su Visualizza grafici.

  3. Individua il grafico Importazione del volume dello spazio dei nomi e fai clic su.  Altre opzioni del grafico.

  4. Nel campo Metrica, verifica che le seguenti risorse e e la metrica selezionata:
    Metric Ingestion Attribution e Samples written by attribution id.

  5. Nella pagina Filtri, procedi nel seguente modo:

    1. Nel campo Etichetta, verifica che il valore sia attribution_dimension.

    2. Nel campo Confronto, verifica che il valore sia = (equals).

    3. Nel campo Valore, seleziona cluster.

  6. Deseleziona l'impostazione Raggruppa per.

  7. Facoltativamente, filtra solo in base a determinate metriche. Ad esempio, API del piano di controllo le metriche server includono tutte "apiserver" come parte del nome della metrica Le metriche dei pod dello stato kube includono tutte "kube_pod" nell'ambito della nome della metrica, in modo da poter filtrare le metriche contenenti quelle stringhe:

    • Fai clic su Aggiungi filtro.

    • Nel campo Etichetta, seleziona metric_type.

    • Nel campo Confronto, seleziona =~ (equals regex).

    • Nel campo Valore, inserisci .*apiserver.* o .*kube_pod.*.

  8. Facoltativamente, raggruppa il numero di campioni importati dalla regione GKE oppure progetto:

    • Fai clic su Raggruppa per.

    • Assicurati che metric_type sia selezionato.

    • Per eseguire il raggruppamento in base alla regione GKE, seleziona Località.

    • Per raggruppare per progetto, seleziona project_id.

    • Fai clic su OK.

  9. Facoltativamente, raggruppa il numero di campioni importati dal nome del cluster GKE:

    • Fai clic su Raggruppa per.

    • Per raggruppare in base al nome del cluster GKE, assicurati che sia attribution_dimension e attribution_id.

    • Fai clic su OK.

  10. Per vedere il volume di importazione per ciascuna delle metriche, nella sezione Attiva/disattiva Tabella del grafico per entrambe, seleziona Entrambe. La tabella mostra il volume importato per ogni metrica nel Colonna Valore.

    Fai clic due volte sull'intestazione della colonna Valore per ordinare le metriche in base a un volume di importazione decrescente.

Questi passaggi mostrano le metriche con la percentuale più alta di campioni importati in e configurazione in Cloud Monitoring. Poiché le metriche nei pacchetti di osservabilità vengono addebitato in base al numero di campioni importati, paghi l'attenzione alle metriche con la maggiore percentuale di campioni importati.

Altre metriche

Oltre alle metriche di sistema e i pacchetti di metriche descritti in questo documento, Le metriche di Istio sono disponibili anche per cluster GKE. Per informazioni sui prezzi, vedi Prezzi di Cloud Monitoring.

Metriche disponibili

La seguente tabella indica i valori supportati per il flag --monitoring per i campi create e i comandi update.

Origine Valore --monitoring Metriche raccolte
Nessuno NONE Nessuna metrica inviata a Cloud Monitoring; nessun agente di raccolta metriche nel cluster. Questo valore non è supportato per Autopilot.
Sistema SYSTEM Metriche dei componenti di sistema essenziali richiesti per Kubernetes. Per un elenco completo delle metriche, consulta Metriche Kubernetes.
server API API_SERVER Metriche di kube-apiserver. Per un elenco completo delle metriche, consulta Metriche server API.
Pianificazione SCHEDULER Metriche di kube-scheduler. Per un elenco completo delle metriche, consulta Metriche dello scheduler.
Responsabile del titolare CONTROLLER_MANAGER Metriche di kube-controller-manager. Per un elenco completo delle metriche, consulta Metriche del gestore del controller.
Volume permanente (archiviazione) STORAGE Metriche di archiviazione di kube-state-metrics. Include le metriche per le attestazioni di volumi permanenti e di volumi permanenti. Per un elenco completo delle metriche, consulta Metriche di archiviazione.
Pod POD Metriche pod da kube-state-metrics. Per un elenco completo delle metriche, consulta Metriche dei pod.
Implementazione DEPLOYMENT Metriche di deployment da kube-state-metrics. Per un elenco completo delle metriche, consulta Metriche di deployment.
StatefulSet STATEFULSET Metriche StatefulSet di kube-state-metrics. Per un elenco completo delle metriche, consulta Metriche StatefulSet.
DaemonSet DAEMONSET Metriche DaemonSet di kube-state-metrics. Per un elenco completo delle metriche, consulta Metriche DaemonSet.
HorizonalPodAutoscaler HPA Metriche HPA di kube-state-metrics. Consulta un elenco completo Metriche HorizonalPodAutoscaler.
cAdvisor CADVISOR Metriche di cAdvisor di cAdvisor/Kubelet del pacchetto di metriche. Per un elenco completo delle metriche, consulta Metriche di cAdvisor.
kubelet KUBELET Metriche kubelet di cAdvisor/Kubelet Per un elenco completo delle metriche, consulta Metriche kubelet.
Metriche NVIDIA Data Center GPU Manager (DCGM) DCGM Metriche di NVIDIA Data Center GPU Manager (DCGM).

Puoi anche raccogliere metriche in stile Prometheus esposte da qualsiasi risorsa GKE carico di lavoro utilizzando Google Cloud Managed Service per Prometheus, che consente di monitorare e creare avvisi sui carichi di lavoro utilizzando Prometheus, senza gestire e utilizzare Prometheus manualmente su larga scala.

Passaggi successivi