Mengumpulkan dan melihat metrik cAdvisor/Kubelet


Halaman ini menjelaskan cara mengonfigurasi cluster Google Kubernetes Engine (GKE) untuk mengirim kumpulan metrik cAdvisor/Kubelet yang diseleksi ke Cloud Monitoring menggunakan Google Cloud Managed Service for Prometheus. Halaman ini juga menjelaskan cara metrik ini diformat saat ditulis ke Monitoring, dan cara membuat kueri metrik.

Kumpulan metrik yang diseleksi adalah subset dari kumpulan metrik cAdvisor/Kubelet yang disertakan dalam setiap deployment Kubernetes secara default dan menyertakan metrik yang terkait dengan pengurangan volume penyerapan dan biaya terkait.

Sebelum memulai

Sebelum memulai, pastikan Anda telah menjalankan tugas berikut:

  • Aktifkan Google Kubernetes Engine API.
  • Aktifkan Google Kubernetes Engine API
  • Jika ingin menggunakan Google Cloud CLI untuk tugas ini, instal lalu lakukan inisialisasi gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan gcloud components update.

Persyaratan

Untuk mengumpulkan metrik cAdvisor/Kubelet, cluster GKE Anda harus memenuhi persyaratan berikut:

  • Cluster harus menjalankan GKE versi 1.29.3-gke.1093000 atau yang lebih baru. Paket cAdvisor/Kubelet diaktifkan secara default saat Anda membuat cluster yang menjalankan versi 1.29.3-gke.1093000 atau yang lebih baru.
  • Cluster harus mengaktifkan metrik sistem.
  • Cluster telah mengaktifkan koleksi terkelola Google Cloud Managed Service for Prometheus. Koleksi terkelola Google Cloud Managed Service for Prometheus diaktifkan secara default untuk cluster baru.

Mengonfigurasi pengumpulan metrik cAdvisor/Kubelet

Anda dapat mengaktifkan metrik cAdvisor/Kubelet di cluster GKE yang ada menggunakan Konsol Google Cloud, gcloud CLI, atau Terraform.

Konsol

Untuk mengonfigurasi metrik cAdvisor/Kubelet dari tab Details untuk cluster, lakukan hal berikut:

  1. Di konsol Google Cloud, buka halaman Kubernetes clusters:

    Buka Cluster Kubernetes

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Kubernetes Engine.

  2. Klik nama cluster Anda.

  3. Di baris Fitur berlabel Cloud Monitoring, klik ikon Edit.

  4. Pada dialog Edit Cloud Monitoring yang muncul, pastikan Enable Cloud Monitoring dipilih.

  5. Di menu drop-down Components, pilih komponen cAdvisor/Kubelet yang metriknya ingin Anda kumpulkan:

    • cAdvisor
    • Kubelet
  6. Klik Oke.

  7. Klik Simpan Perubahan.

gcloud

Update cluster Anda untuk mengumpulkan metrik:

gcloud container clusters update CLUSTER_NAME \
    --location=COMPUTE_LOCATION \
    --enable-managed-prometheus \
    --monitoring=SYSTEM,CADVISOR,KUBELET

Ganti kode berikut:

Kumpulan nilai yang disediakan ke tanda monitoring akan menggantikan setelan sebelumnya.

Terraform

Untuk mengonfigurasi pengumpulan metrik cAdvisor/Kubelet menggunakan Terraform, lihat blok monitoring_config di registry Terraform untuk google_container_cluster. Untuk informasi umum tentang penggunaan Google Cloud dengan Terraform, lihat Terraform dengan Google Cloud.

Format metrik

Semua metrik cAdvisor/Kubelet Kubernetes yang ditulis ke Cloud Monitoring menggunakan jenis resource prometheus_target. Setiap nama metrik diawali dengan prometheus.googleapis.com/ dan memiliki akhiran yang menunjukkan jenis metrik Prometheus, seperti /gauge, /histogram, atau /counter. Jika tidak, setiap nama metrik akan identik dengan nama metrik yang ditampilkan oleh Kubernetes open source.

