Heim >Betrieb und Instandhaltung >Sicherheit >[Nightingale Monitoring] Alarmmanagement, großartig!

[Nightingale Monitoring] Alarmmanagement, großartig!

PHPz
PHPznach vorne
2023-06-09 08:31:301162Durchsuche

[Nightingale Monitoring] Alarmmanagement, großartig!

Überwachung ist die Methode, Alarmierung ist das Mittel und Lösung ist das Ziel.

Aber sind Sie jemals auf diese Art von Verwirrung gestoßen? Ich habe viele Indikatoren gesammelt, weiß aber nicht, welche Indikatoren Alarme auslösen sollen, wie ich diese Alarme an die entsprechenden Teams oder Einzelpersonen senden soll oder wie ich die Alarme aktualisieren soll.

Als ich zuvor Prometheus+Altermanager verwendet habe, habe ich für jedes Team eine DingTalk-Gruppe erstellt und dann eine Reihe von Tags hinzugefügt, verschiedene Tags abgeglichen und sie an verschiedene Gruppen gesendet. Wenn ich Alarme aktualisieren möchte, wird es viele geben Zeitprobleme werden durch eine Schwellenwertaktualisierung behoben, es ist jedoch schwierig, denselben Alarm durch eine Zeitaktualisierung zu behandeln.

Aber die Alarmregelverwaltung von Nightingale ist nicht so kompliziert (sie erledigen die komplizierten Dinge für Sie), und sie ist auch sehr elegant. Ich habe Nightingale zum ersten Mal in „[Nightingale Monitoring]“ getroffen und sie ist immer noch stark! 》​​Erwähnt: Grafana ist besser in der Überwachung der Panel-Verwaltung und N9e ist besser in der Verwaltung von Alarmregeln.

Werfen wir heute einen Blick darauf, wie Nightingale spielt.

Alarmregeln

Die Soldaten und Pferde bewegen sich noch nicht, Futter und Gras gehen zuerst.

Um zu warnen, müssen wir zunächst wissen, was unsere Bedürfnisse sind, das heißt, wir müssen verstehen, welche Indikatoren gewarnt werden müssen.

Auf der Systemebene müssen wir beispielsweise CPU, Speicher, Festplatte, E/A und andere Indikatoren berücksichtigen, auf der Geschäftsebene müssen wir die Sättigung, Fehlerrate und Verzögerung berücksichtigen. Diesmal müssen wir die Anzahl der fehlgeschlagenen Transaktionen berücksichtigen, wo sie fehlgeschlagen sind usw.

Auf verschiedenen Ebenen werden unterschiedliche Überwachungsindikatoren und Alarmstrategien berücksichtigt.

Die Alarmregeln von Nightingale sind in integrierte Regeln und benutzerdefinierte Regeln unterteilt.

Die integrierten Regeln sollen die Schwelle für die Nutzung durch alle senken und jedem eine Reihe universeller Regeln zur Verfügung stellen. Die Hauptinhalte sind wie folgt:

[Nightingale Monitoring] Alarmmanagement, großartig!

Die integrierten Alarmregeln werden erst wirksam, wenn Sie sie in Ihre Regeln übernehmen. Wenn Ihnen eine bestimmte Regel gefällt, können Sie sie in die aktiven Regeln klonen. Ich habe beispielsweise die Linux-Alarmregel TIME_WAIT in die Standard-Unternehmensgruppe geklont.

[Nightingale Monitoring] Alarmmanagement, großartig!

Gehen Sie dann zur Alarmregelübersicht und Sie werden sehen, dass der Standard-Unternehmensgruppe eine neue Alarmregel hinzugefügt wurde.

[Nightingale Monitoring] Alarmmanagement, großartig!

Haben Sie Inspiration im Kopf, nachdem Sie das gesehen haben?

Wir können entsprechend der tatsächlichen Situation mehrere Unternehmensgruppen erstellen und dann die Alarmregeln für mehrere Unternehmensgruppen separat verwalten?

Angenommen, wir haben zwei Teams, das Front Office und das Middle Office, dann können wir die Indikatoren separat klassifizieren.

[Nightingale Monitoring] Alarmmanagement, großartig!

Grundsätzlich sind die standardmäßig importierten Regeln nicht wirksam und erfordern einige zusätzliche Konfigurationen.

Klicken Sie auf den Namen der Alarmregel, um die Konfigurationsseite aufzurufen.

[Nightingale Monitoring] Alarmmanagement, großartig!

Wir können Alarmbedingungen, Datenquellen, Alarmstufen und andere Konfigurationen anpassen. Die oben konfigurierten Informationen sind wie folgt zusammengefasst:

    Die Datenquelle des Alarms ist local_prometheus, die angibt, aus welchem ​​Cluster Ihr Alarm stammt.
  • Die Alarmbedingung besteht darin, dass der Alarm nur ausgelöst wird, wenn die Gesamtzahl von TIME_WAIT größer als 20000 ist.
  • Die Alarmstufe ist Stufe 2, die allgemein wichtige Stufe.
  • Die Ausführungsfrequenz beträgt einmal alle 15 Sekunden, wenn die Alarmregel weiterhin 60 Sekunden lang erfüllt ist.
