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:

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:

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:
Vai alla pagina Monitoraggio > Esplora metriche.
Nel campo Seleziona una metrica, filtra per
kubernetes.io/networking/dns/.Le metriche KubeDNS si trovano nella risorsa Container Kubernetes e le metriche NodeLocalDNS si trovano nella risorsa Nodo Kubernetes.
(Facoltativo) Scegli i filtri selezionati in base alle Etichette.
Esempi di metriche KubeDNS e NodeLocalDNS nella console Google Cloud in Monitoring > Esplora metriche:

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.

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.