Mengekspor dari Cloud Monitoring

Metrik cAdvisor/Kubelet dapat diekspor dari Cloud Monitoring menggunakan Cloud Monitoring API. Karena semua metrik cAdvisor/Kubelet diserap menggunakan Google Cloud Managed Service for Prometheus, metrik cAdvisor/Kubelet dapat dikueri menggunakan Prometheus Query Language (PromQL). Metrik ini juga dapat dikueri dengan menggunakan Monitoring Query Language (MQL).

Membuat kueri metrik

Saat Anda membuat kueri metrik cAdvisor/Kubelet, nama yang Anda gunakan bergantung pada apakah Anda menggunakan PromQL atau fitur berbasis Cloud Monitoring seperti MQL atau antarmuka berbasis menu Metrics Explorer.

Tabel metrik cAdvisor/Kubelet berikut menampilkan dua versi setiap nama metrik:

  • Nama metrik PromQL: Saat menggunakan PromQL di halaman Cloud Monitoring di konsol Google Cloud atau di kolom PromQL di Cloud Monitoring API, gunakan nama metrik PromQL.
  • Nama metrik Cloud Monitoring Saat menggunakan fitur Cloud Monitoring lainnya, gunakan nama metrik Cloud Monitoring dalam tabel di bawah. Nama ini harus diawali dengan prometheus.googleapis.com/, yang telah dihilangkan dari entri dalam tabel.

Metrik cAdvisor

Nama metrik Cloud Monitoring dalam tabel ini harus diawali dengan prometheus.googleapis.com/. Awalan tersebut telah dihilangkan dari entri dalam tabel.

Nama metrik PromQL
Nama metrik Cloud Monitoring
Jenis, Tipe, Unit
Resource yang dimonitor
Versi GKE yang diperlukan
Deskripsi
Label
container_cpu_cfs_periods_total
container_cpu_cfs_periods_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah interval periode penegakan yang telah berlalu. Diambil sampelnya setiap 30 detik.

cpu
container_cpu_cfs_throttled_periods_total
container_cpu_cfs_throttled_periods_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah interval periode yang di-throttle. Diambil sampelnya setiap 30 detik.

cpu
container_cpu_usage_seconds_total
container_cpu_usage_seconds_total/counter
CUMULATIVEDOUBLEs
prometheus_target
1.29.3-gke.1093000
Waktu CPU kumulatif yang digunakan. Diambil sampelnya setiap 30 detik.

cpu
container_fs_limit_bytes
container_fs_limit_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah byte yang dapat digunakan oleh penampung pada sistem file ini. Diambil sampelnya setiap 30 detik.

disk
container_fs_read_seconds_total
container_fs_read_seconds_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif operasi baca yang selesai. Diambil sampelnya setiap 30 detik.

diskIO
container_fs_reads_bytes_total
container_fs_reads_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif byte yang dibaca. Diambil sampelnya setiap 30 detik.

diskIO
container_fs_reads_total
container_fs_reads_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif operasi baca yang selesai. Diambil sampelnya setiap 30 detik.

diskIO
container_fs_usage_bytes
container_fs_usage_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah byte yang digunakan oleh penampung pada sistem file ini. Diambil sampelnya setiap 30 detik.

disk
container_fs_write_seconds_total
container_fs_write_seconds_total/counter
CUMULATIVEDOUBLEs
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif detik yang dihabiskan untuk menulis. Diambil sampelnya setiap 30 detik.

diskIO
container_fs_writes_bytes_total
container_fs_writes_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif byte yang ditulis. Diambil sampelnya setiap 30 detik.

diskIO
container_fs_writes_total
container_fs_writes_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif operasi tulis yang selesai. Diambil sampelnya setiap 30 detik.

diskIO
container_memory_rss
container_memory_rss/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Ukuran RSS. Diambil sampelnya setiap 30 detik.

