L'osservabilità di GKE Dataplane V2 fornisce metriche e insight di GKE Dataplane V2 sui carichi di lavoro Kubernetes. Con l'osservabilità di GKE Dataplane V2, a partire dalle versioni di GKE 1.28 o successive, puoi:
- Acquisisci, osserva e crea avvisi sulle metriche di rete utilizzando Google Cloud Managed Service per Prometheus e Cloud Monitoring con Metrics Explorer
- Informazioni sui flussi di traffico per un determinato servizio in un cluster
- Comprendere e identificare i problemi relativi all'integrità della rete di un carico di lavoro Kubernetes
- Verifica i criteri di rete Kubernetes
L'osservabilità di GKE Dataplane V2 offre i seguenti strumenti per la risoluzione dei problemi:
- Network Topology di un cluster Kubernetes
- Una tabella dell'esito dei criteri di rete Kubernetes con informazioni sulla connessione e i flussi di traffico in tempo reale
- Strumenti a riga di comando per la risoluzione dei problemi dei flussi di traffico di Kubernetes
Metriche di GKE Dataplane V2
Le metriche di GKE Dataplane V2 forniscono informazioni sul flusso di traffico per:
- Flussi di traffico: insight su come GKE gestisce i flussi tra pod e servizi.
Applicazione dei criteri di rete: informazioni su come GKE applica i criteri di rete di Kubernetes.
Puoi utilizzare le metriche di GKE Dataplane V2 per monitorare e risolvere i problemi dei carichi di lavoro Kubernetes utilizzando i seguenti strumenti:
- Google Cloud Managed Service per Prometheus per visualizzare e analizzare le metriche di GKE Dataplane V2. Puoi modificare la configurazione di Google Cloud Managed Service per Prometheus per aggiungere o rimuovere le metriche di tua scelta per l'importazione di Google Cloud Managed Service per Prometheus.
- Cloud Monitoring Metrics Explorer per visualizzare i dettagli del flusso di traffico a livello di pod.
- Cloud Monitoring per esplorare e utilizzare qualsiasi metrica. Ad esempio, puoi creare avvisi che si attivano quando le metriche di GKE Dataplane V2 superano determinate soglie.
- Grafana autogestita per visualizzare le metriche raccolte da Google Cloud Managed Service per Prometheus.
Quando abiliti Google Cloud Managed Service per Prometheus:
- GKE crea una risorsa
PodMonitoring
- GKE espone l'endpoint delle metriche
Per utilizzare le metriche con Google Cloud Managed Service per Prometheus e poter creare una risorsa PodMonitoring
, devi abilitare Google Cloud Managed Service per Prometheus sul cluster. Se non abiliti Google Cloud Managed Service per Prometheus, GKE visualizza l'endpoint delle metriche ma non crea una risorsa PodMonitoring
.
Quando abiliti le metriche di GKE Dataplane V2 per un cluster, Google Cloud Managed Service per Prometheus importa le seguenti metriche di GKE Dataplane V2:
Metrica GKE Dataplane V2 | Tipo | Descrizione |
---|---|---|
prometheus.googleapis.com/pod_flow_egress_flows_count/counter
|
cumulativi | Numero totale di flussi da un pod. |
prometheus.googleapis.com/pod_flow_ingress_flows_count/counter
|
cumulativi | Numero totale di flussi in un pod. |
L'abilitazione delle metriche di GKE Dataplane V2 apre la porta delle metriche su ciascun nodo Kubernetes.
Sono inoltre disponibili metriche aggiuntive, tra cui quelle provenienti dalla piattaforma di osservabilità open source Hubble.
Per impostazione predefinita, Google Cloud Managed Service per Prometheus non importa queste metriche aggiuntive, ma puoi configurare Google Cloud Managed Service per Prometheus per raccoglierle. Per raccogliere
queste metriche, configura una risorsa PodMonitoring
personalizzata (RP).
La seguente tabella descrive altre metriche Hubble:
Metrica Hubble | Tipo | Descrizione |
---|---|---|
hubble_flows_processed_total
|
cumulativi | Numero totale di flussi elaborati. |
hubble_drop_total
|
cumulativi | Numero totale di flussi eliminati. |
hubble_port_distribution_total
|
cumulativi | Numero totale di flussi elaborati, aggregati per numero di porta. |
hubble_tcp_flags_total
|
cumulativi | Numero totale di flussi elaborati con determinati flag TCP impostati. |
hubble_icmp_total
|
cumulativi | Numero totale di flussi ICMP elaborati. |
Strumenti di osservabilità di GKE Dataplane V2
L'osservabilità di GKE Dataplane V2 fornisce una soluzione Hubble gestita con osservabilità della rete e insight sulla sicurezza per i carichi di lavoro Kubernetes di cui è stato eseguito il deployment con GKE Dataplane V2.
Se questa opzione è abilitata, l'osservabilità di GKE Dataplane V2 esegue il deployment dei seguenti componenti nel cluster:
Hubble Relay:un servizio che raccoglie dati di telemetria della rete relativi ai tuoi pod da ciascun nodo.
Interfaccia a riga di comando Hubble:uno strumento di interfaccia a riga di comando che fornisce informazioni sul traffico in tempo reale all'interno del cluster.
Dopo aver abilitato l'osservabilità di GKE Dataplane V2 nel cluster, puoi eseguire il deployment del componente seguente:
- UI di Hubble:uno strumento basato sul web che puoi utilizzare per visualizzare e analizzare i dati di telemetria di rete raccolti da Hubble Relay. Devi abilitare l'osservabilità di GKE Dataplane V2 per eseguire il deployment dell'UI di Hubble.
Come funzionano le metriche e l'osservabilità di GKE Dataplane V2
L'osservabilità di GKE Dataplane V2 utilizza i seguenti componenti e strumenti per raccogliere metriche e fornire insight sul traffico di rete:
Le metriche e l'osservabilità di GKE Dataplane V2 utilizzano il percorso dati GKE Dataplane V2 basato su eBPF per raccogliere metriche sui flussi di traffico e sull'applicazione dei criteri di rete per un pod in base a un determinato carico di lavoro.
Google Cloud Managed Service per Prometheus: le metriche di GKE Dataplane V2 configurano l'agente Google Cloud Managed Service per Prometheus in modo da importare metriche aggregate in Google Cloud Managed Service per Prometheus, una soluzione di monitoraggio scalabile che può importare e archiviare grandi quantità di dati che ti consente anche di creare sulla base dell'osservabilità di Google Cloud.
Hubble: l'osservabilità di GKE Dataplane V2 utilizza Hubble, un progetto di osservabilità open source. Hubble consente l'osservabilità della rete e gli insight sulla sicurezza per i carichi di lavoro Kubernetes di cui è stato eseguito il deployment con un Dataplane eBPF.
Gli eventi di flusso Hubble si verificano quando:
Viene stabilita una connessione di rete per la prima volta
Viene visualizzato per la prima volta un flag TCP, che indica lo stato della connessione TCP.
Un pacchetto viene trasmesso dopo almeno cinque secondi dall'ultimo evento del flusso
Metriche Hubble:conteggia il numero di eventi di flusso in un cluster Kubernetes che puoi utilizzare per identificare quali pod comunicano tra loro.
Abilitazione di metriche e osservabilità: puoi abilitare GKE Dataplane V2 e l'osservabilità indipendentemente l'uno dall'altro. Per abilitare la visualizzazione della topologia di rete nella funzionalità UI open source di Hubble, devi abilitare l'ispezione della rete.
Cluster Autopilot:
Le metriche sono abilitate per impostazione predefinita
Gli strumenti di osservabilità sono disabilitati per impostazione predefinita
Devi creare la risorsa Cluster
PodMonitoring
per raccogliere metriche in Google Cloud Managed Service per Prometheus
Cluster standard:
Le metriche sono disabilitate per impostazione predefinita
Gli strumenti di osservabilità sono disabilitati per impostazione predefinita
Se hai abilitato Google Cloud Managed Service per Prometheus, viene creata automaticamente una risorsa
PodMonitoring
Una risorsa
PodMonitoring
è contrassegnata come ensure esiste. Puoi interrompere l'invio di metriche a Google Cloud Managed Service per Prometheus modificando la risorsaPodMonitoring
per disabilitare tutte le metriche
Endpoint di osservabilità di GKE Dataplane V2
I componenti di osservabilità di GKE Dataplane V2 espongono i seguenti due endpoint di osservabilità:
Endpoint delle metriche: un endpoint HTTP che espone le metriche del traffico in formato Prometheus. Il pod
anetd
espone l'endpoint delle metriche su ciascun nodo del cluster sulla porta 9965.Porta flussi: un endpoint gRPC. Il pod
hubble-relay
espone l'endpoint di porta dei flussi come servizioClusterIP
di Kubernetes sulla porta 443. Il podhubble-relay
è il backend per il servizioClusterIP
Kubernetes e tutte le richieste al servizioClusterIP
Kubernetes vengono inoltrate al podhubble-relay
. Puoi accedere alla porta di flusso utilizzando l'interfaccia a riga di comando di Hubble o la UI di Hubble.
Limitazioni
- L'osservabilità di GKE Dataplane V2 ha un limite a livello di cluster di 5000 nodi.
- L'osservabilità di GKE Dataplane V2 funziona solo nei cluster in cui è abilitato GKE Dataplane V2.
- Le metriche di GKE Dataplane V2 sono simili a quelle Hubble in quanto implementate come metriche basate sul flusso per fornire informazioni sulla connessione. Queste metriche non conteggiano la quantità di dati o il numero di pacchetti trasmessi. Poiché le metriche sono basate sul flusso, non forniscono una rappresentazione accurata della quantità di dati trasmessi in un flusso di rete.
Passaggi successivi
- Configura l'osservabilità di GKE Dataplane V2
- Osservabilità del traffico utilizzando l'osservabilità di GKE Dataplane V2