Zalecane reguły alertów dla klastrów Kubernetes
Alerty w usłudze Azure Monitor aktywnie identyfikują problemy związane z kondycją i wydajnością zasobów platformy Azure. W tym artykule opisano sposób włączania i edytowania zestawu zalecanych reguł alertów dotyczących metryk, które są wstępnie zdefiniowane dla klastrów Kubernetes.
Edytuj zalecane reguły alertów
Użyj jednej z poniższych metod, aby włączyć zalecane reguły alertów dla klastra. Dla tego samego klastra można włączyć zarówno reguły alertów metryk prometheus, jak i reguł alertów dotyczących metryk platformy.
Uwaga
Szablony usługi ARM są jedyną obsługiwaną metodą włączania zalecanych alertów w klastrach Kubernetes z obsługą usługi Arc.
Za pomocą witryny Azure Portal grupa reguł Prometheus zostanie utworzona w tym samym regionie co klaster.
W menu Alerty dla klastra wybierz pozycję Skonfiguruj zalecenia.
Dostępne reguły alertów prometheus i platformy są wyświetlane z regułami Prometheus zorganizowanymi według zasobnika, klastra i poziomu węzła. Przełącz grupę reguł Prometheus, aby włączyć ten zestaw reguł. Rozwiń grupę, aby wyświetlić poszczególne reguły. Możesz pozostawić wartości domyślne lub wyłączyć poszczególne reguły i edytować ich nazwę i ważność.
Przełącz regułę metryki platformy, aby włączyć tę regułę. Możesz rozwinąć regułę, aby zmodyfikować jej szczegóły, takie jak nazwa, ważność i próg.
Wybierz co najmniej jedną metodę powiadamiania, aby utworzyć nową grupę akcji, lub wybierz istniejącą grupę akcji ze szczegółami powiadomień dla tego zestawu reguł alertów.
Kliknij przycisk Zapisz , aby zapisać grupę reguł.
Edytowanie zalecanych reguł alertów
Po utworzeniu grupy reguł nie można użyć tej samej strony w portalu, aby edytować reguły. W przypadku metryk Prometheus należy edytować grupę reguł, aby zmodyfikować wszystkie reguły, w tym włączyć wszystkie reguły, które nie zostały jeszcze włączone. W przypadku metryk platformy można edytować każdą regułę alertu.
W menu Alerty dla klastra wybierz pozycję Skonfiguruj zalecenia. Wszystkie reguły lub grupy reguł, które zostały już utworzone, zostaną oznaczone jako Już utworzone.
Rozwiń regułę lub grupę reguł. Kliknij pozycję Wyświetl grupę reguł dla rozwiązania Prometheus i Wyświetl regułę alertu dla metryk platformy.
W przypadku grup reguł Prometheus:
wybierz pozycję Reguły , aby wyświetlić reguły alertów w grupie.
Kliknij ikonę Edytuj obok reguły, którą chcesz zmodyfikować. Skorzystaj ze wskazówek w temacie Tworzenie reguły alertu, aby zmodyfikować regułę.
Po zakończeniu edytowania reguł w grupie kliknij przycisk Zapisz , aby zapisać grupę reguł.
Metryki platformy:
Kliknij przycisk Edytuj , aby otworzyć szczegóły reguły alertu. Skorzystaj ze wskazówek w temacie Tworzenie reguły alertu, aby zmodyfikować regułę.
Wyłączanie grupy reguł alertów
Wyłącz grupę reguł, aby przestać otrzymywać alerty z reguł w niej.
Wyświetl grupę reguł alertów prometheus lub regułę alertu metryki platformy zgodnie z opisem w temacie Edytowanie zalecanych reguł alertów.
Z menu Przegląd wybierz pozycję Wyłącz.
Zalecane szczegóły reguły alertu
W poniższych tabelach wymieniono szczegóły każdej zalecanej reguły alertu. Kod źródłowy dla każdego z nich jest dostępny w usłudze GitHub wraz z przewodnikami rozwiązywania problemów ze społecznością Prometheus.
Reguły alertów społeczności prometheus
Alerty na poziomie klastra
Nazwa alertu | opis | Domyślny próg | Przedział czasu (w minutach) |
---|---|---|---|
KubeCPUQuotaOvercommit | Przydział zasobów procesora CPU przydzielony przestrzeniom nazw przekracza dostępne zasoby procesora CPU w węzłach klastra o ponad 50% w ciągu ostatnich 5 minut. | >1.5 | 5 |
KubeMemoryQuotaOvercommit | Przydział zasobów pamięci przydzielony przestrzeniom nazw przekracza dostępne zasoby pamięci w węzłach klastra o ponad 50% w ciągu ostatnich 5 minut. | >1.5 | 5 |
KubeContainerOOMKilledCount | Co najmniej jeden kontener w zasobnikach został zabity z powodu zdarzeń braku pamięci (OOM) z ostatnich 5 minut. | >0 | 5 |
KubeClientErrors | Częstotliwość błędów klienta (kody stanu HTTP rozpoczynające się od 5xx) w żądaniach interfejsu API kubernetes przekracza 1% całkowitej liczby żądań interfejsu API w ciągu ostatnich 15 minut. | >0.01 | 15 |
KubePersistentVolumeFillingUp | Wolumin trwały wypełnia się i oczekuje się, że zabraknie dostępnego miejsca obliczonego na dostępny stosunek przestrzeni, użyte miejsce i przewidywany liniowy trend dostępnego miejsca w ciągu ostatnich 6 godzin. Te warunki są oceniane w ciągu ostatnich 60 minut. | Nie dotyczy | 60 |
KubePersistentVolumeInodesFillingUp | Mniej niż 3% węzłów w ramach woluminu trwałego jest dostępnych przez ostatnie 15 minut. | <0.03 | 15 |
KubePersistentVolumeErrors | Co najmniej jeden wolumin trwały jest w fazie niepowodzenia lub oczekiwania na ostatnie 5 minut. | >0 | 5 |
KubeContainerWaiting | Co najmniej jeden kontener w zasobnikach Kubernetes jest w stanie oczekiwania przez ostatnie 60 minut. | >0 | 60 |
KubeDaemonSetNotScheduled | Co najmniej jeden zasobnik nie jest zaplanowany w żadnym węźle przez ostatnie 15 minut. | >0 | 15 |
KubeDaemonSetMisScheduled | Co najmniej jeden zasobnik zostanie pominięty w klastrze przez ostatnie 15 minut. | >0 | 15 |
KubeQuotaAlmostFull | Wykorzystanie przydziałów zasobów platformy Kubernetes wynosi od 90% do 100% limitów twardych w ciągu ostatnich 15 minut. | >0.9 <1 | 15 |
Alerty na poziomie węzła
Nazwa alertu | opis | Domyślny próg | Przedział czasu (w minutach) |
---|---|---|---|
KubeNodeUnreachable | Węzeł nie jest osiągalny przez ostatnie 15 minut. | 1 | 15 |
KubeNodeReadinessFlapping | Stan gotowości węzła zmienił się ponad 2 razy w ciągu ostatnich 15 minut. | 2 | 15 |
Alerty na poziomie zasobnika
Nazwa alertu | opis | Domyślny próg | Przedział czasu (w minutach) |
---|---|---|---|
KubePVUsageHigh | Średnie użycie woluminów trwałych na zasobniku przekracza 80% w ciągu ostatnich 15 minut. | >0.8 | 15 |
KubeDeploymentReplicasMismatch | Istnieje niezgodność między żądaną liczbą replik a liczbą dostępnych replik przez ostatnie 10 minut. | Nie dotyczy | 10 |
KubeStatefulSetReplicasMismatch | Liczba gotowych replik w elemecie StatefulSet nie jest zgodna z całkowitą liczbą replik w elemecie StatefulSet przez ostatnie 15 minut. | Nie dotyczy | 15 |
KubeHpaReplicasMismatch | Narzędzie Horizontal Pod Autoscaler w klastrze nie jest zgodne z żądaną liczbą replik w ciągu ostatnich 15 minut. | Nie dotyczy | 15 |
KubeHpaMaxedOut | Narzędzie Horizontal Pod Autoscaler (HPA) w klastrze działa z maksymalną 15 minutami. | Nie dotyczy | 15 |
KubePodCrashLooping | Co najmniej jeden zasobnik jest w stanie CrashLoopBackOff, w którym zasobnik stale ulega awarii po uruchomieniu i nie może pomyślnie odzyskać przez ostatnie 15 minut. | >=1 | 15 |
KubeJobStale | Co najmniej jedno wystąpienie zadania nie zostało ukończone pomyślnie przez ostatnie 6 godzin. | >0 | 360 |
KubePodContainerRestart | Co najmniej jeden kontener w zasobnikach w klastrze Kubernetes został ponownie uruchomiony co najmniej raz w ciągu ostatniej godziny. | >0 | 15 |
KubePodReadyStateLow | Procent zasobników w stanie gotowości spadnie poniżej 80% dla dowolnego wdrożenia lub demonaset w klastrze Kubernetes w ciągu ostatnich 5 minut. | <0.8 | 5 |
KubePodFailedState | Co najmniej jeden zasobnik jest w stanie niepowodzenia przez ostatnie 5 minut. | >0 | 5 |
KubePodNotReadyByController | Co najmniej jeden zasobnik nie jest w stanie gotowości (tj. w fazie "Oczekiwanie" lub "Nieznany") przez ostatnie 15 minut. | >0 | 15 |
KubeStatefulSetGenerationMismatch | Obserwowane generowanie elementu Kubernetes StatefulSet nie jest zgodne z generowaniem metadanych w ciągu ostatnich 15 minut. | Nie dotyczy | 15 |
KubeJobFailed | Co najmniej jedno zadania kubernetes zakończyło się niepowodzeniem w ciągu ostatnich 15 minut. | >0 | 15 |
KubeContainerAverageCPUHigh | Średnie użycie procesora CPU na kontener przekracza 95% w ciągu ostatnich 5 minut. | >0.95 | 5 |
KubeContainerAverageMemoryHigh | Średnie użycie pamięci na kontener przekracza 95% w ciągu ostatnich 5 minut. | >0.95 | 10 |
KubeletPodStartUpLatencyHigh | 99. percentyl opóźnienia uruchamiania zasobnika przekracza 60 sekund w ciągu ostatnich 10 minut. | >60 | 10 |
Reguły alertów metryk platformy
Nazwa alertu | opis | Domyślny próg | Przedział czasu (w minutach) |
---|---|---|---|
Procent procesora cpu węzła jest większy niż 95% | Procent użycia procesora CPU węzła jest większy niż 95% w ciągu ostatnich 5 minut. | 95 | 5 |
Procent zestawu roboczego pamięci węzła jest większy niż 100% | Procent zestawu roboczego pamięci węzła jest większy niż 100% w ciągu ostatnich 5 minut. | 100 | 5 |
Starsze alerty metryk usługi Container Insights (wersja zapoznawcza)
Reguły metryk w usłudze Container Insights zostały wycofane 31 maja 2024 r. Te reguły były w publicznej wersji zapoznawczej, ale zostały wycofane bez osiągnięcia ogólnej dostępności, ponieważ są teraz dostępne nowe zalecane alerty metryk opisane w tym artykule.
Jeśli te starsze reguły alertów zostały już włączone, należy je wyłączyć i włączyć nowe środowisko.
Wyłączanie reguł alertów dotyczących metryk
- W menu Szczegółowe informacje dla klastra wybierz pozycję Zalecane alerty (wersja zapoznawcza)..
- Zmień stan każdej reguły alertu na Wyłączone.
Starsze mapowanie alertów
Poniższa tabela mapuje każdy ze starszych alertów metryk usługi Container Insights na równoważne zalecane alerty metryk Rozwiązania Prometheus.
Zalecany alert dotyczący metryk niestandardowych | Odpowiedni alert dotyczący metryki Prometheus/Platform | Stan |
---|---|---|
Liczba ukończonych zadań | KubeJobStale (alerty na poziomie zasobnika) | Co najmniej jedno wystąpienie zadania nie zostało ukończone pomyślnie przez ostatnie 6 godzin. |
Procent procesora CPU kontenera | KubeContainerAverageCPUHigh (alerty na poziomie zasobnika) | Średnie użycie procesora CPU na kontener przekracza 95% w ciągu ostatnich 5 minut. |
Procent pamięci zestawu roboczego kontenera | KubeContainerAverageMemoryHigh (alerty na poziomie zasobnika) | Średnie użycie pamięci na kontener przekracza 95% w ciągu ostatnich 5 minut. |
Liczba nieudanych zasobników | KubePodFailedState (alerty na poziomie zasobnika) | Co najmniej jeden zasobnik jest w stanie niepowodzenia przez ostatnie 5 minut. |
Procent procesora CPU węzła | Procent użycia procesora cpu węzła jest większy niż 95% (metryka platformy) | Procent użycia procesora CPU węzła jest większy niż 95% w ciągu ostatnich 5 minut. |
Procent użycia dysku węzła | Nie dotyczy | Średnie użycie dysku dla węzła jest większe niż 80%. |
Stan NotReady węzła | KubeNodeUnreachable (alerty na poziomie węzła) | Węzeł nie jest osiągalny przez ostatnie 15 minut. |
% pamięci zestawu roboczego węzła | Procent zestawu roboczego pamięci węzła jest większy niż 100% | Procent zestawu roboczego pamięci węzła jest większy niż 100% w ciągu ostatnich 5 minut. |
Kontenery z zabitymi elementami OOM | KubeContainerOOMKilledCount (alerty na poziomie klastra) | Co najmniej jeden kontener w zasobnikach został zabity z powodu zdarzeń braku pamięci (OOM) z ostatnich 5 minut. |
Procent użycia trwałego woluminu | KubePVUsageHigh (alerty na poziomie zasobnika) | Średnie użycie woluminów trwałych na zasobniku przekracza 80% w ciągu ostatnich 15 minut. |
Gotowe zasobniki (%) | KubePodReadyStateLow (alerty na poziomie zasobnika) | Procent zasobników w stanie gotowości spadnie poniżej 80% dla dowolnego wdrożenia lub demonaset w klastrze Kubernetes w ciągu ostatnich 5 minut. |
Liczba ponownie uruchamianych kontenerów | KubePodContainerRestart (alerty na poziomie zasobnika) | Co najmniej jeden kontener w zasobnikach w klastrze Kubernetes został ponownie uruchomiony co najmniej raz w ciągu ostatniej godziny. |