Untuk mengelola aturan peringatan dari beberapa instance Prometheus di berbagai wilayah, Anda dapat menggunakan fitur template aturan peringatan dari Alibaba Cloud Managed Service for Prometheus. Topik ini menjelaskan cara membuat dan mengelola template aturan peringatan untuk memastikan konsistensi dan efisiensi aturan peringatan.
Informasi latar belakang
Jika Anda secara terpisah membuat aturan peringatan untuk beberapa instance Prometheus lintas wilayah, beban kerja akan berat dan aturan peringatan sulit dikelola secara terpusat. Managed Service for Prometheus menyediakan fitur template aturan peringatan untuk membantu Anda membuat aturan peringatan untuk beberapa instance Prometheus dan mengelolanya secara terpusat. Ini mengurangi biaya pengelolaan aturan peringatan untuk beberapa instance Prometheus.
Buat template aturan peringatan
Masuk ke Konsol ARMS.
Di panel navigasi sisi kiri, pilih .
Pada halaman Template Aturan Peringatan Prometheus, klik Create Prometheus Alert Rule Template.
Pada halaman Create Prometheus Alert Rule Template, konfigurasikan parameter berikut.
Saat membuat template aturan peringatan, Anda dapat menyetel parameter Tipe Pemeriksaan ke Ambang Batas Statis atau PromQL Kustom.
Jika Anda menyetel Tipe Pemeriksaan ke Ambang Batas Statis, Anda dapat memilih metrik peringatan yang telah ditentukan sebelumnya dan membuat aturan peringatan untuk metrik tersebut.
Untuk memantau metrik selain yang telah ditentukan oleh sistem, Anda dapat menentukan pernyataan PromQL kustom untuk membuat aturan peringatan.

