Zum Inhalt springen

Alerting-Übersicht – Schritt für Schritt

Das folgende Tutorial gibt Ihnen einen Überblick darüber, wie Alerting mit Prometheus und Alertmanager funktioniert.

  • Alert Group: Zusammenfassung von Alert Rules und Alert Records, die dasselbe Thema und dasselbe Prüfintervall haben.
  • Alert Rule: Definiert Alarmbedingungen basierend auf der Prometheus Query Language und sendet die Benachrichtigung an einen externen Service.
  • Alert Record: Häufig benötigte oder rechenintensive Ausdrücke werden vorab berechnet und als Zeitreihen gespeichert.
  • Alertconfigs Routes: Ein Route-Block definiert einen Knoten in einem Routing-Baum sowie dessen Unterknoten.
  • Alertconfigs Receivers: Definiert einen oder mehrere Benachrichtigungskanäle.
  • Prometheus-Konfiguration:
    • Alert Groups fassen Alert Rules mit derselben Alarmkategorie zusammen. Zusätzlich kann das Prüfintervall für diese Alert Group individuell festgelegt werden.
    • Prometheus prüft periodisch alle definierten Alert Rules, um festzustellen, ob ihre Bedingung im Ausdruck (expr) erfüllt ist.
      Der Alarm kann mit einer Verzögerung (for) versehen werden. Ein Alarm wird nur ausgelöst, wenn die Bedingung beispielsweise über 5 Minuten hinweg erfüllt bleibt.
      Dem Alarm werden Labels hinzugefügt, um ihn für die weitere Alarmierung zu kategorisieren. Ein Beispiel hierfür ist „severity=warning“. Das Label severity definiert den Schweregrad des Alarms.
      Die Annotation enthält eine Fehlerbeschreibung (annotations).
    • Es ist möglich, häufig benötigte oder rechenintensive Ausdrücke mithilfe von Alert Records zu berechnen und als Zeitreihen zu speichern.
      Diese können in den Alert Rules verwendet werden und beschleunigen die Verarbeitung der Alarme.
    • Prometheus hat damit einen Alarm definiert und sendet ihn zur weiteren Verarbeitung an den Alert Manager.
    • Dieser Link führt zur detaillierten Dokumentation: API Alertmanager Groups and Alerts Observability
  • Alert-Manager-Konfiguration:
    • Der Alert Manager übernimmt die Deduplizierung, Gruppierung und Weiterleitung. Die Konfiguration erfolgt in den Alertconfigs Routes.
      Ähnliche Alarme – inhaltlich (groupBy) oder zeitlich (group_wait) – werden vom Alert Manager zu einer Nachricht zusammengefasst.
    • Matcher definieren Filter für die in den Alert Rules angegebenen Labels. Wenn alle im Matcher definierten Labels mit denen des Alarms übereinstimmen, wird der in den Routes hinterlegte Empfänger ausgewählt.
    • Die Empfänger werden über Alertconfigs Receivers konfiguriert. Der Empfängername (name) muss mit dem Empfänger (receiver) der Alertconfigs Routes übereinstimmen.
      Mindestens die Pflichtfelder eines Empfängers müssen ausgefüllt sein, damit ein Alarm funktioniert. Alarme per E-Mail, OpsGenie und Webhook sind möglich.
    • Dieser Link führt zur detaillierten Dokumentation: API Alertmanager Receiver Observability

Für jedes Konfigurationsobjekt existiert ein API-Aufruf, über den die jeweilige Komponente bereitgestellt werden kann. Die entsprechende Dokumentation finden Sie unter den folgenden Links:

Die relevanten Informationen finden Sie unter den folgenden API-URLs:

  • Melden Sie sich im STACKIT Portal an.
  • Wählen Sie ein Projekt aus.
  • Klicken Sie im Bereich „Overview“ auf Services.
  • Wählen Sie den Service aus.
  • Wählen Sie im Bereich „Service details“ den Punkt „Dashboard“ aus.
  • Klicken Sie auf „Service Dashboard“.
  • Wählen Sie im Bereich OBSERVABILITY DASHBOARD den Menüpunkt „API“ aus.
  • Über die API-URL ist es möglich, eine Verbindung zur Observability API herzustellen.