Osserva il traffico DNS di GKE

Questo documento mostra come osservare il traffico DNS utilizzando le metriche DNS di GKE. Le metriche DNS di GKE sono disponibili nella console Google Cloud per i cluster che eseguono le seguenti versioni:

  • per KubeDNS avanzato, GKE versione 1.36 o successive

  • Per NodeLocalDNS, GKE versione 1.35.2-gke.1090000 o successive

Visualizza le metriche DNS

Puoi visualizzare le metriche DNS di GKE nella console Google Cloud in Metrics Explorer nei seguenti modi:

Utilizza la dashboard di osservabilità DNS di GKE

Google fornisce una dashboard DNS predefinita in Monitoring > Dashboard > Osservabilità DNS GKE - Visualizzazione cluster. Questa dashboard mostra le metriche di KubeDNS e NodeLocalDNS. Per visualizzare la dashboard, devi disporre di cluster che utilizzano NodeLocalDNS o KubeDNS.

Esempi di utilizzo della dashboard di osservabilità del DNS GKE:

Innanzitutto, vai a Monitoring > Dashboard, come mostrato nell'immagine seguente:

Il primo screenshot che mostra la dashboard DNS nella console Google Cloud

Questo screenshot mostra il menu di navigazione della console Google Cloud a sinistra. La sezione Monitoraggio è espansa e l'opzione Dashboard è evidenziata per guidare la navigazione.

Quindi vai alla dashboard GKE DNS Observability - Cluster View:

Secondo screenshot che mostra la dashboard DNS nella console Google Cloud

Questo screenshot mostra la pagina della directory Dashboard, con la dashboard GKE DNS Observability - Cluster View evidenziata nell'elenco delle dashboard disponibili. Se fai clic su questo link, si apre la visualizzazione delle metriche DNS a livello di cluster.

Creare dashboard personalizzate

Per creare dashboard personalizzate e impostare avvisi simili a quelli di una delle metriche che hai monitorato, puoi utilizzare gli strumenti di Google Cloud Observability, come Esplora metriche di Cloud Monitoring.

Eseguire query sulle metriche di osservabilità DNS

Per visualizzare le metriche DNS di GKE per i tuoi cluster, segui questi passaggi nella console Google Cloud in Metrics Explorer:

  1. Vai alla pagina Monitoraggio > Esplora metriche.

  2. Nel campo Seleziona una metrica, filtra per kubernetes.io/networking/dns/.

  3. Le metriche KubeDNS si trovano nella risorsa Container Kubernetes e le metriche NodeLocalDNS si trovano nella risorsa Nodo Kubernetes.

  4. (Facoltativo) Scegli i filtri selezionati in base alle Etichette.

Esempi di metriche KubeDNS e NodeLocalDNS nella console Google Cloud in Monitoring > Esplora metriche:

Screenshot che mostra le metriche di KubeDNS nella console Google Cloud

Questo screenshot mostra la pagina Esplora metriche configurata per eseguire query sulle metriche di KubeDNS. Il campo Seleziona una metrica mostra il percorso filtrato kubernetes.io/networking/dns/kubedns/ e il grafico risultante mostra grafici delle serie temporali attive delle richieste KubeDNS e degli stati della cache.

Screenshot che mostra le metriche NodeLocalDNS nella console Google Cloud

Questo screenshot mostra la pagina Esplora metriche configurata per eseguire query sulle metriche NodeLocalDNS. La query specifica il percorso della metrica kubernetes.io/networking/dns/node_local_dns/ nella risorsa nodo Kubernetes e il grafico evidenzia i grafici delle serie temporali attive che rappresentano i dati relativi alle richieste DNS locali e alla latenza.

Elenco delle metriche DNS di GKE

Per monitorare le prestazioni e l'integrità del DNS di GKE sono disponibili le seguenti metriche.

Metriche KubeDNS

In GKE versione 1.36 e successive, per KubeDNS sono disponibili le seguenti metriche:

Tipo di metrica Descrizione
kubernetes.io/networking/dns/kubedns/dns_request_count Numero totale di richieste DNS ricevute da KubeDNS.
kubernetes.io/networking/dns/kubedns/dns_request_latencies Istogramma del tempo impiegato per risolvere ogni richiesta.
kubernetes.io/networking/dns/kubedns/dns_cache_request_count Contatore delle richieste DNS filtrate in base allo stato della cache (successo o fallimento).
kubernetes.io/networking/dns/kubedns/forwarding_request_latencies Istogramma del tempo impiegato da ogni richiesta inoltrata.
kubernetes.io/networking/dns/kubedns/max_concurrent_rejected_request_count Query rifiutate perché il numero di query simultanee era al massimo.

Per calcolare la metrica forwarding_request_count, puoi utilizzare la metrica kubernetes.io/networking/dns/kubedns/forwarding_request_latencies nella seguente query: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/kubedns/forwarding_request_latencies_count"}[${__interval}])).

Per impostazione predefinita, la console Google Cloud applica un'operazione di frequenza alle metriche request_count. Puoi disattivare questa opzione dalla sorgente PromQL.

Metriche NodeLocalDNS

In GKE versione 1.35.2-gke.1090000 e successive, sono disponibili le seguenti metriche per NodeLocal DNSCache:

Tipo di metrica Descrizione
kubernetes.io/networking/dns/node_local_dns/dns_request_count Numero totale di richieste DNS ricevute da NodeLocal DNSCache.
kubernetes.io/networking/dns/node_local_dns/dns_request_latencies Istogramma del tempo impiegato per risolvere ogni richiesta.
kubernetes.io/networking/dns/node_local_dns/dns_cache_request_count Contatore delle richieste DNS filtrate in base allo stato della cache (successo o fallimento).
kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies Istogramma del tempo impiegato da ogni richiesta inoltrata.
kubernetes.io/networking/dns/node_local_dns/max_concurrent_rejected_request_count Query rifiutate perché il numero di query simultanee era al massimo.

Per calcolare il valore della metrica forwarding_request_count, puoi utilizzare la metrica kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies nella seguente query: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies_count"}[${__interval}])).

Tieni presente che quando visualizzi queste metriche, la consoleGoogle Cloud applica automaticamente un'operazione di tasso alle metriche request_count, che può essere disattivata dall'origine PromQL.

Passaggi successivi