Mengonfigurasi pemantauan aplikasi otomatis untuk workload

Anda dapat menghemat waktu dan tenaga dalam mengonfigurasi dan memelihara aplikasi pemantauan 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 akan mendeteksi instance workload yang didukung yang di-deploy dan men-deploy PodMonitoring resource untuk setiap instance workload yang terdeteksi.

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

Workload yang didukung

Pemantauan aplikasi otomatis mendukung workload berikut:

Interval scraping metrik untuk server model AI adalah 15 detik. Untuk workload non-AI, interval scraping adalah 30 detik.

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

Sebelum memulai

Sebelum memulai, pastikan Anda telah melakukan tugas berikut:

  • Aktifkan Google Kubernetes Engine API.
  • Mengaktifkan 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 perintah gcloud components update. Versi gcloud CLI yang lebih lama mungkin tidak mendukung perintah yang dijalankan dalam dokumen ini.

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 Google Cloud konsol, Google Cloud CLI, atau GKE API.

Scraping metrik memerlukan waktu hingga 10 menit untuk dimulai untuk workload yang didukung setelah Anda men-deploy workload baru atau setelah Anda mengaktifkan pemantauan aplikasi otomatis untuk cluster.

Konsol

Untuk mengaktifkan pemantauan aplikasi otomatis untuk cluster baru, lakukan hal berikut:

  1. Di Google Cloud konsol, buka halaman Create an Autopilot cluster.

    Buka Create an Autopilot cluster

    Anda juga dapat menyelesaikan tugas ini dengan membuat cluster Standar.

  2. Untuk cluster mode Autopilot, klik Advanced settings. Untuk cluster mode Standar, klik Features.

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

  4. Klik Create.

Anda juga dapat mengaktifkan pemantauan aplikasi otomatis untuk cluster yang sudah 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 container clusters create-auto CLUSTER_NAME \
    --location=COMPUTE_LOCATION \
    --auto-monitoring-scope=ALL

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster baru.
  • COMPUTE_LOCATION: lokasi Compute Engine untuk cluster.

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

API

Untuk mengaktifkan pemantauan aplikasi otomatis untuk cluster baru, buat POST permintaan 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 Google Cloud konsol, gcloud CLI, atau GKE API.

Konsol

Lakukan tindakan berikut:

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

    Buka Google Kubernetes Engine

  2. Di daftar cluster, klik nama cluster.

  3. Di bagian Features, kolom Automatic application monitoring 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:

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

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.

Melihat dasbor

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

Dasbor dengan telemetri dari workload yang dipantau secara otomatis

Untuk melihat dasbor dengan telemetri dari workload yang dipantau secara otomatis di halaman Google Kubernetes Engine, lakukan hal berikut:

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

    Buka Google Kubernetes Engine

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

  3. Klik tab Observability. Bagian Integrations menampilkan dasbor yang dikonfigurasi untuk workload yang didukung yang berjalan di cluster.

Untuk melihat dasbor dengan telemetri dari workload yang dipantau secara otomatis di halaman Cloud Monitoring, lakukan hal berikut:

  1. Buka halaman Dashboards.

    Buka Dashboards

  2. Klik tab Dashboard List.

  3. Pilih kategori Integrations.

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

Dasbor untuk metrik kemampuan observasi AI/ML

Untuk melihat dasbor untuk metrik kemampuan observasi AI/ML, lakukan hal berikut:

  1. Di Google Cloud konsol, buka halaman Deployed Models:

    Buka Deployed Models

  2. Untuk melihat detail tentang deployment tertentu, termasuk metrik, log, dan dasbornya, klik nama model dalam daftar.

  3. Untuk melihat dasbor kemampuan observasi, klik tab Observability. Jika diminta, klik Enable untuk mengaktifkan pengumpulan metrik untuk cluster.

    • Dasbor Infrastructure usage menampilkan metrik penggunaan.
    • Dasbor DCGM menampilkan metrik NVIDIA Data Center GPU Manager (DCGM).
    • Jika deployment menggunakan vLLM, dasbor Model performance akan tersedia dan menampilkan metrik untuk performa model vLLM.

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 Google Cloud konsol, gcloud CLI, atau GKE API.

Konsol

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

    Buka Google Kubernetes Engine

  2. Klik nama cluster.

  3. Di daftar Features, temukan kolom Automatic application monitoring.

  4. Klik Edit.

  5. Batalkan pilihan Enable automatic application monitoring.

  6. Klik Save.

gcloud

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

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

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster.
  • COMPUTE_LOCATION: lokasi Compute Engine untuk cluster.

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 workload yang didukung

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

Untuk menyesuaikan resource PodMonitoring untuk instance workload yang didukung yang di-deploy tanpa memengaruhi pemantauan aplikasi otomatis 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 workload menggunakan Google Cloud konsol:

  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 Object Kinds, pilih PodMonitoring.

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

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

Mengecualikan instance yang di-deploy dari pemantauan otomatis

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

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

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

Setelah mengecualikan instance workload, Anda dapat menghapus resource PodMonitoring yang dibuat GKE untuk workload. 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 workload

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

Untuk menghapus konfigurasi pemantauan aplikasi otomatis dari setiap workload, lakukan hal berikut:

  1. Kecualikan workload dari pemantauan aplikasi otomatis.
  2. Identifikasi resource PodMonitoring yang dibuat GKE untuk workload.
  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 workload di cluster, lakukan hal 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 berikutnya