Gunakan PrometheusRule untuk membuat aturan peringatan sebagai kode di Managed Service for Prometheus.
Latar Belakang
PrometheusRule adalah Custom Resource Definition (CRD) dari Prometheus Operator untuk peringatan. PrometheusRule mendefinisikan aturan peringatan dan pencatatan Prometheus. Di kluster Kubernetes yang menggunakan Prometheus Operator, buat peringatan dengan menerapkan PrometheusRules. Pendekatan Monitoring as Code ini terintegrasi dengan alur kerja DevOps berbasis GitOps.
Managed Service for Prometheus mendukung peringatan berbasis PrometheusRule bersamaan dengan manajemen peringatan visual bawaannya di konsol Managed Service for Prometheus.
Catatan Penggunaan
Managed Service for Prometheus mendukung dua metode untuk membuat aturan peringatan dengan PrometheusRule.
-
Impor PrometheusRules sebagai templat aturan peringatan untuk membuat dan memperbarui peringatan secara batch dari konsol. Metode 1: Impor PrometheusRules ke dalam templat aturan peringatan.
-
Aktifkan sinkronisasi PrometheusRule di plug-in Managed Service for Prometheus untuk konfigurasi peringatan Monitoring as Code. Paling cocok untuk alur kerja GitOps. Metode 2: Aktifkan plug-in untuk menyinkronkan aturan peringatan PrometheusRule.
Secara default, Managed Service for Prometheus tidak membaca PrometheusRules yang dibuat di Kubernetes. Pilih salah satu metode sesuai kebutuhan Anda.
Metode 1: Impor PrometheusRules ke dalam templat aturan peringatan
Manfaat
Fitur Buat templat aturan peringatan Prometheus di Managed Service for Prometheus memungkinkan Anda mengonfigurasi satu templat aturan peringatan dan menerapkannya di berbagai wilayah dan kluster.
Dengan Managed Service for Prometheus, impor PrometheusRules sebagai templat peringatan secara batch, bukan membuat aturan untuk setiap kluster secara individual.
Prosedur
-
Masuk ke Cloud Monitor console.
-
Di panel navigasi kiri, klik Alert Rule Templates.
-
Di pojok kiri bawah halaman Prometheus Alert Rule Templates, klik Batch Import Templates.
-
Di kotak dialog Import, tempel konten spec PrometheusRule ke dalam kotak teks, lalu klik Import Alert Rule Template.
Contoh: Area yang ditandai dengan ① pada gambar berikut menunjukkan konten spec dari contoh PrometheusRule:

Tempel konten spec (①) ke dalam kotak dialog Import dan klik Import Alert Rule Template, seperti yang ditunjukkan pada gambar berikut:

Setelah impor berhasil, pilih templat yang telah diimpor. Di pojok kiri bawah halaman Prometheus Alert Rule Templates, klik Batch Apply Templates untuk menerapkannya pada aturan peringatan Prometheus Anda.
Metode 2: Aktifkan plug-in Managed Service for Prometheus untuk menyinkronkan aturan peringatan PrometheusRule
Skenario
-
Anda menggunakan GitOps atau sistem serupa untuk mengonfigurasi peringatan dengan pendekatan Monitoring as Code.
-
Anda ingin membuat peringatan berbasis PrometheusRule untuk kluster ACK yang terhubung ke Managed Service for Prometheus. Tidak berlaku untuk ACS.
Prosedur
Masuk ke ACK console. Di panel navigasi kiri, klik Clusters.
-
Di halaman Clusters, temukan kluster tujuan dan klik Application Management di kolom Actions.
-
Di halaman Stateless, atur namespace ke arms-prom. Di kolom Name, temukan deployment yang namanya diawali dengan arms-prometheus, misalnya arms-prometheus-ack-arms-prometheus. Lalu, klik Edit di kolom Actions.

-
Di halaman Edit, pada area Lifecycle, konfigurasikan Parameters untuk Start Execution dengan menambahkan
--alert=trueke dalam kotak teks Parameters, lalu di pojok kanan atas halaman Edit, klik Update.
Setelah plug-in Managed Service for Prometheus diperbarui, tunggu 3 hingga 5 menit. Di halaman Alert Rule List di konsol Managed Service for Prometheus, status semua peringatan berubah menjadi Enabled.
Setelah sinkronisasi PrometheusRule diaktifkan untuk suatu kluster, jangan mengubah aturan peringatan yang telah disinkronkan di konsol Managed Service for Prometheus. Perubahan melalui konsol dapat menyebabkan perilaku tak terduga. Misalnya, Anda tidak dapat melakukan operasi seperti mengubah nama aturan atau menghapus aturan melalui konsol. Selain itu, mengubah aturan ini di konsol Managed Service for Prometheus akan mengganggu mekanisme Monitoring as Code, sehingga aturan tidak lagi tersinkronisasi dengan sistem O&M eksternal seperti GitOps.
Langkah Selanjutnya
Setelah Anda mengaktifkan fitur peringatan untuk plug-in Managed Service for Prometheus, plug-in Managed Service for Prometheus akan membuat aturan peringatan bawaan di namespace arms-prom. Buat aturan peringatan Prometheus .
Untuk menonaktifkan aturan peringatan bawaan dari plug-in Managed Service for Prometheus, ubah parameter defaultAlert:
Parameter defaultAlert mengontrol pembuatan otomatis peringatan default. Atur ke true untuk mengaktifkan atau false untuk menonaktifkan.
-
Atur parameter
defaultAlertdari plug-in Managed Service for Prometheus kefalse.Masuk ke ACK console. Di panel navigasi kiri, klik Clusters.
-
Di halaman Clusters, temukan kluster tujuan dan klik Application Management di kolom Actions.
-
Di halaman Stateless, atur namespace ke arms-prom. Di kolom Name, temukan deployment yang namanya diawali dengan arms-prom. Lalu, klik Edit di kolom Actions.
-
Di area Lifecycle pada halaman Edit, tambahkan
--defaultAlert=falseke dalam kotak teks Parameters di bawah Start Execution, lalu klik Update di pojok kanan atas halaman Edit.
CatatanSetelah plug-in Managed Service for Prometheus diperbarui, tunggu 3 hingga 5 menit. Managed Service for Prometheus tidak lagi membuat peringatan default untuk kluster tersebut.
-
Opsi:Hapus aturan peringatan default.
-
Masuk ke Managed Service for Prometheus console.
-
Di panel navigasi kiri, klik Instances.
-
Klik nama instans Prometheus untuk kluster Kubernetes tujuan.
-
Di panel navigasi kiri, klik Alert Rules. Di halaman Prometheus Alert Rules, temukan aturan peringatan yang ingin dihapus dan klik Delete di kolom Actions. Di kotak dialog yang muncul, klik OK.
-