Anda dapat menggunakan templat aturan peringatan Prometheus untuk mengelola aturan peringatan secara terpusat di beberapa instans Prometheus lintas wilayah. Topik ini menjelaskan cara membuat dan mengelola templat aturan peringatan Prometheus guna memastikan konsistensi dan efisiensi pengelolaan aturan.
Informasi latar belakang
Jika Anda memiliki beberapa instans Prometheus cross-region, membuat aturan peringatan untuk setiap instans Prometheus secara individual bersifat padat karya dan menyulitkan pengelolaan aturan secara terkoordinasi untuk setiap instans Prometheus. Untuk mengatasi masalah ini, Managed Service for Prometheus menyediakan fitur templat aturan peringatan. Fitur ini membantu Anda membuat aturan peringatan untuk beberapa instans Prometheus dengan cepat dan mengelolanya secara terpadu, sehingga mengurangi biaya pengelolaan aturan peringatan di banyak instans Prometheus.
Buat templat aturan peringatan Prometheus
Masuk ke Konsol ARMS.
-
Di panel navigasi sebelah kiri, pilih .
-
Di pojok kanan atas halaman, klik Create Prometheus Alert Rule Template.
-
Pada halaman Create Prometheus Alert Rule, konfigurasikan parameter berikut.
Anda dapat membuat templat aturan peringatan Prometheus menggunakan ambang batas statis atau PromQL kustom.
-
Tipe pemeriksaan ambang batas statis menyediakan metrik peringatan yang telah ditentukan sebelumnya. Anda dapat memilih metrik tersebut untuk membuat aturan peringatan dengan cepat.
-
Untuk memantau metrik yang tidak ditentukan sebelumnya, Anda dapat menggunakan tipe pemeriksaan PromQL kustom untuk membuat aturan peringatan.
Tabel 1. Tipe pemeriksaan ambang batas statis
Parameter
Deskripsi
Contoh
Nama templat aturan peringatan
Nama templat aturan peringatan.
Peringatan utilisasi CPU kontainer - kluster produksi
Deskripsi templat aturan peringatan
Opsional. Jelaskan templat tersebut. Anda dapat mencantumkan tujuan, skenario penerapan, atau catatan lainnya.
Tidak ada
Tipe pemeriksaan
Pilih Static Threshold.
Static Threshold
Kelompok peringatan
Pilih kelompok peringatan.
Kubernetes Workloads
Metrik peringatan
Pilih metrik yang ingin Anda konfigurasikan peringatannya. Setiap kelompok peringatan memiliki metrik yang berbeda.
Utilisasi CPU kontainer
Kondisi peringatan
Tetapkan kondisi untuk memicu event peringatan berdasarkan konten yang telah ditentukan dari metrik peringatan.
Kondisi peringatan terpenuhi ketika utilisasi CPU kontainer
lebih besar dari80%.Kondisi filter
Berdasarkan metrik peringatan, tetapkan cakupan aturan peringatan. Event peringatan dipicu untuk resource apa pun yang memenuhi kondisi filter dan kondisi peringatan.
Kondisi filter yang tersedia adalah:
-
Traverse: Aturan peringatan berlaku untuk semua resource dalam instans Prometheus saat ini. Secara default, kondisi filter diatur ke Traversal.
-
Equal To: Setelah memilih kondisi ini, masukkan nama resource tertentu. Aturan peringatan hanya akan berlaku untuk resource tersebut. Anda tidak dapat memasukkan beberapa resource.
-
Is not equal: Setelah memilih kondisi ini, masukkan nama resource tertentu. Aturan peringatan akan berlaku untuk semua resource kecuali resource tersebut. Anda tidak dapat memasukkan beberapa resource.
-
Match Regular Expression: Setelah memilih kondisi ini, masukkan ekspresi reguler untuk mencocokkan nama resource. Aturan peringatan akan berlaku untuk semua resource yang cocok dengan ekspresi tersebut.
-
Do Not Match Regular Expression: Setelah memilih kondisi ini, masukkan ekspresi reguler untuk mencocokkan nama resource. Aturan peringatan akan mengecualikan semua resource yang cocok dengan ekspresi tersebut.
IP Instance: Traverse
Durasi
-
Memicu event peringatan segera setelah kondisi peringatan terpenuhi: Event peringatan dipicu jika titik data mana pun memenuhi ambang batas.
-
Memicu event peringatan hanya ketika kondisi peringatan berlangsung selama N menit: Event peringatan dipicu hanya jika ambang batas terpenuhi selama N menit atau lebih.
1
Tingkat keparahan peringatan
Tingkat keparahan peringatan. Tingkat keparahan default adalah Default. Tingkat keparahan, dari terendah ke tertinggi, adalah Default, P4, P3, P2, dan P1.
Default
Konten peringatan
Informasi peringatan yang diterima pengguna. Anda dapat menggunakan sintaks templat Go untuk menyesuaikan variabel parameter peringatan dalam konten peringatan.
Namespace: {{$labels.namespace}} / Pod: {{$labels.pod_name}} / Kontainer: {{$labels.container}} utilisasi CPU {{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%, nilai saat ini {{ printf "%.2f" $value }}%
Pengaturan Lanjutan
Label
Tetapkan label peringatan. Label tersebut dapat digunakan sebagai opsi untuk aturan pencocokan dalam kebijakan notifikasi.
Tidak ada
Anotasi
Tetapkan anotasi untuk peringatan.
Tidak ada
Tabel 2. Tipe pemeriksaan PromQL kustom
Parameter
Deskripsi
Contoh
Nama templat aturan peringatan
Nama templat aturan peringatan.
Utilisasi CPU Pod lebih besar dari 80%
Deskripsi templat aturan peringatan
Opsional. Jelaskan templat tersebut. Anda dapat mencantumkan tujuan, skenario penerapan, atau catatan lainnya.
Tidak ada
Tipe pemeriksaan
Atur ke Custom PromQL.
Custom PromQL
Pernyataan PromQL kustom
Gunakan pernyataan PromQL untuk menetapkan ekspresi aturan peringatan.
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
-
Memicu event peringatan segera setelah kondisi peringatan terpenuhi: Event peringatan dipicu jika titik data mana pun memenuhi ambang batas.
-
Memicu event peringatan hanya ketika kondisi peringatan berlangsung selama N menit: Event peringatan dipicu hanya jika ambang batas terpenuhi selama N menit atau lebih.
1
Tingkat keparahan peringatan
Tingkat keparahan peringatan. Tingkat keparahan default adalah Default. Tingkat keparahan, dari terendah ke tertinggi, adalah Default, P4, P3, P2, dan P1.
Default
Konten peringatan
Informasi peringatan yang diterima pengguna. Anda dapat menggunakan sintaks templat Go untuk menyesuaikan variabel parameter peringatan dalam konten peringatan.
Namespace: {{$labels.namespace}}/Pod: {{$labels.pod_name}}/Perangkat disk: {{$labels.device}} utilisasi melebihi 90%, nilai saat ini {{ printf "%.2f" $value }}%
Pengaturan Lanjutan
Label
Tetapkan label peringatan. Label tersebut dapat digunakan sebagai opsi untuk aturan pencocokan dalam kebijakan notifikasi.
Tidak ada
Anotasi
Tetapkan anotasi untuk peringatan.
Tidak ada
-
Templat Aplikasi
Setelah membuat templat peringatan Prometheus, Anda dapat menerapkannya untuk membuat aturan peringatan bagi instans Prometheus. Anda juga dapat menggunakan templat tersebut untuk memperbarui aturan peringatan yang sudah ada pada instans Prometheus.
-
Pada halaman Prometheus Alert Rule Template, klik Apply Template untuk templat yang ingin Anda terapkan.
-
Pada halaman Apply Template, pada tab Prometheus Instance Selection Mode, pilih instans Prometheus dan klik OK.
CatatanAnda dapat memfilter instans Prometheus yang terkait dengan templat peringatan ini berdasarkan nama instans Prometheus, wilayah, dan tipe instans Prometheus.
-
Pada kotak dialog yang muncul, pilih apakah akan memperbarui aturan peringatan yang sudah ada, lalu klik OK.
-
Jika Anda tidak memilih Update Existing Alert Rules: Jika instans Prometheus yang dipilih sudah memiliki aturan peringatan yang dibuat dari templat peringatan saat ini, pesan Alert Rules Have Already Been Created By Using This Template And Will Not Be Updated akan muncul. Aturan peringatan yang sudah ada tidak diperbarui.
-
Update Existing Alert Rules: Jika instans Prometheus yang dipilih sudah berisi aturan peringatan yang dibuat dari templat peringatan saat ini, aturan peringatan Prometheus diperbarui agar sesuai dengan konten terbaru dari templat peringatan.
PentingJika aturan peringatan dimodifikasi secara individual tetapi pemetaannya ke templat dipertahankan, modifikasi individual tersebut akan ditimpa dan hilang.
-
Hapus templat
Jika templat peringatan Prometheus tidak lagi diperlukan, Anda dapat menghapus templat peringatan Prometheus. Saat menghapus templat, Anda dapat menentukan apakah akan menyimpan aturan peringatan yang dibuat darinya.
-
Pada halaman Prometheus Alert Rule Template, klik Delete di sebelah kanan templat aturan peringatan yang dituju.
-
Pada kotak dialog yang muncul, pilih apakah akan menghapus juga aturan peringatan yang dibuat dari templat tersebut, lalu klik Confirm.
-
Pilih Delete Alert Rules Created from Template: Aturan peringatan Prometheus yang terkait dengan templat akan dihapus. Jika aturan peringatan Prometheus yang dibuat dari templat tersebut diedit secara manual dan Anda memilih Do Not Retain The Mapping Between The Template And The Rule saat menyimpannya, aturan tersebut tidak dihapus.
-
Jika Anda tidak memilih Delete Alert Rules Created from Template, aturan peringatan Prometheus yang dibuat dari templat akan dipertahankan.
-
Lihat aturan peringatan yang dibuat dari templat
Anda dapat melihat dan mengelola aturan peringatan yang dibuat dari templat secara batch.
-
Pada halaman Prometheus Alert Rule Template, klik View Rules Created From Template di sebelah kanan templat aturan peringatan yang dituju.
-
Anda dapat mengelola aturan peringatan secara batch pada halaman Alert Rules Created from Template.
-
Untuk mengaktifkan peringatan secara batch: Pilih aturan peringatan yang diinginkan dan klik Enable Alert Rules.
-
Untuk menonaktifkan peringatan secara batch: Pilih aturan peringatan yang diinginkan dan klik Disable Alert Rules.
-
Untuk menghapus peringatan secara batch: Pilih aturan peringatan yang diinginkan dan klik Delete Alert Rules.
-
Catatan
Saat mengedit dan menyimpan aturan peringatan Prometheus yang dibuat dari templat aturan peringatan Prometheus, Anda harus memilih apakah akan mempertahankan pemetaan antara templat dan aturan tersebut.
-
Retain the mapping between this alert rule and the alert rule template: Jika Anda mempertahankan pemetaan ini, editan Anda saat ini mungkin ditimpa jika Anda menerapkan templat aturan peringatan yang sesuai ke instans Prometheus untuk aturan ini dan memilih opsi pembaruan paksa.
-
Remove the mapping between this alert rule and the alert rule template: Setelah pemetaan dinonaktifkan, aturan peringatan ini dianggap sebagai aturan independen. Kami menyarankan Anda mengubah nama aturan peringatan tersebut. Jika tidak, saat Anda menerapkan kembali templat aturan peringatan yang sesuai ke instans Prometheus, pembuatan akan gagal karena duplikasi nama aturan peringatan.