3 Apache über HTTP überwachen
Einführung
Diese Seite zeigt eine schnelle und einfache Möglichkeit, die Überwachung eines Apache-Webservers zu starten, ohne zusätzliche Software zu installieren.
Für wen diese Anleitung gedacht ist
Diese Anleitung richtet sich an neue Zabbix-Benutzer und enthält die minimale Anzahl an Schritten, die erforderlich sind, um die grundlegende Überwachung Ihrer Apache-Installation zu aktivieren. Wenn Sie nach Möglichkeiten zur tiefgehenden Anpassung suchen oder eine erweiterte Konfiguration benötigen, lesen Sie den Abschnitt Configuration im Zabbix-Handbuch.
Voraussetzungen
Bevor Sie mit dieser Installationsanleitung fortfahren, müssen Sie den Zabbix Server und das Zabbix Frontend gemäß den Anweisungen für Ihr Betriebssystem herunterladen und installieren.
Apache vorbereiten
1. Prüfen Sie, welche Apache-Version Sie verwenden:
Führen Sie auf einem RHEL-basierten System Folgendes aus:
httpd -v
Führen Sie auf Debian/Ubuntu Folgendes aus:
apache2 -v
2. Stellen Sie sicher, dass das Status-Modul in Ihrer Apache-Instanz aktiviert ist.
Führen Sie auf einem RHEL-basierten System Folgendes aus:
httpd -M | grep status
status_module (shared)
Führen Sie auf Debian/Ubuntu Folgendes aus:
apache2ctl -M | grep status
status_module (shared)
Wenn status_module nicht in der Liste angezeigt wird, aktivieren Sie das Modul mit folgendem Befehl:
Führen Sie auf einem RHEL-basierten System Folgendes aus:
LoadModule status_module /usr/lib/apache2/modules/mod_status.so
Führen Sie auf Debian/Ubuntu Folgendes aus:
sudo /usr/sbin/a2enmod status
3. Bearbeiten Sie die Apache-Konfigurationsdatei, um den Zugriff auf Statusberichte von der IP-Adresse des Zabbix-Servers zu erlauben.
Auf einem RHEL-basierten System: /etc/httpd/conf.modules.d/status.conf:
sudo vi /etc/httpd/conf.modules.d/status.conf
Auf Debian/Ubuntu: /etc/apache2/mods-enabled/status.conf:
sudo vi /etc/apache2/mods-enabled/status.conf
Fügen Sie der Datei die folgenden Zeilen hinzu (ersetzen Sie 198.51.100.255 durch die IP-Adresse Ihres Zabbix-Servers):
-
Für Apache 2.2:
<Location /server-status> SetHandler server-statusOrder Deny,Allow Deny from all Allow from 198.51.100.255 </Location>
-
Für Apache 2.4:
<Location "/server-status"> SetHandler server-status Require ip 198.51.100.255 </Location>
4. Starten Sie Apache neu
Führen Sie auf einem RHEL-basierten System Folgendes aus:
sudo systemctl restart httpd
Führen Sie auf Debian/Ubuntu Folgendes aus:
sudo systemctl restart apache2
5. Um zu prüfen, ob alles korrekt konfiguriert ist, führen Sie Folgendes aus (ersetzen Sie 198.51.100.255 durch die IP-Adresse Ihres Zabbix-Servers):
curl 198.51.100.255/server-status
Die Antwort sollte Apache-Webserver-Statistiken enthalten.
Zabbix für die Überwachung konfigurieren
1. Melden Sie sich im Zabbix Frontend an.
2. Erstellen Sie einen Host in der Zabbix-Weboberfläche.
Dieser Host wird Ihren Apache-Server repräsentieren.
3. Fügen Sie im Parameter Interfaces eine Agent-Schnittstelle hinzu und geben Sie die IP-Adresse Ihrer Apache-Instanz an. Sie müssen Zabbix agent nicht auf dem Rechner installieren, die Schnittstelle wird nur zur Auflösung des Makros {HOST.CONN} verwendet. Dieses Makro wird in den Datenpunkten der Vorlage verwendet, um die Apache-Instanz zu lokalisieren.
4. Geben Sie im Parameter Templates Apache by HTTP ein oder wählen Sie es aus.

5. Wechseln Sie zur Registerkarte Macros und wählen Sie den Modus Inherited and host macros. Prüfen Sie, ob die Werte der Makros {$APACHE.STATUS.PORT} und {$APACHE.STATUS.SCHEME} zu Ihren Installationseinstellungen passen. Standardmäßig ist der Port 80 und das Schema http. Ändern Sie die Makrowerte, wenn Sie einen anderen Port und/oder ein anderes Schema verwenden.

Gesammelte Metriken anzeigen
Herzlichen Glückwunsch! Zu diesem Zeitpunkt überwacht Zabbix bereits Ihren Apache-Webserver.
Um die gesammelten Metriken anzuzeigen, öffnen Sie den Menüabschnitt Monitoring->Hosts menu section und klicken Sie neben dem Host auf Dashboards.

Dadurch gelangen Sie zum Dashboard des Hosts mit den wichtigsten Metriken, die von der Apache-Seite /server-status erfasst wurden.

Alternativ können Sie unter Monitoring->Hosts auf Latest data klicken, um alle zuletzt erfassten Metriken in einer Liste anzuzeigen.

Problembenachrichtigungen einrichten
Zabbix kann Sie mit verschiedenen Methoden über ein Problem in Ihrer Infrastruktur benachrichtigen.
Diese Anleitung enthält die Konfigurationsschritte zum Senden von E-Mail-Benachrichtigungen.
1. Gehen Sie zu Benutzereinstellungen -> Profil, wechseln Sie zur Registerkarte Medien und fügen Sie Ihre E-Mail-Adresse hinzu.

2. Folgen Sie der Anleitung für Empfangen von Problembenachrichtigungen.
Wenn Zabbix das nächste Mal ein Problem erkennt, sollten Sie eine Benachrichtigung per E-Mail erhalten.
Testen Sie Ihre Konfiguration
So simulieren Sie ein echtes Problem und erhalten eine Test-Benachrichtigung zu einem Problem:
1. Öffnen Sie die Konfiguration des Hosts Apache server in Zabbix.
2. Wechseln Sie zur Registerkarte „Macros“ und wählen Sie Inherited and host macros.
3. Klicken Sie neben dem Makro {$APACHE.STATUS.PORT} auf Change und legen Sie einen anderen Port fest.
4. Klicken Sie auf Update, um die Host-Konfiguration zu speichern.
5. In wenigen Minuten erkennt Zabbix das Problem Apache service is down, da jetzt keine Verbindung zur Instanz hergestellt werden kann. Es wird im Abschnitt Monitoring->Problems angezeigt.

Wenn die Benachrichtigungen konfiguriert sind, erhalten Sie außerdem die Problembenachrichtigung.
6. Ändern Sie den Makrowert wieder zurück, um das Problem zu beheben und Apache weiter zu überwachen.
Siehe auch:
- Härtung des Webservers - empfohlene Einstellungen für mehr Sicherheit des Webservers.
- Erstellen eines Datenpunkts - wie Sie mit der Überwachung zusätzlicher Metriken beginnen.
- HTTP-Datenpunkte - wie Sie benutzerdefinierte Metriken mit HTTP-Agent überwachen.
- Problemeskalationen - wie Sie mehrstufige Warnszenarien erstellen
(z. B. zuerst eine Nachricht an den Systemadministrator senden und dann, wenn ein Problem nicht innerhalb von 45 Minuten behoben wird, eine Nachricht
an den Rechenzentrumsleiter senden).