Mengonfigurasi pemantauan aplikasi otomatis untuk workload


Anda dapat menghemat waktu dan tenaga untuk mengonfigurasi dan memelihara aplikasi monitoring yang berjalan di Google Kubernetes Engine (GKE) dengan mengaktifkan pemantauan aplikasi otomatis untuk workload yang didukung.

Cara kerja pemantauan aplikasi otomatis

Saat Anda mengaktifkan pemantauan aplikasi otomatis, GKE mendeteksi instance beban kerja yang didukung yang di-deploy dan men-deploy resource PodMonitoring untuk setiap instance beban kerja yang terdeteksi.

Pemantauan aplikasi otomatis juga menginstal dasbor siap pakai untuk memantau aplikasi. Metrik dikumpulkan oleh Google Cloud Managed Service for Prometheus.

Workload yang didukung

Pemantauan aplikasi otomatis mendukung beban kerja berikut:

Untuk mengetahui informasi selengkapnya tentang solusi visibilitas siap pakai lainnya yang dapat Anda konfigurasikan secara manual, lihat Pengantar konfigurasi eksportir dalam dokumentasi Google Cloud Observability.

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 pemantauan aplikasi otomatis

Untuk mengaktifkan pemantauan aplikasi otomatis, cluster GKE Anda harus memenuhi persyaratan berikut:

  • Cluster Anda harus menjalankan GKE versi 1.28 atau yang lebih baru.
  • Anda harus memiliki gcloud CLI versi 492.0.0 atau yang lebih baru.
  • Cluster Anda harus mengaktifkan koleksi terkelola Google Cloud Managed Service for Prometheus. Koleksi terkelola Google Cloud Managed Service for Prometheus diaktifkan secara default untuk cluster baru.

Mengaktifkan pemantauan aplikasi otomatis

Anda dapat mengaktifkan pemantauan aplikasi otomatis untuk cluster GKE baru atau yang sudah ada menggunakan konsol Google Cloud, Google Cloud CLI, atau GKE API.

Pengambilan metrik memerlukan waktu hingga 10 menit untuk dimulai bagi beban kerja yang didukung setelah Anda men-deploy beban kerja baru atau setelah Anda mengaktifkan pemantauan aplikasi otomatis untuk cluster.

Konsol

Untuk mengaktifkan pemantauan aplikasi otomatis bagi cluster baru, lakukan langkah berikut:

  1. Buka halaman Google Kubernetes Engine di konsol Google Cloud.

    Buka Google Kubernetes Engine

  2. Klik Create, lalu di bagian Standard atau Autopilot, klik Configure.

  3. Untuk cluster mode Autopilot, klik Setelan lanjutan. Untuk cluster mode Standar, klik Fitur.

  4. Di bagian Operations, pilih Enable automatic application monitoring.

  5. Klik Create.

Anda juga dapat mengaktifkan pemantauan aplikasi otomatis untuk cluster yang ada dengan memperbarui kolom Enable automatic application monitoring di bagian Operations pada tab Cluster Details.

gcloud

Untuk mengaktifkan pemantauan aplikasi otomatis untuk cluster baru, gunakan opsi --auto-monitoring-scope=ALL:

gcloud beta container clusters create-auto CLUSTER_NAME \
    --location=COMPUTE_LOCATION \
    --auto-monitoring-scope=ALL

Ganti kode berikut:

Anda juga dapat memperbarui cluster yang ada menggunakan perintah gcloud beta container clusters update.

API

Untuk mengaktifkan pemantauan aplikasi otomatis untuk cluster baru, buat permintaan POST ke metode clusters.create:

POST https://container.googleapis.com/v1/projects/PROJECT_ID/locations/COMPUTE_LOCATION/clusters

{
  "cluster": {
    "name": CLUSTER_NAME
    "initialNodeCount": 1,
    "monitoringConfig": {
      "managedPrometheusConfig": {
        "enabled": true,
        "autoMonitoringConfig": {
          "scope": ALL
        }
      }
    }
  }
}

Ganti kode berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • CLUSTER_NAME: nama cluster baru.
  • COMPUTE_LOCATION: Lokasi Compute Engine untuk cluster.

Menentukan apakah pemantauan aplikasi otomatis diaktifkan

Anda dapat menentukan apakah pemantauan aplikasi otomatis diaktifkan atau dinonaktifkan untuk cluster menggunakan konsol Google Cloud, gcloud CLI, atau GKE API.

Konsol

