Autorzy mają przyjemność ogłosić, że Amazon Managed Service for Prometheus udostępnia teraz metryki użytkowania Amazon CloudWatch.
Te metryki mogą pomóc w uzyskaniu lepszego wglądu w obszar roboczy Amazon Managed Service for Prometheus. Pora przyjrzeć się, jak możesz wykorzystać te nowe metryki użytkowania Prometheus w CloudWatch.
Skonfigurowano nowe obciążenie składające się z dwóch instancji Amazon EC2, z których każda działa w Prometheusie i zdalnie zapisuje metryki do obszaru roboczego Amazon Managed Service for Prometheus. Ponadto w wybranym obszarze roboczym ustalono pewne reguły, aby ostrzegać o wysokim lub niskim wykorzystaniu procesora. Reguły alertów, które są używane, prezentują się następująco:
YAML:
groups:
- name: example
rules:
- alert: HostHighCpuLoad
expr: 100 - (avg(rate(node_cpu_seconds_total{mode="idle"}[2m])) * 100) > 60
for: 5m
labels:
severity: warning
event_type: scale_up
annotations:
summary: Host high CPU load (instance {{ $labels.instance }})
description: "CPU load is > 60%\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
- alert: HostLowCpuLoad
expr: 100 - (avg(rate(node_cpu_seconds_total{mode="idle"}[2m])) * 100) < 30
for: 5m
labels:
severity: warning
event_type: scale_down
annotations:
summary: Host low CPU load (instance {{ $labels.instance }})
description: "CPU load is < 30%\n VALUE = {{ $value }}\n LABELS = {{ $labels }}"
Dodatkowo skonfigurowano managera alertów do wysyłania alertów do tematu Amazon Simple Notification Service (Amazon SNS). Konfiguracja managera alertów wygląda tak:
YAML:
alertmanager_config: |
route:
receiver: default_receiver
repeat_interval: 5m
receivers:
- name: default_receiver
sns_configs:
- topic_arn: <arn of SNS topic goes here>
send_resolved: false
sigv4:
region: us-east-2
message: |
alert_type: {{ .CommonLabels.alertname }}
event_type: {{ .CommonLabels.event_type }}
Przyglądając się przestrzeni nazw metryki CloudWatch Usage, wybierz IngestionRate i ActiveSeries, aby weryfikować i monitorować użycie względem limitów usług, jak pokazano na poniższym rysunku. Jeśli zauważysz, że którykolwiek z tych wskaźników zbliża się do limitu Twojego konta, możesz poprosić o zwiększenie limitu za pomocą konsoli wsparcia AWS.

Rysunek 1: Wskaźniki CloudWatch dla wskaźnika pozyskiwania i aktywnych serii dla usługi zarządzanej przez Amazon dla obszaru roboczego Prometheus.
Mógłbyś również przejrzeć metrykę DiscardedSamples w przestrzeni nazw AWS/Prometheus. Wyświetlenie wartości niezerowych w metryce DiscardedSamples może wskazywać, że obciążenie jest ograniczane z powodu przydziału usługi Amazon Managed Service for Prometheus.
Następny krok polega na przeanalizowaniu metryki, aby upewnić się, że reguły i alerty usługi Amazon Managed Service for Prometheus działają prawidłowo. Możesz przejrzeć RuleEvaluationFailures i RuleGroupInterationsMissed w przestrzeni nazw AWS/Prometheus, aby sprawdzić, czy występują jakiekolwiek problemy z utworzonymi regułami. Po przejrzeniu tych metryk spójrz na wskaźniki AlertManagerAlertsReceived i AlertManagerNotificationsFailed w przestrzeni nazw AWS/Prometheus.
Możesz zauważyć, że Twój obszar roboczy nie wysyła alertów. Faktycznie, patrząc na wskaźniki AlertManagerAlertsReceived i AlertManagerNotificationsFailed, nietrudno zauważyć, że manager alertów otrzymał alerty (niebieska linia), ale miał problemy z ich przetwarzaniem (czerwona linia), jak pokazano na poniższym rysunku.

Rysunek 2: Wskaźniki CloudWatch dla AlertManagerAlertsReceived i AlertManagerNotificationsFailed dla obszaru roboczego Amazon Managed Service for Prometheus.
Przeglądając definicję managera alertów dla obszaru roboczego z pewnością odkryjesz, że temat SNS nie pozwala na publikowanie wiadomości w obszarze roboczym. Po naprawieniu problemu z uprawnieniami przez przyznanie usłudze Amazon Managed Service dla usługi Prometheus uprawnień sns:Publish i sns:GetTopicAttributes w temacie SNS, wskaźnik AlertManagerNotificationsFailed spada do zera. Oznacza to, że alerty są teraz pomyślnie przetwarzane.
W powyższym artykule zademonstrowano wykorzystanie metryk sprzedaży w ramach Amazon Managed Service for Prometheus. Pokazano, jak monitorować wykorzystanie obszaru roboczego pod kątem przydziałów usług i jednocześnie przedstawiono, w jaki sposób te metryki pomogły w identyfikacji problemu dotyczącego konfiguracji menedżera alertów. Wskaźniki sprzedaży są udostępniane bezpłatnie.
Możesz użyć tych wskaźników, aby zweryfikować i monitorować swoje użycie pod kątem przydziałów, a także sprawdzić, czy reguły i alerty działają zgodnie z oczekiwaniami. W następnym kroku przejrzyj metryki w konsoli CloudWatch, aby upewnić się, że stos monitorowania działa poprawnie.
źródło: AWS