Der nächste Schritt ist die zusätzliche Konfiguration, wie folgt:

[Nightingale Monitoring] Alarmmanagement, großartig!

Die effektive Konfiguration wird verwendet, um die Alarmregel zu konfigurieren. Welcher Zeitraum und welche Unternehmensgruppe werden wirksam? Die Benachrichtigungskonfiguration besteht darin, das Benachrichtigungsmedium zu konfigurieren, d. h. wenn ein Alarm auftritt, über welche Kanäle er an welchen Ort gesendet werden soll.

Sie können jedoch auch zusätzliche Konfigurationen in der Benachrichtigungskonfiguration vornehmen:

  • Wiederherstellungsbenachrichtigung starten, d. h. wenn der Alarm wiederhergestellt ist, wird die verantwortliche Person auch über diesen Kanal benachrichtigt.
  • Alarmempfangsgruppe, auch Unternehmensgruppe genannt.
  • Beobachten Sie die Dauer, nachdem der Alarm wiederhergestellt wurde. Beobachten Sie, wie lange es dauert, eine Wiederherstellungsbenachrichtigung an die Unternehmensgruppe zu senden. Welche flüchtigen Alarme können vermieden werden?
  • Wiederholen Sie die Benachrichtigung, d. h. wenn der Alarm innerhalb dieses Zeitraums nicht behoben wurde, wird er erneut gesendet. Natürlich handelt es sich hierbei noch nicht um eine Alarmeskalation.

Haben Sie, nachdem Sie dies gesehen haben, ein gewisses Verständnis für die Verwaltung gewöhnlicher Alarmregeln?

Zusätzlich zum Klonen der integrierten Alarmregeln können wir Alarmregeln auch anpassen, die Gesamtkonfiguration ist jedoch dieselbe wie oben.

Alarme blockieren

Im Allgemeinen sind blockierte Alarme keine sehr wichtigen Alarme.

Unter welchen Umständen wird der Alarm blockiert?

Wenn wir beispielsweise eine Anwendung veröffentlichen, werden wir unweigerlich auf Probleme stoßen. Zu diesem Zeitpunkt können wir im Voraus einige Blockierungsregeln festlegen, um die Generierung von Alarmmeldungen zu vermeiden.

[Nightingale Monitoring] Alarmmanagement, großartig!

Abschirmungsregeln sind auch nach Geschäftskomponenten unterteilt. Wir können wie folgt eine neue Regel hinzufügen, um eine Regel zum Blockieren von Message Center-Alarmen zu erstellen.

[Nightingale Monitoring] Alarmmanagement, großartig!

Auf diese Weise werden innerhalb eines festgelegten Zeitfensters die Alarminformationen nicht mehr gesendet.

Einige Schüler fragen sich vielleicht: Ist es etwas mühsam, sie einzeln auf diese Weise hinzuzufügen?

Wenn es sich um einen aktiven Alarm handelt, der generiert wurde, kann dieser mit einem Klick blockiert werden.

[Nightingale Monitoring] Alarmmanagement, großartig!

Wenn es sich um einen historischen Alarm handelt, kann dieser auch mit einem Klick blockiert werden.

[Nightingale Monitoring] Alarmmanagement, großartig!

Was noch?

Wenn Sie etwas blockieren möchten, fügen Sie es einfach selbst hinzu!

Alarm-Upgrade

Was soll ich tun, wenn ein Alarm nicht innerhalb eines bestimmten Zeitraums bearbeitet wurde?

Entweder ist es keine wichtige Warnung – löschen Sie die Regel und lassen Sie sie unbrauchbar.

Oder es handelt sich um einen Alarm, der nicht gelöst werden kann – aktualisieren Sie ihn und informieren Sie mehr Menschen darüber.

In Nightingale können Alarm-Upgrades in Abonnementregeln implementiert werden.

Unsere Konfiguration sieht beispielsweise wie folgt aus:

[Nightingale Monitoring] Alarmmanagement, großartig!

Wenn das Alarmereignis von server=notice nicht innerhalb einer Stunde behoben wird, erhöhen wir die Alarmstufe auf Stufe eins und senden die Alarminformationen an eine höhere Ebene Gruppe.

Die Regeln hier können auch von Business-Teams klassifiziert und verwaltet werden.

Darüber hinaus werden auch aktive Alarme und historische Alarme angezeigt. Sie können die aktuellen Alarminformationen und historischen Alarmaufzeichnungen überprüfen.

Alarm-Selbstheilung

