Mengamati traffic DNS GKE

Dokumen ini menunjukkan cara mengamati traffic DNS menggunakan metrik DNS GKE. Metrik DNS GKE tersedia di konsol Google Cloud untuk cluster yang menjalankan versi berikut:

  • untuk KubeDNS yang ditingkatkan, GKE versi 1.36 atau yang lebih baru

  • untuk NodeLocalDNS, GKE versi 1.35.2-gke.1090000 atau yang lebih baru

Melihat metrik DNS

Anda dapat melihat metrik DNS GKE di konsol Google Cloud di Metrics Explorer, dengan cara berikut:

Menggunakan dasbor kemampuan observasi DNS GKE

Google menyediakan dasbor DNS yang telah ditetapkan di Monitoring > Dashboards > GKE DNS Observability - Cluster View. Dasbor ini menampilkan metrik KubeDNS dan NodeLocalDNS. Anda memerlukan cluster yang menggunakan NodeLocalDNS atau KubeDNS untuk melihat dasbor.

Contoh penggunaan dasbor GKE DNS Observability:

Pertama, buka Monitoring > Dashboards, seperti yang ditunjukkan pada gambar berikut:

Screenshot pertama yang menampilkan dasbor DNS di konsol Google Cloud

Screenshot ini menampilkan menu navigasi konsol Google Cloud di sebelah kiri. Bagian Monitoring diperluas, dan Dashboards ditandai untuk memandu navigasi Anda.

Kemudian, buka dasbor GKE DNS Observability - Cluster View:

Screenshot kedua yang menampilkan dasbor DNS di konsol Google Cloud

Screenshot ini menampilkan halaman direktori Dashboards, dengan dasbor GKE DNS Observability - Cluster View ditandai dalam daftar dasbor yang tersedia. Mengklik link ini akan membuka visualisasi metrik DNS tingkat cluster.

Membuat dasbor yang disesuaikan

Untuk membuat dasbor kustom dan menyetel pemberitahuan yang serupa dengan metrik apa pun yang telah Anda pantau, Anda dapat menggunakan alat Google Cloud Observability seperti Cloud Monitoring Metrics Explorer.

Membuat kueri metrik kemampuan observasi DNS

Untuk melihat metrik DNS GKE untuk cluster Anda, lakukan langkah-langkah berikut di konsol Google Cloud di Metrics Explorer:

  1. Buka halaman Monitoring > Metrics Explorer.

  2. Di kolom Select a metric, filter untuk kubernetes.io/networking/dns/.

  3. Metrik KubeDNS berada di bawah resource Kubernetes Container dan metrik NodeLocalDNS berada di bawah resource Kubernetes Node.

  4. (Opsional) Pilih filter yang diinginkan berdasarkan Labels.

Contoh metrik KubeDNS dan metrik NodeLocalDNS di konsol Google Cloud di bagian Monitoring > Metrics Explorer:

Screenshot yang menampilkan metrik KubeDNS di konsol Google Cloud

Screenshot ini menampilkan halaman Metrics Explorer yang dikonfigurasi untuk mengkueri metrik KubeDNS. Kolom Select a metric menampilkan jalur yang difilter kubernetes.io/networking/dns/kubedns/, dan diagram yang dihasilkan menampilkan grafik deret waktu aktif permintaan KubeDNS dan status cache.

Screenshot yang menampilkan metrik NodeLocalDNS di konsol Google Cloud

Screenshot ini menampilkan halaman Metrics Explorer yang dikonfigurasi untuk membuat kueri metrik NodeLocalDNS. Kueri menentukan jalur metrik kubernetes.io/networking/dns/node_local_dns/ di bagian resource Node Kubernetes, dan diagram menandai grafik deret waktu aktif yang mewakili permintaan DNS lokal dan data latensi.

Daftar metrik DNS GKE

Metrik berikut tersedia untuk memantau performa dan kondisi DNS GKE.

Metrik KubeDNS

Di GKE versi 1.36 dan yang lebih baru, metrik berikut tersedia untuk KubeDNS:

Jenis metrik Deskripsi
kubernetes.io/networking/dns/kubedns/dns_request_count Jumlah total permintaan DNS yang diterima oleh KubeDNS.
kubernetes.io/networking/dns/kubedns/dns_request_latencies Histogram waktu yang diperlukan untuk menyelesaikan setiap permintaan.
kubernetes.io/networking/dns/kubedns/dns_cache_request_count Penghitung permintaan DNS yang difilter menurut status cache (ditemukan atau tidak ditemukan).
kubernetes.io/networking/dns/kubedns/forwarding_request_latencies Histogram waktu yang diperlukan setiap permintaan yang diteruskan.
kubernetes.io/networking/dns/kubedns/max_concurrent_rejected_request_count Kueri ditolak karena jumlah kueri serentak sudah mencapai batas maksimum.

Untuk menghitung metrik forwarding_request_count, Anda dapat menggunakan metrik kubernetes.io/networking/dns/kubedns/forwarding_request_latencies dalam kueri berikut: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/kubedns/forwarding_request_latencies_count"}[${__interval}])).

Secara default, konsol Google Cloud menerapkan operasi rasio ke metrik request_count. Anda dapat menonaktifkannya dari sumber PromQL.

Metrik NodeLocalDNS

Di GKE versi 1.35.2-gke.1090000 dan yang lebih baru, metrik berikut tersedia untuk NodeLocal DNSCache:

Jenis metrik Deskripsi
kubernetes.io/networking/dns/node_local_dns/dns_request_count Total jumlah permintaan DNS yang diterima oleh NodeLocal DNSCache.
kubernetes.io/networking/dns/node_local_dns/dns_request_latencies Histogram waktu yang diperlukan untuk menyelesaikan setiap permintaan.
kubernetes.io/networking/dns/node_local_dns/dns_cache_request_count Penghitung permintaan DNS yang difilter menurut status cache (ditemukan atau tidak ditemukan).
kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies Histogram waktu yang diperlukan setiap permintaan yang diteruskan.
kubernetes.io/networking/dns/node_local_dns/max_concurrent_rejected_request_count Kueri ditolak karena jumlah kueri serentak sudah mencapai batas maksimum.

Untuk menghitung nilai metrik forwarding_request_count, Anda dapat menggunakan metrik kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies dalam kueri berikut: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies_count"}[${__interval}])).

Perhatikan bahwa saat melihat metrik tersebut, konsolGoogle Cloud akan otomatis menerapkan operasi kapasitas ke metrik request_count, yang dapat dinonaktifkan dari sumber PromQL.

Langkah berikutnya