Mengonfigurasi logging dan pemantauan untuk GKE

Google Kubernetes Engine (GKE) mencakup integrasi dengan Cloud Logging dan Cloud Monitoring.

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:

  • Membuat cluster baru dan mengonfigurasi Cloud Logging dan Cloud Monitoring

  • Pilih log dan metrik yang akan dikumpulkan.

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.

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:
  • Semua Pod yang berjalan di namespace kube-system, istio-system, knative-serving, gke-system, dan config-management-system.
  • Layanan utama yang tidak berada dalam container, termasuk runtime docker/containerd, kubelet, kubelet-monitor, node-problem-detector, dan kube-container-runtime-monitor.
  • Output port serial node, jika metadata instance VM serial-port-logging-enable ditetapkan ke true.

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.

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.

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.

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 tentang cara membuat cluster GKE, lihat dokumentasi untuk membuat cluster Autopilot.

Untuk mengonfigurasi logging dan pemantauan secara manual saat membuat cluster GKE, lakukan langkah-langkah berikut:

Konsol

Untuk cluster Autopilot:

  1. Di halaman pembuatan cluster Autopilot, dari panel navigasi, klik Advanced settings.

    Membuat cluster Autopilot

  2. 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.

  3. Klik Create.

Terraform

  • Untuk mengonfigurasi kumpulan log dan metrik menggunakan Terraform, lihat blok logging_config dan monitoring_config di registry Terraform untuk google_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:

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

    Buka cluster Kubernetes

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil dengan subjudul Kubernetes Engine.

  2. Di panel Details cluster Anda, lihat status Cloud Logging dan Cloud Monitoring.

Mengubah cluster Anda

Untuk mengubah setelan integrasi Cloud Logging atau Cloud Monitoring untuk cluster yang sudah ada, ikuti langkah-langkah berikut:

Konsol

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

    Buka cluster Kubernetes

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil dengan subjudul Kubernetes Engine.

  2. Klik nama cluster Anda.

  3. Untuk mengubah log yang dikirim ke Cloud Logging atau metrik yang dikirim ke Cloud Monitoring, klik Edit di samping Cloud Logging atau Cloud Monitoring.

  4. 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.

Terraform

  • Untuk mengonfigurasi kumpulan log dan metrik menggunakan Terraform, lihat blok logging_config dan monitoring_config di registry Terraform untuk google_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