Google Kubernetes Engine (GKE) mencakup integrasi dengan Cloud Logging dan Cloud Monitoring, termasuk Google Cloud Managed Service for Prometheus.
Integrasi ini memungkinkan Anda memantau cluster GKE yang sedang dijalankan, mengelola sistem dan log debug, serta menganalisis performa sistem menggunakan kemampuan profiling dan pelacakan lanjutan.
Log keamanan, termasuk log audit dasar, tersedia untuk GKE dan sebagian besar layanan Google Cloud lainnya bahkan saat Cloud Logging tidak diaktifkan untuk cluster GKE. Untuk mengetahui informasi selengkapnya, lihat Cloud Audit Logs.
Halaman ini menjelaskan cara melakukan hal berikut:
Buat cluster baru dan konfigurasikan Cloud Logging, Cloud Monitoring, dan Google Cloud Managed Service for Prometheus.
Pilih log dan metrik yang akan dikumpulkan.
Menonaktifkan Cloud Logging, Cloud Monitoring, dan Google Cloud Managed Service for Prometheus untuk cluster.
Untuk cluster GKE Autopilot, Anda tidak dapat menonaktifkan integrasi Cloud Logging dan Cloud Monitoring.
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
initialize
gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan
gcloud components update
.
Pastikan Anda adalah Pemilik project yang berisi cluster Anda.
Pastikan Anda telah mengaktifkan Cloud Logging API. Anda dapat memeriksa status Cloud Logging API dari halaman Ringkasan.
Log dan metrik
Anda dapat memilih untuk mengirim log dan metrik dari cluster GKE ke Cloud Logging dan Cloud Monitoring atau tidak. Bagian berikut menjelaskan log dan metrik yang tersedia, serta log dan metrik yang diaktifkan secara default pada waktu pembuatan cluster.
Log yang tersedia
Jika memilih untuk mengirim log ke Cloud Logging, Anda harus mengirim log sistem, dan Anda dapat mengirim log secara opsional dari sumber tambahan.
Pelajari harga Cloud Logging.
Tabel berikut menunjukkan nilai yang didukung untuk flag --logging
untuk perintah create dan update.
Sumber Log | Nilai --logging |
Log yang Dikumpulkan |
---|---|---|
Tidak ada | NONE |
Tidak ada log yang dikirim ke Cloud Logging; tidak ada agen pengumpulan log yang diinstal di cluster. Nilai ini tidak didukung untuk cluster GKE Autopilot. |
Image | SYSTEM |
Mengumpulkan log dari berikut ini:
Selain itu, mengumpulkan peristiwa Kubernetes. Nilai ini diperlukan untuk semua jenis cluster. |
Beban kerja | WORKLOAD |
Semua log yang dibuat oleh container non-sistem yang berjalan pada node pengguna. Nilai ini aktif secara default, tetapi bersifat opsional untuk semua jenis cluster. |
Server API | API_SERVER |
Semua log yang dibuat oleh kube-apiserver . Nilai ini bersifat opsional untuk semua jenis cluster. |
Scheduler | SCHEDULER |
Semua log yang dibuat oleh kube-scheduler . Nilai ini bersifat opsional untuk semua jenis cluster. |
Controller Manager | CONTROLLER_MANAGER |
Semua log yang dibuat oleh kube-controller-manager . Nilai ini bersifat opsional untuk semua jenis cluster. |
Metrik yang tersedia
Jika memilih untuk mengirim metrik ke Cloud Monitoring, Anda harus mengirim metrik sistem dan dapat mengirim metrik tambahan secara opsional.
Pelajari harga Cloud Monitoring, termasuk metrik yang tidak dikenai biaya.
Tabel berikut menunjukkan nilai yang didukung untuk flag --monitoring
untuk
perintah create dan
update.
Sumber | Nilai --monitoring |
Metrik yang Dikumpulkan |
---|---|---|
Tidak ada | NONE |
Tidak ada metrik yang dikirim ke Cloud Monitoring; tidak ada agen pengumpulan metrik yang diinstal di cluster. Nilai ini tidak didukung untuk cluster GKE Autopilot. |
Sistem | SYSTEM |
Metrik dari komponen sistem penting yang diperlukan untuk Kubernetes. Untuk mengetahui daftar lengkap metrik, lihat Metrik Kubernetes. |
Server API | API_SERVER |
Metrik dari kube-apiserver .
Untuk daftar lengkap metrik, lihat
Metrik server API. |
Penjadwal | SCHEDULER |
Metrik dari kube-scheduler .
Untuk mengetahui daftar lengkap metrik, lihat
Metrik penjadwal. |
Pengelola Pengontrol | CONTROLLER_MANAGER |
Metrik dari kube-controller-manager .
Untuk daftar lengkap metrik, lihat
Metrik Pengelola Pengontrol. |
Volume persisten (Penyimpanan) | STORAGE |
Metrik penyimpanan dari kube-state-metrics .
Mencakup metrik untuk Klaim Volume Persisten dan Volume Persisten.
Untuk daftar lengkap metrik, lihat
Metrik penyimpanan.
|
Pod | POD |
Metrik pod dari kube-state-metrics .
Untuk daftar lengkap metrik, lihat
Metrik pod.
|
Deployment | DEPLOYMENT |
Metrik deployment dari kube-state-metrics .
Untuk daftar lengkap metrik, lihat
Metrik deployment.
|
StatefulSet | STATEFULSET |
Metrik StatefulSet dari kube-state-metrics .
Untuk daftar lengkap metrik, lihat
Metrik StatefulSet. |
DaemonSet | DAEMONSET |
Metrik DaemonSet dari kube-state-metrics .
Untuk mengetahui daftar lengkap metrik, lihat
Metrik DaemonSet.
|
HorizonalPodAutoscaler | HPA |
Metrik HPA dari kube-state-metrics .
Lihat daftar lengkap
metrik HorizonalPodAutoscaler.
|
cAdvisor | CADVISOR |
Metrik cAdvisor dari paket metrik cAdvisor/Kubelet. Untuk daftar lengkap metrik, lihat metrik cAdvisor. |
Kubelet | KUBELET |
Metrik kubelet dari cAdvisor/Kubelet Untuk mengetahui daftar lengkap metrik, lihat paket metrik. Metrik Kubelet. |
Selain itu, Anda dapat mengumpulkan metrik bergaya Prometheus yang diekspos oleh workload GKE menggunakan Google Cloud Managed Service for Prometheus. Dengan begitu, Anda dapat memantau dan membuat pemberitahuan terkait workload, menggunakan Prometheus, tanpa harus mengelola dan mengoperasikan Prometheus secara manual dalam skala besar.
Log dan metrik diaktifkan secara default
Saat Anda membuat cluster GKE baru di Google Cloud, beberapa log dan metrik diaktifkan secara default saat pembuatan cluster.
- Log dan metrik sistem diaktifkan untuk semua jenis cluster, dan tidak dapat dinonaktifkan.
- Log workload diaktifkan secara default untuk semua cluster Autopilot, tetapi dapat dinonaktifkan. Sebaiknya jangan nonaktifkan log beban kerja karena dampaknya pada dukungan.
- Untuk project edisi GKE Enterprise, log dan metrik tambahan yang berguna akan diaktifkan secara default jika Anda mendaftar ke fleet saat membuat cluster. Jika ingin mengaktifkan log dan metrik tersebut setelah cluster dibuat, lihat Mengubah cluster Anda.
Dalam tabel berikut, tanda centang () menunjukkan log dan metrik yang diaktifkan secara default saat Anda membuat dan mendaftarkan cluster baru dalam project yang mengaktifkan GKE Enterprise:
Log
Nama log | Autopilot | Standar |
---|---|---|
Image | ||
Beban kerja | - |
|
Server API | ||
Scheduler | ||
Controller Manager |
Log bidang kontrol (server API, Scheduler, dan Controller Manager) dikenai biaya Cloud Logging.
Metrik
Nama metrik | Autopilot | Standar |
---|---|---|
Image | ||
Server API | ||
Scheduler | ||
Controller Manager | ||
Volume persisten (Penyimpanan) | ||
Pod | ||
Deployment | ||
StatefulState | ||
DaemonSet | ||
HorizonalPodAutoscaler | ||
cAdvisor | ||
Kubelet |
Semua cluster terdaftar dalam project yang mengaktifkan GKE Enterprise dapat menggunakan paket untuk metrik bidang kontrol, metrik status Kube, dan metrik cAdvisor/Kubelet tanpa biaya tambahan. Jika tidak, metrik ini akan dikenai biaya Cloud Monitoring.
Anda dapat memilih untuk menonaktifkan log dan metrik default selama pembuatan cluster atau setelah cluster dibuat.
Mengonfigurasi pemantauan dan logging untuk cluster baru
Petunjuk pembuatan cluster di bagian ini hanya mencakup opsi yang relevan dengan Cloud Logging dan Cloud Monitoring. Untuk mengetahui petunjuk lengkap cara membuat cluster GKE, lihat dokumentasi untuk membuat cluster Standard atau Autopilot.
Untuk mengonfigurasi logging dan pemantauan secara manual saat membuat cluster GKE, selesaikan langkah-langkah berikut:
Konsol
Untuk cluster Autopilot:
Di halaman pembuatan cluster Autopilot, dari panel navigasi, klik Advanced settings.
Di daftar Operations, pilih log dan metrik yang ingin Anda kumpulkan.
Dalam daftar Components untuk Cloud Logging, pilih komponen yang lognya ingin Anda kumpulkan.
Dalam daftar Components untuk Cloud Monitoring, pilih komponen yang metriknya ingin Anda kumpulkan.
Cluster autopilot selalu menggunakan praktik terbaik Google untuk pengumpulan telemetri, yang berarti bahwa logging sistem dan workload selalu diaktifkan dan pemantauan sistem selalu diaktifkan.
Klik Create.
Untuk cluster Standar:
Di halaman pembuatan cluster Standar, dari panel navigasi, pada Cluster, klik Features.
Di daftar Operations, pilih log dan metrik yang ingin Anda kumpulkan.
Dalam daftar Components untuk Cloud Logging, pilih komponen yang lognya ingin Anda kumpulkan.
Dalam daftar Components untuk Cloud Monitoring, pilih komponen yang metriknya ingin Anda kumpulkan.
Untuk menonaktifkan Cloud Logging (kecuali untuk log audit), hapus centang pada kotak Enable Cloud Logging.
Untuk menonaktifkan Cloud Monitoring, hapus centang pada kotak Enable Cloud Monitoring.
Untuk menonaktifkan Google Cloud Managed Service for Prometheus, hapus centang pada kotak Aktifkan Google Cloud Managed Service for Prometheus.
gcloud
Untuk cluster baru, Cloud Logging dan Cloud Monitoring diaktifkan secara default. Untuk membuat cluster, jalankan perintah berikut:
gcloud container clusters create CLUSTER_NAME \ --location=COMPUTE_LOCATION
Ganti kode berikut:
CLUSTER_NAME
: nama cluster Anda.COMPUTE_LOCATION
: lokasi Compute Engine untuk cluster.
Atau, Anda dapat mengonfigurasi log yang akan dikirim ke Cloud Logging dengan meneruskan daftar nilai yang dipisahkan koma ke flag
--logging
perintahcreate
. Untuk mengumpulkan tidak ada log, teruskan--logging=NONE
. Untuk mengumpulkan log sistem, server API, Scheduler, dan Pengelola Pengontrol, teruskan--logging=SYSTEM,API_SERVER,SCHEDULER,CONTROLLER_MANAGER
. Untuk mengumpulkan log sistem dan beban kerja, teruskan--logging=SYSTEM,WORKLOAD
. Contoh:gcloud container clusters create CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --logging=SYSTEM,WORKLOAD
Demikian pula, Anda dapat mengonfigurasi metrik yang dikirim ke Cloud Monitoring dengan meneruskan daftar nilai yang dipisahkan koma ke flag
--monitoring
. Untuk tidak mengumpulkan metrik, teruskan--monitoring=NONE
. Untuk mengumpulkan metrik sistem, teruskan--monitoring=SYSTEM
. Untuk mengumpulkan semua metrik, teruskan--monitoring=SYSTEM,API_SERVER,SCHEDULER,CONTROLLER_MANAGER,STORAGE,POD,DEPLOYMENT,STATEFULSET,
DAEMONSET,HPA,CADVISOR,KUBELET
. Misalnya:gcloud container clusters create CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --monitoring=SYSTEM,API_SERVER,SCHEDULER,CONTROLLER_MANAGER,STORAGE,POD,DEPLOYMENT,STATEFULSET,DAEMONSET,HPA,CADVISOR,KUBELET
Secara terpisah, Anda dapat mengaktifkan Google Cloud Managed Service for Prometheus menggunakan flag
--enable-managed-prometheus
. Contoh:gcloud container clusters create CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --enable-managed-prometheus
Flag
--enable-managed-prometheus
memungkinkan kolektor terkelola, yang harus dikonfigurasi.
Terraform
Untuk mengonfigurasi kumpulan log dan metrik menggunakan Terraform, lihat blok
logging_config
danmonitoring_config
di registry Terraform untukgoogle_container_cluster
. Mengaktifkan kumpulan log dari server API, penjadwal, dan pengelola pengontrol memerlukan penyedia Google Cloud Terraform versi 4.44.0 atau yang lebih baru.Untuk mengetahui informasi umum tentang penggunaan Google Cloud dengan Terraform, baca artikel Terraform dengan Google Cloud.
Mengonfigurasi pemantauan dan logging untuk cluster yang ada
Bagian berikut menjelaskan cara memodifikasi integrasi Cloud Logging dan Cloud Monitoring untuk cluster GKE yang ada.
Mengubah dukungan pemantauan dan logging, serta mengubah versi Kubernetes cluster Anda adalah tindakan yang berbeda. Mengubah versi Kubernetes cluster Anda tidak mengubah dukungan pemantauan dan logging yang dikonfigurasi.
Dukungan pemantauan dan logging mana yang digunakan cluster saya?
Untuk melihat setelan integrasi Cloud Logging dan Cloud Monitoring untuk cluster Anda, ikuti langkah-langkah berikut:
-
Di konsol Google Cloud, buka halaman Cluster Kubernetes:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil dengan subjudul Kubernetes Engine.
Di panel Details cluster Anda, lihat status Cloud Logging, Cloud Monitoring, dan Google Cloud Managed Service for Prometheus.
Mengubah cluster Anda
Untuk mengubah setelan integrasi Cloud Logging atau Cloud Monitoring untuk cluster yang sudah ada, ikuti langkah-langkah berikut:
Konsol
-
Di konsol Google Cloud, buka halaman Cluster Kubernetes:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil dengan subjudul Kubernetes Engine.
Klik nama cluster Anda.
Untuk mengubah log yang dikirim ke Cloud Logging, metrik mana yang dikirim ke Cloud Monitoring, atau apakah Google Cloud Managed Service for Prometheus diaktifkan, klik Edit edit di samping Cloud Logging, Cloud Monitoring, atau Google Cloud Managed Service for Prometheus.
Klik Simpan.
gcloud
Petunjuk gcloud
berikut membahas upgrade dukungan pemantauan dan logging cluster Anda menggunakan perintah gcloud container clusters update
. Perhatikan bahwa Anda menggunakan perintah update
, bukan perintah upgrade
.
Konfigurasikan log yang dikirim ke Cloud Logging dengan meneruskan daftar nilai yang dipisahkan koma ke flag
--logging
perintahgcloud container clusters update
. Lihat daftar lengkap sumber log yang tersedia. Misalnya, untuk mengumpulkan log sistem dan beban kerja, teruskan--logging=SYSTEM,WORKLOAD
. Untuk mengumpulkan log sistem saja, teruskan--logging=SYSTEM
. Atau, untuk mengumpulkan tidak ada log, teruskan--logging=NONE
:gcloud container clusters update CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --logging=NONE
Konfigurasikan metrik yang dikirim ke Cloud Monitoring dengan meneruskan daftar nilai yang dipisahkan koma ke flag
--monitoring
perintahgcloud container clusters update
. Lihat daftar lengkap sumber metrik yang tersedia. Misalnya, untuk mengumpulkan metrik sistem, teruskan--monitoring=SYSTEM
. Atau, untuk tidak mengumpulkan metrik, teruskan--monitoring=NONE
:gcloud container clusters update CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --monitoring=NONE
Konfigurasi apakah Google Cloud Managed Service for Prometheus diaktifkan menggunakan flag
--enable-managed-prometheus
atau--disable-managed-prometheus
. Contoh:gcloud container clusters update CLUSTER_NAME \ --location=COMPUTE_LOCATION \ --enable-managed-prometheus
Terraform
Untuk mengonfigurasi kumpulan log dan metrik menggunakan Terraform, lihat blok
logging_config
danmonitoring_config
di registry Terraform untukgoogle_container_cluster
. Mengaktifkan pengumpulan log dari server API, penjadwal, dan pengelola pengontrol memerlukan penyedia Google Cloud Terraform versi 4.44.0 atau yang lebih baru.Untuk mengetahui informasi umum tentang penggunaan Google Cloud dengan Terraform, baca artikel Terraform dengan Google Cloud.
Langkah selanjutnya
- Pelajari biaya terkait Cloud Logging, Cloud Monitoring, dan Google Cloud Managed Service for Prometheus dengan membaca halaman Harga.
- Pelajari cara melihat log GKE Anda di Cloud Logging.