memory
container_memory_working_set_bytes
container_memory_working_set_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Working set saat ini. Diambil sampelnya setiap 30 detik.

memory
container_network_receive_bytes_total
container_network_receive_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif byte yang diterima. Diambil sampelnya setiap 30 detik.

network
container_network_receive_packets_dropped_total
container_network_receive_packets_dropped_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif paket yang dihapus saat menerima. Diambil sampelnya setiap 30 detik.

network
container_network_receive_packets_total
container_network_receive_packets_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif paket yang diterima. Diambil sampelnya setiap 30 detik.

network
container_network_transmit_bytes_total
container_network_transmit_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif byte yang ditransmisikan. Diambil sampelnya setiap 30 detik.

network
container_network_transmit_packets_dropped_total
container_network_transmit_packets_dropped_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif paket yang dihapus saat transmisi. Diambil sampelnya setiap 30 detik.

network
container_network_transmit_packets_total
container_network_transmit_packets_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif paket yang ditransmisikan. Diambil sampelnya setiap 30 detik.

network

Metrik kubelet

Nama metrik Cloud Monitoring dalam tabel ini harus diawali dengan prometheus.googleapis.com/. Awalan tersebut telah dihilangkan dari entri dalam tabel.

Nama metrik PromQL
Nama metrik Cloud Monitoring
Jenis, Tipe, Unit
Resource yang dimonitor
Versi GKE yang diperlukan
Deskripsi
Label
kubelet_certificate_manager_server_ttl_seconds
kubelet_certificate_manager_server_ttl_seconds/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Pengukur TTL (time-to-live) terpendek dari sertifikat penayangan Kubelet. Nilainya dalam detik hingga masa berlaku sertifikat berakhir (negatif jika sudah habis masa berlakunya). Jika sertifikat penayangan tidak valid atau tidak digunakan, nilainya akan menjadi +INF. Diambil sampelnya setiap 30 detik.

 
kubelet_node_name
kubelet_node_name/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Nama node. Jumlahnya selalu 1. Diambil sampelnya setiap 30 detik.

node
kubelet_pleg_relist_duration_seconds
kubelet_pleg_relist_duration_seconds/histogram
CUMULATIVEDISTRIBUTIONs
prometheus_target
1.29.3-gke.1093000
Durasi dalam detik untuk listingan ulang pod di PLEG. Diambil sampelnya setiap 30 detik.

 
kubelet_pod_worker_duration_seconds
kubelet_pod_worker_duration_seconds/histogram
CUMULATIVEDISTRIBUTIONs
prometheus_target
1.29.3-gke.1093000
Durasi dalam detik untuk menyinkronkan satu pod. Dibagi menurut jenis operasi: membuat, memperbarui, atau menyinkronkan. Diambil sampelnya setiap 30 detik.

operation_type
kubelet_running_containers
kubelet_running_containers/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah penampung yang sedang berjalan. Diambil sampelnya setiap 30 detik.

container_state
kubelet_running_pods
kubelet_running_pods/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah pod yang memiliki sandbox pod yang berjalan. Diambil sampelnya setiap 30 detik.

 
kubelet_runtime_operations_total
kubelet_runtime_operations_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah kumulatif operasi runtime menurut jenis operasi. Diambil sampelnya setiap 30 detik.

operation_type
kubelet_volume_stats_available_bytes
kubelet_volume_stats_available_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah byte yang tersedia dalam volume. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim
kubelet_volume_stats_capacity_bytes
kubelet_volume_stats_capacity_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Kapasitas volume dalam byte. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes
kubelet_volume_stats_inodes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah inode maksimum dalam volume. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes_free
kubelet_volume_stats_inodes_free/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah inode bebas di volume. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes_used
kubelet_volume_stats_inodes_used/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah inode yang digunakan dalam volume. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim
kubelet_volume_stats_used_bytes
kubelet_volume_stats_used_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Jumlah byte yang digunakan dalam volume. Diambil sampelnya setiap 30 detik.

namespace
persistentvolumeclaim