Überwachen von Zabbix-Warnungen mit Alerta unter CentOS 7

Einführung

Alerta ist eine Webanwendung, mit der Warnmeldungen aus mehreren Überwachungssystemen konsolidiert, de-dupliziert und auf einem einzigen Bildschirm angezeigt werden. Alerta kann in viele bekannte Überwachungstools wie Nagios, Zabbix, Sensu, InfluxData Kapacitor und viele andere integriert werden.

In diesem Lernprogramm richten Sie Alerta ein und konfigurieren es so, dass Benachrichtigungen vom Zabbix-Überwachungssystem angezeigt werden.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

Schritt 1 - Installieren des Alerta-API-Servers

Alerta besteht aus einem Server und einem Webinterface. Der Alerta-Server ist für das Speichern und Verarbeiten von Alerts sowie für die Bereitstellung von JSON über eine API verantwortlich. Über die Alerta-Weboberfläche können Sie die Liste der Alerts in einem Browser anzeigen, sodass Sie den JSON nicht selbst interpretieren müssen. Wir installieren beide Komponenten auf dem Server, auf dem wir MongoDB und Nginx installiert haben. In diesem Lernprogramm wird dieses Gerät als Alerta-Server bezeichnet. Melden Sie sich als Benutzer ohne Rootberechtigung auf diesem Computer an:

ssh sammy@

Bevor wir Alerta-Komponenten installieren können, müssen wir + pip +, den Python-Paketmanager und die Python-Entwicklungsdateien installieren. Außerdem muss Git installiert sein, damit wir den Quellcode von Alerta von GitHub abrufen können.

Führen Sie den folgenden Befehl aus, um diese Softwarepakete zu installieren:

sudo yum install python-pip python-devel gcc git

Sobald diese Pakete installiert sind, können wir Alerta installieren.

Zuerst installieren wir den Alerta-Server mit "+ pip +":

sudo pip install alerta-server

Überprüfen Sie die Installation, indem Sie den Alerta-Server im Entwicklungsmodus ausführen:

sudo alertad

Sie sollten etwas sehen wie:

Output     * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)

Jetzt können Sie "+ http: //: 8080 +" in Ihrem Browser öffnen und die Alerta API-Webseite aufrufen, die Ihnen einige Verwendungsbeispiele zeigt.

Wenn Sie überprüft haben, dass der Server ausgeführt wird, halten Sie den Server an, indem Sie die Tastenkombination "+ STRG + C +" drücken. Wir werden es in Kürze als Dienst konfigurieren.

Der Alerta-API-Server ist installiert. Installieren Sie daher die Webkonsole.

Schritt 2 - Installieren der Alerta Web-Benutzeroberfläche

Alerta verfügt über ein Dashboard, in dem Nachrichten in Ihrem Browser angezeigt werden. Es zeigt Warnmeldungen in Tabellen an, sodass Sie sie leicht lesen und sortieren können. Sie können die Ansicht so konfigurieren, dass sie Ihren Anforderungen entspricht: Sie können Nachrichten filtern oder nach einem beliebigen Feld sortieren. Außerdem können Sie detaillierte Informationen zu jeder Nachricht anzeigen. Wir installieren dies auf demselben Server, auf dem wir den Alerta-API-Server installiert haben.

Holen Sie sich zuerst den Quellcode von Github:

git clone https://github.com/alerta/angular-alerta-webui.git

Kopieren Sie dann die Anwendungsdateien in Ihr Webserver-Verzeichnis:

