Przedstawienie wskaźników sprzedaży dla usługi zarządzanej przez Amazon dla firmy Prometheus
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