Tabel 1. Gunakan Metrik yang Telah Ditentukan Sebelumnya
Parameter
Deskripsi
Contoh
Nama Template
Masukkan nama untuk template aturan peringatan.
Penggunaan CPU kontainer klaster produksi - peringatan
Deskripsi Template
Opsional. Jelaskan template. Anda dapat memasukkan tujuan, skenario, atau catatan tentang template.
Tidak ada
Tipe Pemeriksaan
Pilih Ambang Batas Statis.
Ambang Batas Statis
Grup Kontak Peringatan
Pilih grup kontak peringatan.
Beban Kubernetes
Metrik Peringatan
Pilih metrik. Grup kontak peringatan yang berbeda menyediakan metrik yang berbeda.
Penggunaan CPU kontainer
Kondisi Peringatan
Tentukan kondisi berdasarkan mana acara peringatan dibuat.
Jika penggunaan CPU kontainer
lebih besar dari80%, sebuah acara peringatan dibuat.Kondisi Filter
Tentukan ruang lingkup berlaku aturan peringatan. Jika suatu sumber daya memenuhi baik kondisi filter maupun kondisi peringatan, sebuah acara peringatan dibuat.
Jenis kondisi filter berikut didukung:
Traverse: Aturan peringatan berlaku untuk semua sumber daya dalam instance Prometheus saat ini. Secara default, Traverse dipilih.
Equal: Jika Anda memilih kondisi filter ini, Anda harus memasukkan nama sumber daya. Aturan peringatan hanya berlaku untuk sumber daya yang ditentukan. Anda tidak dapat menentukan beberapa sumber daya pada saat yang sama.
Not equal: Jika Anda memilih kondisi filter ini, Anda harus memasukkan nama sumber daya. Aturan peringatan berlaku untuk sumber daya selain sumber daya yang ditentukan. Anda tidak dapat menentukan beberapa sumber daya pada saat yang sama.
Regex match: Jika Anda memilih kondisi filter ini, Anda harus memasukkan ekspresi reguler untuk mencocokkan nama sumber daya. Aturan peringatan yang Anda buat menggunakan template berlaku untuk semua sumber daya yang cocok dengan ekspresi reguler.
Regex not match: Jika Anda memilih kondisi filter ini, Anda harus memasukkan ekspresi reguler untuk mencocokkan nama sumber daya. Aturan peringatan berlaku untuk sumber daya yang tidak cocok dengan ekspresi reguler.
Alamat IP Instance: Traverse
Durasi
Jika kondisi peringatan terpenuhi, sebuah acara peringatan dibuat: Jika titik data mencapai ambang batas, sebuah acara peringatan dibuat.
Jika kondisi peringatan terus terpenuhi selama N menit, sebuah acara peringatan dibuat: Sebuah acara peringatan hanya dibuat jika durasi pencapaian ambang batas lebih besar dari atau sama dengan N menit.
1
Level Peringatan
Tentukan level peringatan. Nilai default: Default. Nilai valid: Default, P4, P3, P2, dan P1. Default menunjukkan tingkat keparahan terendah, sedangkan P1 menunjukkan tingkat keparahan tertinggi.
Default
Pesan Peringatan
Tentukan pesan peringatan yang ingin Anda kirim ke pengguna akhir. Anda dapat menentukan variabel kustom dalam pesan peringatan berdasarkan sintaks Go template.
Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Kontainer: {{$labels.container}} Penggunaan CPU: {{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%. Nilai saat ini: {{ printf "%.2f" $value }}%
Pengaturan Lanjutan
Tag
Tentukan tag untuk aturan peringatan. Tag yang ditentukan dapat digunakan untuk mencocokkan kebijakan notifikasi.
Tidak ada
Anotasi
Tentukan anotasi untuk aturan peringatan.
Tidak ada
Tabel 2. Gunakan Pernyataan PromQL Kustom
Parameter
Deskripsi
Contoh
Nama Template
Masukkan nama untuk template aturan peringatan.
Penggunaan CPU Pod melebihi 80%
Deskripsi Template
Opsional. Jelaskan template. Anda dapat memasukkan tujuan, skenario, atau catatan tentang template.
Tidak ada
Tipe Pemeriksaan
Pilih PromQL Kustom.
PromQL Kustom
Pernyataan PromQL Kustom
Masukkan pernyataan PromQL.
max(container_fs_usage_bytes{pod!="", namespace!="arms-prom",namespace!="monitoring"}) by (pod_name, namespace, device)/max(container_fs_limit_bytes{pod!=""}) by (pod_name,namespace, device) * 100 > 90
Durasi
Jika kondisi peringatan terpenuhi, sebuah acara peringatan dibuat: Jika titik data mencapai ambang batas, sebuah acara peringatan dibuat.
Jika kondisi peringatan terus terpenuhi selama N menit, sebuah acara peringatan dibuat: Sebuah acara peringatan hanya dibuat jika durasi pencapaian ambang batas lebih besar dari atau sama dengan N menit.
1
Level Peringatan
Tentukan level peringatan. Nilai default: Default. Nilai valid: Default, P4, P3, P2, dan P1. Default menunjukkan tingkat keparahan terendah, sedangkan P1 menunjukkan tingkat keparahan tertinggi.
Default
Pesan Peringatan
Tentukan pesan peringatan yang ingin Anda kirim ke pengguna akhir. Anda dapat menentukan variabel kustom dalam pesan peringatan berdasarkan sintaks Go template.
Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Penggunaan disk {{$labels.device}} melebihi 90%. Nilai saat ini: {{ printf "%.2f" $value }}%
Pengaturan Lanjutan
Tag
Tentukan tag untuk aturan peringatan. Tag yang ditentukan dapat digunakan untuk mencocokkan kebijakan notifikasi.
Tidak ada
Anotasi
Tentukan anotasi untuk aturan peringatan.
Tidak ada
Terapkan template aturan peringatan
Setelah Anda membuat template aturan peringatan, Anda dapat menerapkannya ke instance Prometheus tertentu untuk membuat atau memperbarui aturan peringatan untuk instance tersebut.
Pada halaman Prometheus Alert Rule Templates, temukan template aturan peringatan yang ingin Anda terapkan dan klik Apply Template di kolom Aksi.
Pada tab Prometheus Instance Selection Mode dari kotak dialog Application Template, pilih satu atau beberapa instance Prometheus dan klik OK.
CatatanAnda dapat mencari instance Prometheus berdasarkan nama, wilayah, atau tipe.
Dalam kotak dialog yang muncul, tentukan apakah akan memperbarui aturan peringatan yang ada dari instance Prometheus yang dipilih dan klik OK.
Jika Anda tidak memilih Update Created Alert Rules, dan instance Prometheus memiliki aturan peringatan yang dibuat berdasarkan template saat ini, pesan berikut muncul: The alert rules are not updated because they are created from this template. Dalam hal ini, aturan peringatan yang ada tidak diperbarui.
Jika Anda memilih Update Created Alert Rules, aturan peringatan yang ada yang dibuat untuk instance Prometheus berdasarkan template saat ini diperbarui.
PentingJika aturan peringatan dimodifikasi dan pemetaan antara aturan peringatan dan template dipertahankan, modifikasi akan ditimpa oleh template baru.
Hapus template
Jika Anda tidak lagi membutuhkan template aturan peringatan, Anda dapat menghapus template. Saat Anda menghapus template, Anda dapat menentukan apakah akan mempertahankan aturan peringatan yang dibuat dari template tersebut.
Pada halaman Prometheus Alert Rule Templates, temukan template aturan peringatan yang ingin Anda hapus dan klik Delete di kolom Aksi.
Dalam kotak dialog yang muncul, tentukan apakah akan menghapus aturan peringatan yang dibuat dari template dan klik OK.
Jika Anda memilih Delete Alert Rules Created from Template, aturan peringatan yang dibuat dari template akan dihapus. Namun, jika Anda telah memodifikasi aturan peringatan yang dibuat dari template dan memilih Remove the mapping between this alert rule and the alert rule template saat menyimpan perubahan, aturan peringatan tidak akan dihapus.
Jika Anda tidak memilih Delete Alert Rules Created from Template, aturan peringatan yang dibuat dari template akan dipertahankan.
Lihat aturan peringatan yang dibuat dari template
Anda dapat melihat dan mengelola aturan peringatan yang dibuat dari template.
Pada halaman Prometheus Alert Rule Templates, temukan template aturan peringatan dan klik View Alert Rules di kolom Aksi.
Dalam kotak dialog Alert Rules Created from Template, kelola aturan peringatan sesuai kebutuhan Anda.
Aktifkan beberapa aturan peringatan: Pilih aturan peringatan yang ingin Anda aktifkan dan klik Enable Alert Rules.
Nonaktifkan beberapa aturan peringatan: Pilih aturan peringatan yang ingin dinonaktifkan, lalu klik Disable Alert Rules.
Hapus beberapa aturan peringatan: Pilih aturan peringatan yang ingin Anda hapus dan klik Delete Alert Rules.
Catatan penggunaan
Setelah Anda memodifikasi aturan peringatan yang dibuat dari template, sebuah kotak dialog akan muncul. Dalam kotak dialog tersebut, Anda harus menentukan apakah akan mempertahankan pemetaan antara aturan peringatan dan template.
Jika Anda memilih Retain the mapping between this alert rule and the alert rule template, modifikasi Anda mungkin ditimpa saat Anda menerapkan template ke instance Prometheus yang sesuai dengan aturan peringatan dan memilih Perbarui Aturan Peringatan yang Dibuat.
Jika Anda memilih Remove the mapping between this alert rule and the alert rule template, aturan peringatan dianggap sebagai aturan terpisah. Kami sarankan Anda mengganti nama aturan peringatan. Jika tidak, jika Anda menerapkan template aturan peringatan ke instance Prometheus lagi, aturan peringatan baru gagal dibuat karena konflik nama.