Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Pemberitahuan di Azure Monitor secara proaktif mengidentifikasi masalah yang terkait dengan kesehatan dan performa sumber daya Azure Anda. Artikel ini menjelaskan cara mengaktifkan dan mengedit sekumpulan aturan pemberitahuan metrik yang direkomendasikan yang telah ditentukan sebelumnya untuk kluster Kubernetes Anda.
Mengaktifkan aturan pemberitahuan yang disarankan
Gunakan salah satu metode berikut untuk mengaktifkan aturan pemberitahuan yang direkomendasikan untuk kluster Anda. Anda dapat mengaktifkan aturan pemberitahuan metrik Prometheus dan platform untuk kluster yang sama.
Catatan
Kluster Kubernetes dengan dukungan Arc tidak mendukung aturan pemberitahuan yang direkomendasikan metrik Platform. Sebaliknya, aturan pemberitahuan berbasis Prometheus yang setara disediakan untuk kluster ini.
Dengan menggunakan portal Azure, grup aturan Prometheus akan dibuat di wilayah yang sama dengan kluster.
Dari menu Pemberitahuan untuk kluster Anda, pilih Siapkan rekomendasi.
Aturan pemberitahuan Prometheus dan platform yang tersedia ditampilkan dengan aturan Prometheus yang diatur oleh tingkat pod, kluster, dan node. Alihkan sekelompok aturan Prometheus untuk mengaktifkan kelompok aturan tersebut. Perluas grup untuk melihat aturan individual. Anda dapat membiarkan default atau menonaktifkan aturan individual dan mengedit nama dan tingkat keparahannya.
Ubah aturan metrik platform untuk mengaktifkan aturan tersebut. Anda dapat memperluas aturan untuk mengubah detailnya seperti nama, tingkat keparahan, dan ambang batas.
Pilih satu atau beberapa metode pemberitahuan untuk membuat grup tindakan baru, atau pilih grup tindakan yang sudah ada dengan detail pemberitahuan untuk sekumpulan aturan pemberitahuan ini.
Klik Simpan untuk menyimpan grup aturan.
Petunjuk / Saran
Sebaiknya Anda juga mengaktifkan pemberitahuan rekomendasi untuk Ruang Kerja Azure Monitor tempat metrik Prometheus diproses. Pemberitahuan ini memungkinkan Anda memantau batas dan kuota penyerapan, dan menghindari pembatasan metrik. Untuk mengaktifkan pemberitahuan yang direkomendasikan ini, lihat Menyiapkan pemberitahuan yang direkomendasikan untuk Ruang Kerja Azure Monitor.
Mengedit aturan pemberitahuan yang direkomendasikan
Setelah grup aturan dibuat, Anda tidak dapat menggunakan halaman yang sama di portal untuk mengedit aturan. Untuk metrik Prometheus, Anda harus mengedit grup aturan untuk mengubah aturan apa pun di dalamnya, termasuk mengaktifkan aturan apa pun yang belum diaktifkan. Untuk metrik platform, Anda dapat mengedit setiap aturan pemberitahuan.
Dari menu Pemberitahuan untuk kluster Anda, pilih Siapkan rekomendasi. Aturan atau grup aturan apa pun yang telah dibuat akan diberi label sebagai Sudah dibuat.
Perluas aturan atau grup aturan. Klik Tampilkan grup aturan untuk Prometheus dan Lihat aturan peringatan untuk metrik platform.
Untuk grup aturan Prometheus:
pilih Aturan untuk melihat aturan pemberitahuan dalam grup.
Klik ikon Edit di samping aturan yang ingin Anda ubah. Gunakan panduan di Buat aturan pemberitahuan untuk mengubah aturan.
Setelah selesai mengedit aturan dalam grup, klik Simpan untuk menyimpan grup aturan.
Untuk metrik platform:
klik Edit untuk membuka detail aturan pemberitahuan. Gunakan panduan di Buat aturan pemberitahuan untuk mengubah aturan.
Menonaktifkan grup aturan pemberitahuan
Nonaktifkan grup aturan untuk berhenti menerima pemberitahuan dari aturan di dalamnya.
Lihat grup aturan pemberitahuan Prometheus atau aturan pemberitahuan metrik platform seperti yang dijelaskan dalam Ubah aturan pemberitahuan yang direkomendasikan.
Dari menu Gambaran Umum , pilih Nonaktifkan.
Detail aturan pemberitahuan yang direkomendasikan
Tabel berikut ini mencantumkan detail setiap aturan pemberitahuan yang direkomendasikan. Kode sumber untuk masing-masing tersedia di GitHub bersama dengan panduan pemecahan masalah dari komunitas Prometheus.
Aturan pemberitahuan komunitas Prometheus
Pemberitahuan tingkat kluster
| Nama pemberitahuan | Deskripsi | Ambang batas default | Jangka waktu (menit) |
|---|---|---|---|
| KubeCPUQuotaOvercommit | Kuota sumber daya CPU yang dialokasikan untuk namespace melebihi sumber daya CPU yang tersedia pada node kluster lebih dari 50% selama 5 menit terakhir. | >1.5 | 5 |
| KubeMemoryQuotaOvercommit (Pengalokasian Berlebih Kuota Memori pada Kube) | Kuota sumber daya memori yang dialokasikan untuk namespace melebihi sumber daya memori yang tersedia pada node kluster lebih dari 50% selama 5 menit terakhir. | >1.5 | 5 |
| KubeContainerOOMKilledCount | Satu atau beberapa kontainer dalam pod telah dimatikan karena kekurangan memori (OOM) selama 5 menit terakhir. | >0 | 5 |
| KubeClientErrors | Tingkat kesalahan klien (kode status HTTP yang dimulai dengan 5xx) dalam permintaan API Kubernetes melebihi 1% dari total tingkat permintaan API selama 15 menit terakhir. | >0.01 | 15 |
| KubePersistentVolumeFillingUp | Volume persisten terus terisi dan diperkirakan akan kehabisan ruang. Evaluasi didasarkan pada rasio ruang yang tersedia, penggunaan ruang saat ini, dan tren linier yang diprediksi dari ruang yang tersedia selama 6 jam terakhir. Kondisi ini dievaluasi selama 60 menit terakhir. | Tidak Berlaku | 60 (enam puluh) |
| KubePersistentVolumeInodesFillingUp | Kurang dari 3% inode dalam volume persisten tersedia selama 15 menit terakhir. | <0.03 | 15 |
| KubePersistentVolumeErrors | Satu atau beberapa volume persisten berada dalam fase gagal atau tertunda selama 5 menit terakhir. | >0 | 5 |
| Kube Container Menunggu | Satu atau beberapa kontainer dalam pod Kubernetes berada dalam status tunggu selama 60 menit terakhir. | >0 | 60 (enam puluh) |
| SetDaemonKubeTidakDijadwalkan | Satu atau beberapa pod tidak dijadwalkan pada simpul apa pun selama 15 menit terakhir. | >0 | 15 |
| Penjadwalan KubeDaemonSet Salah | Satu atau beberapa pod salah dijadwalkan dalam kluster selama 15 menit terakhir. | >0 | 15 |
| KubeQuotaHampirPenuh | Pemanfaatan kuota sumber daya Kubernetes adalah antara 90% dan 100% dari batas maksimum selama 15 menit terakhir. | >0,9 <1 | 15 |
Pemberitahuan tingkat simpul
| Nama pemberitahuan | Deskripsi | Ambang batas default | Jangka waktu (menit) |
|---|---|---|---|
| KubeNodeTidakTerjangkau | Simpul telah tidak dapat dijangkau selama 15 menit terakhir. | 1 | 15 |
| Kesiapan KubeNode Tidak Stabil | Status kesiapan simpul telah berubah lebih dari 2 kali selama 15 menit terakhir. | 2 | 15 |
Pemberitahuan tingkat pod
| Nama pemberitahuan | Deskripsi | Ambang batas default | Jangka waktu (menit) |
|---|---|---|---|
| KubePVUsageHigh | Penggunaan rata-rata Volume Persisten (PV) pada pod melebihi 80% selama 15 menit terakhir. | >0.8 | 15 |
| KubeDeploymentReplicasTidakCocok | Ada ketidakcocokan antara jumlah replika yang diinginkan dan jumlah replika yang tersedia selama 10 menit terakhir. | Tidak Berlaku | 10 |
| KetidakcocokanReplikaKubeStatefulSet | Jumlah replika siap di StatefulSet tidak cocok dengan jumlah total replika di StatefulSet selama 15 menit terakhir. | Tidak Berlaku | 15 |
| Ketidakcocokan Replika KubeHpa | Autoscaler Pod Horizontal dalam kluster belum cocok dengan jumlah replika yang diinginkan selama 15 menit terakhir. | Tidak Berlaku | 15 |
| Kube HPA mencapai batas maksimum | Horizontal Pod Autoscaler (HPA) dalam kluster telah berjalan pada jumlah replika maksimum selama 15 menit terakhir. | Tidak Berlaku | 15 |
| KubePodCrashLooping | Satu atau beberapa pod berada dalam kondisi CrashLoopBackOff, di mana pod terus crash setelah startup dan gagal pulih dengan sukses selama 15 menit terakhir. | >=1 | 15 |
| KubeJobStale | Selama 6 jam terakhir, setidaknya satu instance pekerjaan tidak selesai dengan sukses. | >0 | 360 |
| Mulai Ulang Kontainer Pod Kube | Satu atau beberapa kontainer dalam pod di kluster Kubernetes telah dimulai ulang setidaknya sekali dalam satu jam terakhir. | >0 | 15 |
| KubePodReadyStateLow | Persentase pod dalam status siap berada di bawah 80% untuk setiap penyebaran atau daemonset di kluster Kubernetes selama 5 menit terakhir. | <0.8 | 5 |
| KubePodFailedState | Satu atau beberapa pod telah mengalami kegagalan selama 5 menit terakhir. | >0 | 5 |
| KubePodTidakSiapOlehPengendali | Satu atau beberapa pod tidak dalam keadaan siap (yaitu, dalam fase "Tertunda" atau "Tidak Diketahui") selama 15 menit terakhir. | >0 | 15 |
| KetidakcocokanGenerasiKubeStatefulSet | Generasi yang diamati dari Kubernetes StatefulSet tidak cocok dengan generasi metadatanya dalam 15 menit terakhir. | Tidak Berlaku | 15 |
| KubePekerjaanGagal | Satu atau beberapa pekerjaan Kubernetes gagal dalam 15 menit terakhir. | >0 | 15 |
| KontainerKubeCPURataRataTinggi | Penggunaan CPU rata-rata per kontainer melebihi 95% selama 5 menit terakhir. | >0.95 | 5 |
| Rata-rata Memori Tinggi KubeContainer | Penggunaan memori rata-rata per kontainer melebihi 95% selama 5 menit terakhir. | >0.95 | 10 |
| KubeletPodStartUpLatencyHigh | Persentil ke-99 dari latensi startup pod melebihi 60 detik selama 10 menit terakhir. | >60 | 10 |
Aturan pemberitahuan metrik platform
| Nama pemberitahuan | Deskripsi | Ambang batas default | Jangka waktu (menit) |
|---|---|---|---|
| Persentase cpu node lebih besar dari 95% | Persentase CPU node lebih besar dari 95% selama 5 menit terakhir. | 95 | 5 |
| Persentase penggunaan set kerja memori node lebih dari 100% | Persentase penggunaan set kerja memori node melebihi 100% selama 5 menit terakhir. | 100 | 5 |
Pemberitahuan metrik wawasan Kontainer Warisan (pratinjau)
Aturan metrik dalam Insight Kontainer dihentikan pada 31 Mei 2024. Aturan ini berada dalam tinjauan publik tetapi diperhentikan sebelum mencapai tahap ketersediaan umum karena peringatan metrik baru yang direkomendasikan yang dijelaskan dalam artikel ini sekarang tersedia.
Jika Anda sudah mengaktifkan aturan pemberitahuan warisan ini, Anda harus menonaktifkannya dan mengaktifkan pengalaman baru.
Menonaktifkan aturan peringatan metrik
- Dari menu Insight untuk kluster Anda, pilih Pemberitahuan yang direkomendasikan (pratinjau).
- Ubah status untuk setiap aturan pemberitahuan menjadi Dinonaktifkan.
Pemetaan alert sistem lama
Tabel berikut memetakan setiap pemberitahuan metrik Container insights lama menjadi pemberitahuan metrik Prometheus setara yang direkomendasikan.
| Pemberitahuan metrik khusus yang direkomendasikan | Peringatan yang direkomendasikan untuk metrik Prometheus/Platform yang setara | Kondisi |
|---|---|---|
| Jumlah pekerjaan yang selesai | KubeJobStale (Pemberitahuan tingkat Pod) | Selama 6 jam terakhir, setidaknya satu instance pekerjaan tidak selesai dengan sukses. |
| CPU Kontainer % | KubeContainerAverageCPUHigh (Pemberitahuan tingkat Pod) | Penggunaan CPU rata-rata per kontainer melebihi 95% selama 5 menit terakhir. |
| Memori set kerja kontainer % | KubeContainerAverageMemoryHigh (Pemberitahuan tingkat Pod) | Penggunaan memori rata-rata per kontainer melebihi 95% selama 5 menit terakhir. |
| Jumlah Pod yang gagal | KubePodFailedState (Peringatan tingkat Pod) | Satu atau beberapa pod telah mengalami kegagalan selama 5 menit terakhir. |
| CPU Simpul % | Persentase CPU pada node lebih besar dari 95% (Metrik platform) | Persentase CPU node lebih besar dari 95% selama 5 menit terakhir. |
| Persentase Penggunaan Disk Node | Tidak Berlaku | Penggunaan disk rata-rata untuk simpul lebih besar dari 80%. |
| Status simpul tidak siap | KubeNodeTidakTerjangkau (Pemberitahuan tingkat node) | Simpul telah tidak dapat dijangkau selama 15 menit terakhir. |
| Memori set kerja simpul % | Persentase penggunaan set kerja memori node lebih dari 100% | Persentase penggunaan set kerja memori node melebihi 100% selama 5 menit terakhir. |
| Kontainer yang Dihentikan oleh OOM | KubeContainerOOMKilledCount (Pemberitahuan tingkat kluster) | Satu atau beberapa kontainer dalam pod telah dimatikan karena kekurangan memori (OOM) selama 5 menit terakhir. |
| Persentase Penggunaan Volume Persisten | KubePVUsageHigh (Peringatan tingkat Pod) | Penggunaan rata-rata Volume Persisten (PV) pada pod melebihi 80% selama 15 menit terakhir. |
| Pod siap % | KubePodReadyStateLow (Peringatan tingkat siaga Pod) | Persentase pod dalam status siap berada di bawah 80% untuk setiap penyebaran atau daemonset di kluster Kubernetes selama 5 menit terakhir. |
| Jumlah kontainer yang dimulai ulang | KubePodContainerRestart (Pemberitahuan tingkat Pod) | Satu atau beberapa kontainer dalam pod di kluster Kubernetes telah dimulai ulang setidaknya sekali dalam satu jam terakhir. |
Pemetaan metrik warisan
Tabel berikut memetakan setiap metrik kustom wawasan Kontainer warisan ke metrik Prometheus yang setara.
| Metrik kustom | Metrik Prometheus yang setara |
|---|---|
| Penggunaan CPU dalam Milicore | rate(container_cpu_usage_seconds_total[5m]) * 1000 |
| persenPenggunaanCPU | 100 * rate(container_cpu_usage_seconds_total{cluster="$cluster"}[5m]) |
| Persentase Penggunaan CPU yang Dapat Dialokasikan | 100 * ( jumlah menurut (kluster) (node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster="$cluster"}) / jumlah menurut (kluster) (instance:node_num_cpu:sum{cluster="$cluster"}) ) |
| memoryRssByte | container_memory_rss{cluster="$cluster"} |
| persentaseMemoryRss | 100 * (jumlah menurut (instans, kluster) (container_memory_rss{job="cadvisor", cluster="$cluster"}) / jumlah menurut (instans, kluster) (machine_memory_bytes{job="cadvisor", cluster="$cluster"})) |
| PersentaseMemRssDapatDialokasikan | 100 * (jumlah berdasarkan (node, kluster) (container_memory_rss{cluster="$cluster"}) / jumlah berdasarkan (node, kluster) (node_memory_MemTotal_bytes{cluster="$cluster"})) |
| Ukuran Memori Kerja dalam Byte | container_memory_working_set_bytes{cluster="$cluster"} |
| persentaseSetKerjaMemori | 100 * (jumlah menurut (node, kluster) (container_memory_working_set_bytes{cluster="$cluster"}) / jumlah berdasarkan (node, kluster) (node_memory_MemTotal_bytes{cluster="$cluster"})) |
| jumlahNodus | count(kube_node_status_condition{condition="Ready", status="true", cluster="$cluster"}) |
| PersentaseDiskTerpakai | 100 * (node_filesystem_size_bytes{cluster="$cluster"} - node_filesystem_free_bytes{cluster="$cluster"}) / node_filesystem_size_bytes{cluster="$cluster"} |
| podCount | count(count by (pod, namespace, cluster) (kube_pod_info{cluster="$cluster"})) |
| jumlahPekerjaanSelesai | count(kube_job_status_succeeded{status="true", cluster="$cluster"} and time() - kube_job_status_start_time > 6 * 3600) |
| jumlahKontainerMenghidupkanUlang | jumlah menurut(kontainer, namespace, kluster) (rate(kube_pod_container_status_restarts_total{cluster="$cluster"}[5m])) |
| JumlahKontainerDibunuhOOM | jumlah berdasarkan(kontainer, namespace, kluster) (kube_pod_container_status_terminated_reason{reason="OOMKilled", cluster="$cluster"}) |
| podReadyPercentage | 100 * (sum(kube_pod_status_phase{phase="Running", cluster="$cluster"}) by (namespace, cluster) / sum(kube_pod_status_phase{phase!="Succeeded", cluster="$cluster"}) by (namespace, kluster)) |