Je länger Sie in Betrieb und Wartung arbeiten, desto mehr werden Sie feststellen, dass sich die Verarbeitung vieler Dinge wiederholt. Einige einfache und sich wiederholende Aufgaben können durch automatisierte Skripte verarbeitet werden, was nicht nur die Arbeit verbessern kann Effizienz, aber auch die Effizienz des Betriebs auf einem bestimmten Niveau verbessern. Reduzieren Sie das Risiko menschlicher Bedienung bis zu einem gewissen Grad.

Nightingale bietet eine Alarm-Selbstheilungsfunktion. Auch wenn die Funktion gut ist, seien Sie nicht gierig.

Wenn es um einen Alarm geht, müssen Sie zunächst den wahren Grund dafür herausfinden, damit Sie das Problem lösen können. Für die Selbstheilung des Alarms müssen Sie also verstehen, dass das Risiko des von Ihnen durchgeführten automatisierten Vorgangs sehr gering ist und Sie ihn viele Male versucht haben. Verwenden Sie nicht den Vorgang cd /opt/aaa;rm -rf ./.

Verwenden Sie in Nightingale die Ibex-Vorlage, um die Selbstheilung des Alarms zu implementieren. Derzeit muss die Ibex-Serverseite selbst bereitgestellt werden, und die Ibex-Agent-Seite wurde in Categraf integriert.

Ibex-Server bereitstellen

Gehen Sie zu https://github.com/flashcatcloud/ibex/releases, um das Binärpaket herunterzuladen. Nach dem Herunterladen befinden sich darin die folgenden Dateien:

# ll
total 21536
drwxr-xr-x 3 root root 4096 Apr 19 10:44 etc
-rwxr-xr-x 1 root root 16105472 Nov 152021 ibex
-rw------- 1 root root5931963 Jun32022 ibex-1.0.0.tar.gz
drwxr-xr-x 2 root root 4096 Nov 152021 sql

Datenbank importieren:

mysql -uroot -p <sql/ibex.sql

Ändern Sie dann die Konfigurationsdatei /etc/server.conf und ändern Sie dabei hauptsächlich die Datenbankkonfiguration.

Endlich den Server starten:

nohup ./ibex server &> server.log &

Konfigurieren Sie den Client

In der Systemkonfiguration​->Benachrichtigungskonfiguration​->Konfiguration des Alarm-Selbstheilungsmoduls entsprechende Serveradresse:

[Nightingale Monitoring] Alarmmanagement, großartig!

Testen Selbstheilung

Gehen Sie dann zum Alarm-Selbstheilung->Selbstheilungsskript und fügen Sie ein Skript wie folgt hinzu:

[Nightingale Monitoring] Alarmmanagement, großartig!

Speichern und beenden, klicken Sie, um eine Aufgabe zu erstellen:

[Nightingale Monitoring] Alarmmanagement, großartig!

Wenn die Konfiguration im Inneren nicht geändert werden muss oder nachdem die entsprechende Konfiguration geändert wurde, wählen Sie die sofortige Ausführung aus:

[Nightingale Monitoring] Alarmmanagement, großartig!

Glauben Sie, dass es an diesem Punkt in Ordnung ist?

Jedenfalls ist mir das nicht gelungen. An dieser Stelle muss ich mich über dieses Modul beschweren:

  • Gibt es Voraussetzungen für den Einsatz von ibex-server?
  • Gibt es irgendwelche Voraussetzungen für ibex-agent (categraf)?
  • Die Ausführung des Selbstheilungsskripts ist fehlgeschlagen. Es gibt weder auf dem Client noch auf dem Server ein spezifisches Fehlerprotokoll.
  • Wie fügt man den Alarm-Selbstheilungskonfigurationseintrag der N9e V6-Version in das Nachrichtenbenachrichtigungsmodul ein? Seltsam
  • Das offizielle Dokument dieses Moduls ist etwas zu einfach

Also, es ist mir hier nicht gelungen, das Frontend hat eine Zeitüberschreitung ausgelöst.

[Nightingale Monitoring] Alarmmanagement, großartig!

Keine Protokolle im Backend.

[Nightingale Monitoring] Alarmmanagement, großartig!

Zusammenfassung

Derzeit kann Nightingale die Verwaltung von Alarmregeln, Alarmkanalverteilung, Alarmmeldungsunterdrückung und -aktualisierung relativ vollständig abschließen, und FlashDuty kann auf verschiedene Clusteralarme zugreifen, was in den meisten Unternehmen ausreichend ist.

Nur beim Test der Alarm-Selbstheilung habe ich nicht erfolgreich getestet. Es sollte mit meiner Umgebung zusammenhängen:

  • Das Gesamtmodul von N9e wird mithilfe von Helm auf K8s bereitgestellt, die Ibex-Serverseite wird jedoch direkt auf dem Host in binärer Form bereitgestellt.
  • Es gibt jedoch keinen bestimmten Grund Nach der Fehlerbehebung Es waren zu wenige Informationen zur Fehlerbehebung verfügbar.

Das obige ist der detaillierte Inhalt von[Nightingale Monitoring] Alarmmanagement, großartig!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen