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-status

    Order 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.

Erfasste Metriken anzeigen

Glückwunsch! Zu diesem Zeitpunkt überwacht Zabbix bereits Ihren Apache-Webserver.

Um die erfassten Metriken anzuzeigen, öffnen Sie den Menüabschnitt Monitoring->Hosts Menüabschnitt und klicken Sie auf Dashboards neben dem Host.

Diese Aktion führt Sie zum Host-Dashboard mit den wichtigsten Metriken, die von der Apache-/server-status-Seite 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

Um ein echtes Problem zu simulieren und eine Test-Problembenachrichtigung zu erhalten:

1. Öffnen Sie in Zabbix die Host-Konfiguration Apache server.

2. Wechseln Sie zur Registerkarte Macros und wählen Sie Inherited and host macros aus.

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. Nach einigen Minuten erkennt Zabbix das Problem Apache service is down, da keine Verbindung mehr zur Instanz hergestellt werden kann.
Es wird im Bereich 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 die Überwachung von Apache fortzusetzen.

Siehe auch:

  • Absicherung des Webservers - empfohlene Einstellungen für eine höhere Sicherheit des Webservers.
  • Erstellen eines Datenpunkts - wie Sie mit der Überwachung zusätzlicher Metriken beginnen.
  • HTTP-Datenpunkte - wie Sie benutzerdefinierte Metriken mit dem HTTP-Agent überwachen.
  • Problem-Eskalationen - wie Sie mehrstufige Alarmszenarien erstellen
    (z. B. zuerst eine Nachricht an den Systemadministrator senden und dann, wenn ein Problem nach 45 Minuten nicht behoben ist, eine Nachricht an den Rechenzentrumsleiter senden).