Logging e monitoraggio

Google Distributed Cloud include diverse opzioni per il logging e il monitoraggio dei cluster, tra cui servizi gestiti basati su cloud, strumenti open source e compatibilità comprovata con soluzioni commerciali di terze parti. Questo documento illustra queste opzioni e fornisce alcune indicazioni di base per selezionare la soluzione adeguata per il tuo ambiente.

Opzioni per Google Distributed Cloud

Sono disponibili diverse opzioni di logging e monitoraggio per Google Distributed Cloud:

Cloud Logging e Cloud Monitoring

Google Cloud Observability (in precedenza Stackdriver) è la soluzione di osservabilità integrata di Google Cloud. Offre una soluzione di logging completamente gestita, raccolta delle metriche, monitoraggio, creazione di dashboard e avvisi. Cloud Monitoring monitora i cluster Google Distributed Cloud in modo simile ai cluster GKE basati su cloud.

Puoi configurare gli agenti nel cluster per l'ambito del monitoraggio e del logging, nonché per il livello di metriche raccolte:

  • L'ambito del logging e del monitoraggio può essere impostato solo sui componenti di sistema (impostazione predefinita) o per componenti e applicazioni di sistema
  • Il livello delle metriche raccolte può essere configurato per un insieme ottimizzato di metriche

Per ulteriori informazioni, consulta Configurazione degli agenti di logging e monitoraggio per Anthos clusters on VMware in questo documento.

Cloud Logging e Cloud Monitoring forniscono la soluzione ideale per i clienti che cercano un'unica soluzione di osservabilità basata su cloud potente e facile da configurare. Consigliamo vivamente di utilizzare Logging e Monitoring per l'esecuzione di carichi di lavoro solo su GKE on VMware o di carichi di lavoro su GKE e GKE on VMware. Per le applicazioni con componenti in esecuzione su GKE on VMware e nell'infrastruttura on-premise tradizionale, puoi prendere in considerazione altre soluzioni per una visualizzazione end-to-end di queste applicazioni.

Soluzioni di terze parti

Google ha collaborato con diversi provider di soluzioni di logging e monitoraggio di terze parti per aiutare i loro prodotti a funzionare correttamente con GKE on VMware. tra cui Datadog, Elastic e Splunk. In futuro verranno aggiunte altre terze parti convalidate.

Per ulteriori informazioni sull'utilizzo di soluzioni di terze parti con GKE on VMware, consulta le seguenti pagine:

Come funzionano il logging e il monitoraggio per GKE su VMware

Gli agenti Logging e Monitoring vengono installati e attivati in ciascun cluster quando crei un nuovo cluster di amministrazione o utente. Gli agenti raccolgono dati sui componenti di sistema, l'ambito che puoi configurare.

Per visualizzare i dati raccolti nella console Google Cloud, devi configurare il progetto Google Cloud in cui sono archiviati i log e le metriche che vuoi visualizzare.

Gli agenti di logging e monitoraggio su ciascun cluster includono:

  • Agente metriche GKE (gke-metrics-agent). Un DaemonSet che invia metriche all'API Cloud Monitoring.

  • Log forwarding (stackdriver-log-forwarder). Un DaemonSet di bit Fluent che inoltra i log da ogni macchina a Cloud Logging. Il server di inoltro log memorizza le voci di log sul nodo localmente nel buffer e le invia di nuovo per un massimo di quattro ore. Se il buffer si riempie o se il forwarding dei log non riesce a raggiungere l'API Cloud Logging per più di quattro ore, i log vengono eliminati.

  • Agente delle metriche GKE globale (gke-metrics-agent-global). Un deployment che invia metriche all'API Cloud Monitoring.

  • Agente metadati (stackdriver-metadata-agent). Un deployment che invia metadati per risorse Kubernetes come pod, deployment o nodi all'API Stackdriver Resource Metadata. Questi dati vengono utilizzati per arricchire le query delle metriche consentendoti di eseguire query per nome del deployment, nome del nodo o persino nome del servizio Kubernetes.

  • kube-state-metrics, è un deployment che rimane in ascolto del server API e genera metriche sugli stati degli oggetti.

  • node-exporter Un DaemonSet che genera metriche hardware e del sistema operativo.

Puoi visualizzare tutti gli agenti Deployment eseguendo questo comando:

  kubectl --kubeconfig CLUSTER_KUBECONFIG get deployments -l "managed-by=stackdriver" --all-namespaces

dove CLUSTER_KUBECONFIG è il percorso del file kubeconfig per il cluster.

L'output di questo comando è simile al seguente:

gke-metrics-agent-global                      1/1     Running   0   4h31m
stackdriver-metadata-agent-cluster-level      1/1     Running   0   4h31m

Puoi visualizzare tutti gli agenti DaemonSet eseguendo questo comando:

  kubectl --kubeconfig CLUSTER_KUBECONFIG get daemonsets -l "managed-by=stackdriver" --all-namespaces

L'output di questo comando è simile al seguente:

gke-metrics-agent                             1/1     Running   0   4h31m
stackdriver-log-forwarder                     1/1     Running   0   4h31m