Lakukan tindakan berikut:

  1. Buka halaman Google Kubernetes Engine di Konsol Google Cloud:

    Buka Google Kubernetes Engine

  2. Di daftar cluster, klik nama cluster.

  3. Di bagian Fitur, kolom Pemantauan aplikasi otomatis menunjukkan apakah pemantauan aplikasi otomatis diaktifkan atau dinonaktifkan.

gcloud

Jelaskan cluster:

gcloud container clusters describe CLUSTER_NAME \
    --location=COMPUTE_LOCATION \
    --format='value(monitoringConfig.managedPrometheusConfig.autoMonitoringConfig.scope)'

Ganti kode berikut:

Outputnya mirip dengan hal berikut ini:

autoMonitoringConfig.scope: ALL

Dalam output, jika nilai kolom autoMonitoringConfig.scope adalah ALL, pemantauan aplikasi otomatis akan diaktifkan. Jika tidak, pemantauan aplikasi otomatis akan dinonaktifkan.

API

Buat permintaan GET ke metode clusters.get:

GET https://container.googleapis.com/v1/projects/PROJECT_ID/locations/COMPUTE_LOCATION/clusters/CLUSTER_NAME

Ganti kode berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • CLUSTER_NAME: nama cluster.
  • COMPUTE_LOCATION: Lokasi Compute Engine untuk cluster.

Outputnya mirip dengan hal berikut ini:

autoMonitoringConfig.scope: ALL

Dalam output, jika nilai kolom autoMonitoringConfig.scope adalah ALL, pemantauan aplikasi otomatis akan diaktifkan. Jika tidak, pemantauan aplikasi otomatis akan dinonaktifkan.

Lihat dasbor

Saat Anda mengaktifkan pemantauan aplikasi otomatis, GKE akan menginstal dasbor siap pakai untuk memantau aplikasi untuk workload yang didukung yang di-deploy ke cluster Anda. Anda tidak akan melihat dasbor untuk beban kerja yang didukung yang belum pernah berjalan di cluster.

Untuk melihat dasbor dengan telemetri dari beban kerja yang dipantau secara otomatis di halaman Google Kubernetes Engine, lakukan tindakan berikut:

  1. Buka halaman Google Kubernetes Engine di Konsol Google Cloud:

    Buka Google Kubernetes Engine

  2. Klik nama cluster tempat Anda ingin melihat dasbor untuk workload yang dipantau secara otomatis.

  3. Klik tab Kemampuan observasi. Bagian Integrasi menampilkan dasbor yang dikonfigurasi untuk beban kerja yang didukung yang berjalan di cluster.

Untuk melihat dasbor dengan telemetri dari beban kerja yang dipantau secara otomatis di halaman Cloud Monitoring, lakukan tindakan berikut:

  1. Buka halaman Dasbor.

    Buka Dashboards

  2. Klik tab Dashboard List.

  3. Pilih kategori Integrasi.

  4. Klik nama dasbor. Misalnya, Ringkasan Prometheus RabbitMQ.

Menonaktifkan pemantauan aplikasi otomatis

Jika Anda menonaktifkan pemantauan aplikasi otomatis di cluster, resource PodMonitoring yang dibuat GKE akan tetap utuh dan GKE akan terus memantau workload yang didukung yang ada. GKE berhenti memantau instance baru workload yang didukung yang Anda deploy ke cluster secara otomatis. Untuk berhenti memantau workload yang didukung yang ada, Anda harus menghapus resource PodMonitoring yang dibuat GKE. Jika Anda mengaktifkan kembali pemantauan aplikasi otomatis untuk cluster, GKE akan mendeteksi dan merekonsiliasi resource PodMonitoring yang sebelumnya dibuat.

Anda dapat menonaktifkan pemantauan aplikasi otomatis untuk cluster menggunakan konsol Google Cloud, gcloud CLI, atau GKE API.

Konsol

  1. Buka halaman Google Kubernetes Engine di Konsol Google Cloud:

    Buka Google Kubernetes Engine

  2. Klik nama cluster.

  3. Dalam daftar Fitur, temukan kolom Pemantauan aplikasi otomatis.

  4. Klik Edit.

  5. Batalkan pilihan Aktifkan pemantauan aplikasi otomatis.

  6. Klik Simpan.

gcloud

Update cluster menggunakan opsi --auto-monitoring-scope=NONE:

gcloud beta container clusters update CLUSTER_NAME \
    --location=COMPUTE_LOCATION \
    --auto-monitoring-scope=NONE

Ganti kode berikut:

API

Buat permintaan PUT ke metode clusters.update:

PUT https://container.googleapis.com/v1/projects/PROJECT_ID/locations/COMPUTE_LOCATION/clusters/CLUSTER_NAME

