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:
-
Di konsol Google Cloud, buka halaman Kubernetes clusters:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Kubernetes Engine.
Klik nama cluster Anda.
Di baris Fitur berlabel Cloud Monitoring, klik ikon Edit.
Pada dialog Edit Cloud Monitoring yang muncul, pastikan Enable Cloud Monitoring dipilih.
Di menu drop-down Components, pilih komponen cAdvisor/Kubelet yang metriknya ingin Anda kumpulkan:
- cAdvisor
- Kubelet
Klik Oke.
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:
CLUSTER_NAME
: nama cluster yang ada.COMPUTE_LOCATION
: Lokasi Compute Engine cluster.
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , s
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
|
|
GAUGE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , s
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
|
|
CUMULATIVE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , By
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
|
|
GAUGE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , By
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
CUMULATIVE , DISTRIBUTION , s
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
|
|
CUMULATIVE , DISTRIBUTION , s
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
CUMULATIVE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
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
|
|
GAUGE , DOUBLE , 1
prometheus_target 1.29.3-gke.1093000 |
Jumlah byte yang digunakan dalam volume. Diambil sampelnya setiap 30 detik.namespace
persistentvolumeclaim
|