sudo mkdir -p /var/www/html/
sudo cp -r angular-alerta-webui/app/* /var/www/html/

Standardmäßig ist die Weboberfläche von Alerta für die Kommunikation mit der Entwicklungsserver-API konfiguriert, die auf dem Port "+ 8080 " ausgeführt wird. Wir richten dies für die Produktion ein, indem wir die API des Alerta-Servers auf dem Endpunkt " / api +" auf unserem Server verfügbar machen und den statischen Inhalt der Webkonsole aus derselben Domäne bereitstellen, wodurch wir Probleme mit https: // vermeiden können. ru.wikipedia.org/wiki/Cross-origin_resource_sharing[CORS] oder HTTPS-Fehler mit gemischtem Inhalt.

Öffnen Sie die Konfigurationsdatei "+ config.js":

sudo vi /var/www/html/config.js

Und setzen Sie den + Endpunkt auf` + / api`:

/var/www/html/config.js

   'use strict';

   angular.module('config', [])
     .constant('config', {
       'endpoint'    : "",
       'provider'    : "basic", // google, github, gitlab, keycloak or basic
   ...

Belassen Sie die anderen Optionen auf ihren Standardwerten. Wir werden einige davon später in diesem Tutorial ändern, wenn wir die OAuth-Autorisierung konfigurieren.

Jetzt sind alle notwendigen Alerta-Komponenten installiert. Wir müssen sie nur so einrichten, dass sie zusammenarbeiten.

Schritt 3 - Alerta mit uWSGI Behind Nginx ausführen.

Wir können den "+ alertad " - Entwicklungsserver für einige schnelle Tests verwenden, aber er eignet sich nicht für den produktiven Einsatz. Lassen Sie uns das beheben. Da Alerta in Python geschrieben ist, müssen wir einen WSGI-Server verwenden, um es auszuführen. In diesem Tutorial führen wir Alerta als uWSGI-Anwendung aus, die hinter Nginx unter ` http: /// api +` steht.

Installieren Sie zuerst den Anwendungsserver uWSGI mit dem Python-Paketmanager:

sudo pip install uwsgi

Als nächstes erstellen Sie die Datei "+ wsgi.py +", mit der der Anwendungsserver mit unserer Anwendung kommuniziert. Öffnen Sie die Datei in Ihrem Editor:

sudo vi /var/www/wsgi.py

Fügen Sie der Datei die folgende Zeile hinzu, die uWSGI mitteilt, wie die Alerta-Anwendung aufgerufen werden soll:

/var/www/wsgi.py

from alerta.app import app

Als nächstes müssen wir den uWSGI-Server selbst konfigurieren. Erstellen Sie ein Verzeichnis, in dem uWSGI die Socket-Datei speichern kann, und stellen Sie sicher, dass der Nginx-Prozess darauf zugreifen kann:

sudo mkdir /var/run/alerta
sudo chown -R nginx.nginx /var/run/alerta/

Dann erstelle die Konfigurationsdatei + / etc / uwsgi.ini + und öffne sie in deinem Editor:

sudo vi /etc/uwsgi.ini

Diese Datei gibt den Speicherort der Anwendung sowie die Socket-Optionen für die Interaktion mit Nginx an.

Fügen Sie der Datei die folgenden Zeilen hinzu:

/etc/uwsgi.ini

[uwsgi]
chdir = /var/www
mount = /api=wsgi.py
callable = app
manage-script-name = true

master = true
processes = 5
logger = syslog:alertad

socket = /var/run/alerta/uwsgi.sock
chmod-socket = 664
uid = nginx
gid = nginx
vacuum = true

die-on-term = true

Die vollständige Referenzliste der uWSGI-Optionen finden Sie in der documentation.

Als nächstes erstellen wir eine Systemd-Unit für diese Anwendung, damit wir sie mit dem Befehl "+ systemctl +" steuern können.

sudo vi /etc/systemd/system/alerta-app.service

Diese Gerätedatei benötigt einige Konfigurationsanweisungen, die das Gerät beschreiben und dessen Verhalten definieren. Fügen Sie der Datei die folgenden Zeilen hinzu:

/etc/systemd/system/alerta-app.service

[Unit]
Description=uWSGI service for Alerta
After=syslog.target

[Service]
ExecStart=/usr/bin/uwsgi --ini /etc/uwsgi.ini
RuntimeDirectory=uwsgi
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target

Weitere Informationen zu diesen Einstellungen und zur Arbeit mit Systemd-Geräten finden Sie unter this Systemd Lernprogramm.

Jetzt können Sie den uWSGI-Dienst ausführen:

sudo systemctl start alerta-app

Sie können den Status überprüfen, indem Sie Folgendes ausführen:

systemctl status alerta-app

Sie sehen die folgende Ausgabe:

Output    ●
      Loaded: loaded (/etc/systemd/system/alerta-app.service; disabled; vendor preset: disabled)
      Active:  (running) since Fri 2017-04-07 12:15:21 EEST; 2min 25s ago
    Main PID: 15935 (uwsgi)
      Status: "uWSGI is ready"
      CGroup: /system.slice/alerta-app.service
              ├─15935 /usr/bin/uwsgi --ini /etc/uwsgi.ini
              ├─15946 /usr/bin/uwsgi --ini /etc/uwsgi.ini
              ├─15947 /usr/bin/uwsgi --ini /etc/uwsgi.ini
              ├─15948 /usr/bin/uwsgi --ini /etc/uwsgi.ini
              ├─15949 /usr/bin/uwsgi --ini /etc/uwsgi.ini
              └─15950 /usr/bin/uwsgi --ini /etc/uwsgi.ini

Wie Sie sehen, ist der Dienst standardmäßig deaktiviert. Dies bedeutet, dass er nicht automatisch gestartet wird. Aktivieren Sie es:

sudo systemctl enable alerta-app

Schließlich müssen wir Nginx so konfigurieren, dass alle Anforderungen für "+ / api +" an den laufenden uWSGI-Server umgeleitet und das Web-Front-End mit Nginx bedient werden.

Anstatt die Standard-Nginx-Konfigurationsdatei zu ändern, wird die Alerta-Konfiguration in einer eigenen Datei gespeichert.

sudo vi /etc/nginx/conf.d/alerta.conf

Fügen Sie der Datei den folgenden Inhalt hinzu. Achten Sie darauf, den Wert für "+ Servername +" durch die IP-Adresse Ihres Alerta-Servers zu ersetzen.

/etc/nginx/conf.d/alerta.conf

server {
   listen  80;
   server_name  ;

   location /api { try_files $uri @api; }
   location @api {
   include uwsgi_params;
       uwsgi_pass unix:/var/run/alerta/uwsgi.sock;
       proxy_set_header Host $host:$server_port;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   }

   location / {
       root /var/www/html;
   }

   error_page  500 502 503 504  /50x.html;
   location = /50x.html {
       root  /usr/share/nginx/html;
   }
}

Weitere Informationen zu Nginx-Serverblöcken finden Sie in diesem tutorial.

Speichern Sie die Datei und beenden Sie den Editor.

Testen Sie als Nächstes die Nginx-Konfiguration, um sicherzustellen, dass keine Tippfehler oder Fehlkonfigurationen vorliegen:

sudo nginx -t

Die folgende Ausgabe wird angezeigt, sofern bei Ihrer Konfiguration keine Fehler aufgetreten sind:

Output    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
   nginx: configuration file /etc/nginx/nginx.conf test is successful

Wenn Sie etwas anderes sehen, beheben Sie die Fehler und versuchen Sie es erneut.

Jetzt können Sie Nginx neu laden, um neue Einstellungen zu übernehmen:

sudo nginx -s reload

Öffnen Sie den Link "+ http: // +" in Ihrem Browser und rufen Sie das Alerta-Dashboard auf.

Wenn Sie Alerta auf einem öffentlich zugänglichen Server installieren, sollten Sie ihn so konfigurieren, dass eine Authentifizierung erforderlich ist. Sehen wir uns dazu einige Methoden an.

Schritt 4 - Sichern von Alerta mit der Basisauthentifizierung

Standardmäßig kann jeder, der die Adresse des Alerta-Servers kennt, Nachrichten anzeigen. Dies ist für eine Testumgebung akzeptabel, jedoch nicht für die Produktion. Um die Authentifizierung zu erzwingen, öffnen Sie die Konfigurationsdatei "+ alertad.conf":

sudo vi /etc/alertad.conf

Fügen Sie der Datei den folgenden Code hinzu:

/etc/alertad.conf

AUTH_REQUIRED = True
SECRET_KEY = ''

Setzen Sie "+ SECRET_KEY +" auf eine zufällige Zeichenfolge Ihrer Wahl. Speichern Sie die Datei, beenden Sie den Editor und starten Sie den uWSGI-Dienst neu:

sudo systemctl restart alerta-app

Laden Sie die Alerta Web UI-Webseite neu und wählen Sie den Link * Login * im Menü. Sie sehen die Meldung "Bitte anmelden, um fortzufahren". Klicken Sie auf den Link * Konto erstellen * und erstellen Sie ein neues Konto. Sobald Sie den Vorgang abgeschlossen haben, erhalten Sie Zugriff auf das Alerta-Dashboard.

Sobald Sie die Authentifizierung aktiviert haben, benötigen Sie einen API-Schlüssel für den Zugriff auf die Alerta-API. Wählen Sie das Menü * Konfiguration * und anschließend * API-Schlüssel *.

Geben Sie den Namen der Anwendung ein, die Zugriff auf die API benötigt. Geben Sie für dieses Tutorial * zabix * ein. Wählen Sie dann * Lese- / Schreibzugriff * aus der Dropdown-Liste aus und klicken Sie auf die Schaltfläche * Neuen API-Schlüssel erstellen *. Der neue Schlüssel wird erstellt und Sie sehen die Details. Kopieren Sie diesen Schlüssel. Du wirst es später brauchen.

Alternativ können Sie die OAuth-Authentifizierung einrichten und Ihre GitHub- oder Google-Anmeldeinformationen verwenden, um sich bei der Alerta-Benutzeroberfläche anzumelden. Wenn die Standardauthentifizierung ausreicht, können Sie den nächsten Schritt überspringen.

Schritt 5 - Alerta mit OAuth sichern (optional)

Die Web-Benutzeroberfläche von Alerta unterstützt die OAuth-Authentifizierung für Google, GitHub, Gitlab und Keycloak. Wir konfigurieren die Anmeldung über ein GitHub -Konto, sodass Sie ein Konto benötigen, um fortzufahren.

Registrieren Sie zunächst eine neue Anwendung bei GitHub. Melden Sie sich bei Ihrem GitHub-Konto an und navigieren Sie auf der Seite Neue Anwendung zu ..

Füllen Sie das Formular mit folgenden Angaben aus:

  1. Füllen Sie * Anwendungsname * mit * Alerta * oder einem geeigneten aussagekräftigen Namen aus.

  2. Verwenden Sie für die * Homepage-URL * + http: /// +.

  3. Füllen Sie die * Authorization Callback URL * mit + http: /// + aus.

  4. Klicken Sie auf * Anwendung registrieren *, um die Einstellungen zu speichern.

  5. Kopieren Sie die Werte für * Client ID * und * Client Secret *, die auf dem nächsten Bildschirm angezeigt werden.

Bearbeiten Sie als Nächstes die Alerta-Konfiguration, um die OAuth-Authentifizierung zu aktivieren. Öffnen Sie die Konfigurationsdatei:

sudo vi /etc/alertad.conf

Fügen Sie am Ende der Datei die folgenden Einstellungen hinzu:

/etc/alertad.conf

OAUTH2_CLIENT_ID = ''
OAUTH2_CLIENT_SECRET = ''
ALLOWED_GITHUB_ORGS = ['']

Verwenden Sie für diese Werte Ihre GitHub-Client-ID, Ihr GitHub-Client-Geheimnis und Ihre GitHub-Organisation.

Speichern Sie die Datei, beenden Sie den Editor und starten Sie den uWSGI-Dienst neu:

sudo systemctl restart alerta-app

Ändern Sie dann den Authentifizierungsanbieter für die Webschnittstelle. Bearbeiten Sie die Konfigurationsdatei:

sudo vi /var/www/html/config.js

Suchen Sie den folgenden Abschnitt, ändern Sie den Anbieter von "+ basic " in " github +" und geben Sie Ihre GitHub-Client-ID ein:

/var/www/html/config.js

   ...


   ...

Öffnen Sie "+ http: // +", um auf die Alerta-Web-Benutzeroberfläche zuzugreifen. Dieses Mal wird die Meldung "Bitte anmelden, um fortzufahren" angezeigt. Klicken Sie auf die Schaltfläche "Anmelden", um sich anzumelden, und Sie werden aufgefordert, der Anwendung den Zugriff auf Ihr GitHub-Konto zu ermöglichen. Sobald Sie den Zugriff erlauben, werden Sie angemeldet.

Jetzt können wir einen einfachen Test durchführen, um zu überprüfen, ob Alerta richtig eingerichtet ist und funktioniert.

Schritt 6 - Senden einer Testnachricht

Wir werden das einheitliche Befehlszeilentool von Alerta verwenden, um eine Testwarnung zu senden. Installieren Sie zuerst den Befehlszeilenclient:

sudo pip install alerta

Erstellen Sie anschließend eine Konfigurationsdatei, die den zuvor konfigurierten Alerta-API-Endpunkt zusammen mit dem zu verwendenden API-Schlüssel definiert. Erstellen Sie eine neue Datei in Ihrem Editor:

vi ~/.alerta.conf

Fügen Sie Folgendes in die Datei ein:

~ / .alerta.conf

[DEFAULT]
endpoint = http://
key=

Verwenden Sie den API-Schlüssel, den Sie in Schritt 4 für die Option "+ key +" eingerichtet haben.

Jetzt können wir einen Testalarm senden:

alerta send --resource webserver01 --event down --environment Production --service Website01 --severity major --text "Web server 01 is down." --value ERROR

Es wird eine Ausgabe ähnlich der folgenden angezeigt:

Output1015fca2-eff6-441d-8c66-6abf9368b830 (indeterminate -> major)

Wenn Sie in Ihrem Browser "+ http: // +" aufrufen, wird auf dem Dashboard eine Meldung angezeigt, die der in der folgenden Abbildung entspricht:

image: https: //assets.digitalocean.com/articles/alerta_zabbix_centos7/SC6mZ6A.png [Warnung, die die Testwarnung anzeigt]

Sie können auf die Nachricht klicken, um die Details anzuzeigen.

Ihr Alerta-Server ist in Betrieb und wartet auf neue Nachrichten. Lassen Sie uns unser Zabbix-Überwachungssystem so konfigurieren, dass Alerts an Alerta gesendet werden.

Schritt 7 - Installieren des Zabbix-Alerta-Gateways

In diesem Schritt ändern wir unser Zabbix-Überwachungssystem so, dass Benachrichtigungen an Alerta gesendet werden.

Melden Sie sich bei Ihrem Zabbix-Server als Nicht-Root-Benutzer an:

ssh sammy@

Standardmäßig kann Zabbix Benachrichtigungen per E-Mail, SMS oder Jabber-Nachrichten senden, Sie können jedoch mithilfe von Skripts neue Benachrichtigungshandler hinzufügen. Die Alerta-Entwickler bieten ein fertiges Benachrichtigungsskript an. Um es zu installieren, klonen Sie das Repository zabbix-alerta und installieren es mit dem Installationsskript:

git clone
cd zabbix-alerta
sudo python setup.py install

Erstellen Sie dann einen symbolischen Link für das Skript "+ zabbix-alerta " in dem Verzeichnis, in dem Zabbix Warnungsskripte speichert. Sie finden den Pfad in der Konfigurationsdatei ` / etc / zabbix / zabbix_server.conf +`:

sudo grep -e '^AlertScriptsPath' /etc/zabbix/zabbix_server.conf

Es wird eine Ausgabe angezeigt, die wie folgt aussieht:

OutputAlertScriptsPath=/usr/lib/zabbix/alertscripts

Standardmäßig sucht Zabbix nach Skripten in + / usr / lib / zabbix / alertscripts +. Führen Sie den folgenden Befehl aus, um den Symlink zu erstellen:

sudo ln -s `which zabbix-alerta` /usr/lib/zabbix/alertscripts

Lassen Sie uns die Alerta-Integration konfigurieren. Melden Sie sich bei Ihrer Zabbix-Weboberfläche unter "+ http: /// zabbix / +" an.

Klicken Sie im Hauptmenü auf * Administration *, wählen Sie * Medientypen * und klicken Sie auf die Schaltfläche * Medientyp erstellen * in der oberen rechten Ecke.

Füllen Sie das Formular mit folgenden Angaben aus:

  • Geben Sie für * Name * "+ Alerta +" ein.

  • Wählen Sie für * Typ * * Skript * aus der Dropdown-Liste aus.

  • Geben Sie für * Skriptname * + zabbix-alerta + ein.

  • Geben Sie für * Skriptparameter * die folgenden Werte ein:

  • + {ALERT.SENDTO} +

  • + {ALERT.SUBJECT} +

  • + {ALERT.MESSAGE} +

  • Stellen Sie sicher, dass das Kontrollkästchen * Aktiviert * aktiviert ist.

Klicken Sie auf die Schaltfläche * Hinzufügen *, um den neuen Medientyp zu erstellen.

Fügen Sie dann neue Medien für Ihr Benutzerkonto hinzu. Wählen Sie im Hauptmenü * Administration * und anschließend * Users *. Klicken Sie auf Ihren Benutzernamen und wählen Sie die Registerkarte * Medien *. Geben Sie die folgenden Details ein

  • Wählen Sie für * Typ * * Alerta * aus.

  • Geben Sie für * Senden an * "+ http: /// api; +" ein.

Verwenden Sie den in Schritt 4 erstellten API-Schlüssel.

Speichern Sie die Konfiguration, indem Sie auf die Schaltfläche * Aktualisieren * klicken.

Konfigurieren Sie nun eine Aktion zum Senden von Nachrichten. Wählen Sie im Hauptmenü * Konfiguration * und anschließend * Aktionen *. Klicken Sie auf die Schaltfläche * Aktion erstellen *.

Setzen Sie auf der Registerkarte "Aktion" den Wert des Felds "Name" auf "+ An Benachrichtigung weiterleiten".

Legen Sie auf der Registerkarte * Vorgänge * die folgenden Optionen fest:

  • Setzen Sie * Default subject * auf + {TRIGGER.STATUS}: {TRIGGER.NAME} +

  • Geben Sie für * Standardnachricht * den folgenden Text ein:

Default message    resource={HOST.NAME1}
 event={ITEM.KEY1}
 environment=Production
 severity={TRIGGER.SEVERITY}
 status={TRIGGER.STATUS}
 ack={EVENT.ACK.STATUS}
 service={TRIGGER.HOSTGROUP.NAME}
 group=Zabbix
 value={ITEM.VALUE1}
 text={TRIGGER.STATUS}: {TRIGGER.NAME}
 tags={EVENT.TAGS}
 attributes.ip={HOST.IP1}
 attributes.thresholdInfo={TRIGGER.TEMPLATE.NAME}: {TRIGGER.EXPRESSION}
 type=zabbixAlert
 dateTime={EVENT.DATE}T{EVENT.TIME}Z

Zabbix sendet Nachrichten im angegebenen Format, wenn ein Problem festgestellt wird. Die Ausdrücke in geschweiften Klammern werden durch die entsprechenden Werte ersetzt. Alle diese Felder sind erforderlich, damit Alerta den Alert empfängt und korrekt anzeigt.

Erstellen Sie als Nächstes eine neue Operation, indem Sie im Feld * Operationen * auf * Neu * klicken. Geben Sie die folgenden Werte in das Formular ein:

  • Geben Sie für "An Benutzer senden" "++" ein.

  • Wählen Sie für * Nur senden an * * Alerta * aus dem Dropdown-Feld aus.

Wählen Sie dann die Registerkarte * Wiederherstellungsvorgänge * aus, und ändern Sie die Meldung * Standard * wie folgt:

Recovery operationsresource={HOST.NAME1}
event={ITEM.KEY1}
environment=Production
severity={TRIGGER.SEVERITY}
status={TRIGGER.STATUS}
ack={EVENT.ACK.STATUS}
service={TRIGGER.HOSTGROUP.NAME}
group=Zabbix
value={ITEM.VALUE1}
text={TRIGGER.STATUS}: {ITEM.NAME1}
tags={EVENT.RECOVERY.TAGS}
attributes.ip={HOST.IP1}
attributes.thresholdInfo={TRIGGER.TEMPLATE.NAME}: {TRIGGER.EXPRESSION}
attributes.moreInfo=<a href="http://x.x.x.x/tr_events.php?triggerid={TRIGGER.ID}&eventid={EVENT.RECOVERY.ID}">Zabbix console</a>
type=zabbixAlert
dateTime={EVENT.RECOVERY.DATE}T{EVENT.RECOVERY.TIME}Z

Diese Nachricht ähnelt der vorherigen Nachricht. Diese Nachricht wird gesendet, wenn das Problem behoben ist.

Schließen Sie die Konfiguration ab, indem Sie auf die Schaltfläche * Hinzufügen * klicken.

Zabbix ist bereit, Benachrichtigungen an Alerta zu senden. Lassen Sie uns einen generieren.

Schritt 8 - Test-Alert erstellen, um die Zabbix-Alerta-Integration zu überprüfen

Lassen Sie uns einen Testalarm generieren, um sicherzustellen, dass alles verbunden ist. Standardmäßig protokolliert Zabbix die Menge des freien Speicherplatzes auf Ihrem Server. Wir erstellen eine temporäre Datei, die groß genug ist, um die Dateisystemnutzungswarnung von Zabbix auszulösen.

Melden Sie sich bei Ihrem Zabbix-Server an, wenn Sie noch keine Verbindung hergestellt haben.

Bestimmen Sie als Nächstes, wie viel freien Speicherplatz Sie auf dem Server haben. Sie können den Befehl + df + verwenden, um Folgendes herauszufinden:

df -h

Die Ausgabe sieht folgendermaßen aus:

Output    Filesystem      Size  Used Avail Use% Mounted on
   /dev/vda1        20G  1.5G      9% /

Wir interessieren uns für die Menge an freiem Speicherplatz. In diesem Fall beträgt der freie Speicherplatz "+ 18GB +". Ihr freier Speicherplatz kann abweichen.

Verwenden Sie den Befehl + fallocate +, um eine Datei zu erstellen, die mehr als 80% des verfügbaren Speicherplatzes belegt. Dies sollte ausreichen, um die Warnung auszulösen:

fallocate -l 16G /tmp/temp.img

Innerhalb weniger Minuten löst Zabbix eine Warnung über die Menge des freien Speicherplatzes aus und führt die von uns konfigurierte Aktion aus und sendet die Benachrichtigungsnachricht an Alerta. Diese neue Benachrichtigung wird im Alerta-Dashboard angezeigt.

image: https: //assets.digitalocean.com/articles/alerta_zabbix_centos7/sLlRWM3.png [Alerta zeigt den Alarm für freien Speicherplatz von Zabbix an]

Nachdem Sie wissen, dass die Warnungen funktionieren, löschen Sie die von Ihnen erstellte temporäre Datei, damit Sie Ihren Speicherplatz zurückfordern können:

rm -f /tmp/temp.img

Nach einer Minute sendet Zabbix die Wiederherstellungsnachricht. Die Warnung wird vom Haupt-Dashboard ausgeblendet. Sie können jedoch alle geschlossenen Ereignisse anzeigen, indem Sie * Geschlossen * auswählen.

image: https: //assets.digitalocean.com/articles/alerta_zabbix_centos7/zWuB6Hz.png [Alertas geschlossene Alerts, die den aufgelösten Alarm für freien Speicherplatz anzeigen.]

Sie können auf die Ereigniszeile klicken, um weitere Details anzuzeigen.

Fazit

In diesem Lernprogramm haben Sie Alerta installiert und konfiguriert und Zabbix so eingerichtet, dass Benachrichtigungen gesendet werden. Als Ergebnis haben Sie jetzt ein praktisches Tool zum Verfolgen von Warnungen. Zukünftig können Sie weitere Benachrichtigungsquellen hinzufügen und so Informationen aus verschiedenen Überwachungssystemen konsolidieren und zentralisieren.