{
  "update": {
    "desiredMonitoringConfig": {
      "managedPrometheusConfig": {
        "autoMonitoringConfig": {
          "scope": NONE
        }
      }
    }
  }
}

Ganti kode berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • CLUSTER_NAME: nama cluster.
  • COMPUTE_LOCATION: Lokasi Compute Engine untuk cluster.

Menyesuaikan pemantauan otomatis untuk workload yang didukung

Anda dapat menyesuaikan konfigurasi pemantauan untuk setiap instance workload yang didukung atau memilih untuk tidak memantau setiap instance workload yang didukung.

Untuk menyesuaikan resource PodMonitoring untuk instance workload yang di-deploy dan didukung tanpa memengaruhi pemantauan aplikasi otomatis untuk workload lain, Anda harus mengecualikan instance dari pemantauan aplikasi otomatis, lalu memperbarui konfigurasi atau mengganti resource PodMonitoring yang terkait dengan instance workload target.

Jika Anda memperbarui atau menghapus resource PodMonitoring yang dibuat GKE tanpa mengecualikan workload terkait, GKE akan memulihkan resource PodMonitoring untuk memastikan kontinuitas saat memantau workload lain yang didukung.

Menemukan resource PodMonitoring untuk workload

Anda dapat mengidentifikasi resource PodMonitoring yang dibuat GKE untuk beban kerja menggunakan Konsol Google Cloud:

  1. Buka halaman Object browser.

    Buka Object browser

  2. Di kolom Cluster, masukkan nama cluster.

  3. Di kolom Namespace, masukkan nama namespace.

  4. Di filter Jenis Objek, pilih PodMonitoring.

  5. Di bagian monitoring.googleapis.com, pilih PodMonitoring.

  6. Klik nama objek untuk memeriksa objek tersebut. Label metadata source:gke-auto-monitoring menunjukkan bahwa GKE membuat resource PodMonitoring.

Mengecualikan instance yang di-deploy dari pemantauan otomatis

Jika tidak ingin memantau instance yang di-deploy dari workload yang didukung, atau jika ingin menyesuaikan konfigurasi pemantauan workload, Anda dapat mengecualikan workload dari pemantauan aplikasi otomatis.

Untuk mengecualikan beban kerja, Anda harus menambahkan label metadata allow-gke-auto-monitoring: false ke konfigurasi beban kerja target. Misalnya, manifes berikut menjelaskan StatefulSet RabbitMQ yang tidak dipantau oleh pemantauan aplikasi otomatis:

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: rabbitmq
  allow-gke-auto-monitoring: false
spec:
  serviceName: rabbitmq
  replicas: 3

Setelah mengecualikan instance workload, Anda dapat menghapus resource PodMonitoring yang dibuat GKE untuk workload tersebut. GKE tidak mencoba memulihkan resource PodMonitoring jika Anda menghapus atau mengubahnya. Jika Anda men-deploy workload baru dengan label metadata allow-gke-auto-monitoring: false, GKE tidak akan membuat resource PodMonitoring untuk workload tersebut.

Menghapus konfigurasi pemantauan untuk beban kerja

Jika ingin berhenti memantau beban kerja atau jika ingin men-deploy resource PodMonitoring yang disesuaikan sendiri untuk beban kerja, Anda dapat menghapus konfigurasi pemantauan.

Untuk menghapus konfigurasi pemantauan aplikasi otomatis dari setiap beban kerja, lakukan tindakan berikut:

  1. Kecualikan beban kerja dari pemantauan aplikasi otomatis.
  2. Identifikasi resource PodMonitoring yang dibuat GKE untuk beban kerja.
  3. Hapus resource PodMonitoring:

    kubectl delete podmonitoring POD_MONITORING_NAME -n NAMESPACE
    

    Ganti kode berikut:

    • POD_MONITORING_NAME: nama resource PodMonitoring.
    • NAMESPACE: namespace resource PodMonitoring.

Untuk menghapus konfigurasi pemantauan aplikasi otomatis dari semua beban kerja dalam cluster, lakukan tindakan berikut:

  1. Nonaktifkan pemantauan aplikasi otomatis.
  2. Hapus semua resource PodMonitoring di cluster dengan label metadata source:gke-auto-monitoring:

    kubectl delete podmonitorings -l source=gke-auto-monitoring --all-namespaces
    

Harga

Konfigurasi pemantauan aplikasi otomatis dan penginstalan dasbor siap pakai untuk workload yang didukung oleh pemantauan aplikasi otomatis tersedia tanpa biaya tambahan. Namun, Monitoring mengenakan biaya untuk penyerapan metrik oleh Google Cloud Managed Service for Prometheus sesuai dengan harga Monitoring.

Langkah selanjutnya