Configurazione degli agenti di logging e monitoraggio per GKE on VMware

Gli agenti installati con GKE on VMware raccolgono dati sui componenti di sistema, in base alle tue impostazioni e configurazione, al fine di mantenere e risolvere i problemi relativi ai cluster.

Solo componenti di sistema (ambito predefinito)

Al momento dell'installazione, gli agenti raccolgono log e metriche, inclusi i dettagli sulle prestazioni (ad esempio, utilizzo di CPU e memoria) e metadati simili per i componenti di sistema forniti da Google. Questi includono tutti i carichi di lavoro nel cluster di amministrazione e, per i cluster utente, i carichi di lavoro negli spazi dei nomi kube-system, gke-system, gke-connect, istio-system e config-management-system. Puoi configurare o disabilitare gli agenti come descritto nelle sezioni seguenti.

L'ambito dei log e delle metriche raccolti può essere esteso per includere anche le applicazioni. Per istruzioni su come abilitare il logging e il monitoraggio delle applicazioni, consulta Abilitazione di Logging e Monitoring per le applicazioni utente.

Metriche ottimizzate (metriche predefinite)

Per impostazione predefinita, gli agenti delle metriche in esecuzione nel cluster raccolgono e segnalano a Google Cloud Observability (in precedenza Stackdriver) un set ottimizzato di metriche di container, kubelet e kube-state-metrics.

Sono necessarie meno risorse per raccogliere questo insieme ottimizzato di metriche, che migliora le prestazioni e la scalabilità complessive. Ciò è particolarmente importante per le metriche a livello di container e kube, a causa dell'elevata quantità di oggetti da monitorare.

Per disabilitare le metriche kube-state-metrics ottimizzate (non consigliato), imposta il campo optimizedMetrics su false nella risorsa personalizzata di Stackdriver. Per ulteriori informazioni su come modificare la risorsa personalizzata di Stackdriver, consulta Configurazione delle risorse dei componenti di Stackdriver. Tutte le metriche GKE on VMware, incluse quelle escluse per impostazione predefinita, sono descritte in Metriche di GKE Enterprise.

Abilita e disabilita Stackdriver

Puoi abilitare o disabilitare completamente gli agenti di logging e monitoraggio abilitando o disabilitando la risorsa personalizzata di Stackdriver. Questa funzionalità è in anteprima.

Prima di disabilitare gli agenti di logging e monitoraggio, consulta la pagina dell'assistenza per i dettagli su come ciò influisce sugli SLA (accordi sul livello del servizio) dell'assistenza Google Cloud.

Gli agenti di logging e monitoraggio acquisiscono i dati archiviati localmente, in base alla configurazione di archiviazione e conservazione. I dati vengono replicati nel progetto Google Cloud specificato al momento dell'installazione utilizzando un account di servizio autorizzato a scrivere dati nel progetto. Puoi disabilitare questi agenti in qualsiasi momento, come descritto in precedenza.

Puoi anche gestire ed eliminare i dati che gli agenti di logging e monitoraggio hanno inviato a Cloud Logging e Cloud Monitoring. Per ulteriori informazioni, consulta la documentazione di Cloud Monitoring.

Requisiti di configurazione per il logging e il monitoraggio

Per visualizzare i dati di Cloud Logging e Cloud Monitoring, devi configurare il progetto Google Cloud che archivia i log e le metriche che vuoi visualizzare. Questo progetto Google Cloud è chiamato progetto di monitoraggio del logging.

  1. Abilita le seguenti API nel tuo progetto di monitoraggio dei log:

  2. Concedi i seguenti ruoli IAM all'account di servizio logging-monitoring nel progetto di monitoraggio dei log.

    • logging.logWriter
    • monitoring.metricWriter
    • stackdriver.resourceMetadata.writer
    • monitoring.dashboardEditor
    • opsconfigmonitoring.resourceMetadata.writer

Prezzi

Non è previsto alcun costo per i log di sistema e le metriche di GKE Enterprise. I log del piano di controllo, le metriche del piano di controllo e un sottoinsieme selezionato di metriche di stato Kube sono abilitati per impostazione predefinita per i cluster GKE su Google Cloud registrati al momento della creazione del cluster in un progetto abilitato per GKE Enterprise. I log del piano di controllo sono soggetti agli addebiti di Cloud Logging, mentre le metriche attive per impostazione predefinita sono incluse senza costi aggiuntivi.

Per l'elenco delle metriche e dei log GKE inclusi, consulta Quali log vengono raccolti e Metriche disponibili.

In un cluster GKE on VMware, i log di sistema e le metriche di GKE Enterprise includono quanto segue:

  • Log e metriche di tutti i componenti in un cluster di amministrazione
  • Log e metriche dei componenti nei seguenti spazi dei nomi di un cluster utente: kube-system, gke-system, gke-connect, knative-serving, istio-system, monitoring-system, config-management-system, gatekeeper-system, cnrm-system

Per ulteriori informazioni, consulta Prezzi per Google Cloud Observability.

Per saperne di più sul credito per le metriche di Cloud Logging, contatta il team di vendita per i prezzi.

Passaggi successivi