Schritt-für-Schritt-Anleitung: So aktivieren Sie die Nginx-Statusseite
14:45, 30.04.2025
Der Nginx-Webserver ist bekannt für seine Leistung und Skalierbarkeit, was ihn zu einer beliebten Wahl für Systemadministratoren macht. Eine seiner leistungsstarken Funktionen ist die Möglichkeit, eine Statusseite zu aktivieren, die Echtzeitmetriken über die Gesundheit und Leistung Ihres Servers bereitstellt. In diesem Leitfaden zeigen wir Ihnen, wie Sie die Nginx-Statusseite aktivieren, den Zugriff konfigurieren und sie in Überwachungslösungen integrieren.
Bevor wir jedoch direkt loslegen, stellen Sie sicher, dass Sie NGINX installiert und konfiguriert haben.
Aktivierung des ngx_http_stub_status_module für NGINX
Bevor Sie die Nginx-Statusseite anzeigen können, müssen Sie sicherstellen, dass das ngx http_stub_status_module aktiviert ist. Die meisten Nginx-Distributionen verfügen normalerweise darüber, aber falls es nicht vorhanden ist, sollten Sie eine andere Version von Nginx installieren, die das Modul enthält.
Um zu überprüfen, ob das Modul enthalten ist, führen Sie den folgenden Befehl aus:
nginx -V 2>&1 | grep -o with-http_stub_status_module
Wenn die Ausgabe http_stub_status_module anzeigt, bedeutet dies, dass das Modul enthalten ist. Wenn dies nicht der Fall ist, sollten Sie die Version von Nginx installieren, die das erwähnte Modul hat. Die meisten Paketmanager bieten das Paket nginx-full, das das http_stub_status_module enthält. Darüber hinaus können Sie den folgenden Befehl ausführen, um es zu installieren:
apt-get install nginx-full
Einrichten des NGINX-Status-Dashboards
Da wir nun sichergestellt haben, dass wir das Modul haben, konfigurieren wir die Statusseite. Öffne dazu die Nginx-Konfigurationsdatei (unter /etc/nginx/nginx.conf oder /etc/nginx/conf.d/default.conf).
Standard-Server Konfiguration einrichten
Suche in der Datei nach einem default_server-Block. Wenn du keinen findest, musst du einen erstellen, indem du Folgendes in den HTTP-Konfigurations Block einfügst:
server {
listen 80;
listen [::]:80;
server_name _; # catch-all domain
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
Die stub status-Anweisung einfügen
Jetzt müssen wir einen Standort Block für das stub_status-Modul definieren. Der Standortblock hilft uns bei der Bestimmung eines HTTP-Pfads für die Statusseite.
Füge den folgenden Standort Block in den Standardserver Block ein:
location /nginx/status {
stub_status;
}
Zugriffskontrollen für die NGINX-Statusseite implementieren
Die Statusseite erfordert Zugriffskontrollen, da sie vertrauliche Daten enthält, die möglicherweise in böswilliger Absicht verwendet werden könnten. Du musst die IP-Adressen, die die Statusseite anzeigen können, einschränken, indem du dem Standort Block „allow/deny“-Anweisungen hinzufügst. Dies kannst du durch Ausführen der folgenden Befehle erreichen:
location /nginx/status {
stub_status;
allow 127.0.0.1;
deny all;
}
Wir empfehlen, den Zugriff auf die Seite für interne Netzwerke zu erlauben, indem du die folgende Zeile hinzufügst: allow 10.0.0.0/8.
Änderungen anwenden und Konfiguration überprüfen
Als Nächstes wenden wir die Änderungen an und überprüfen die Konfiguration. Speichere zunächst deine Nginx-Konfigurationsdatei. Teste dann die Konfiguration, indem du den folgenden Befehl ausführst:
nginx -t
Sobald die Konfiguration vollständig getestet wurde, starte den Nginx-Server neu, um die Änderungen zu übernehmen:
nginx -s reload
Anzeigen des NGINX-Status-Dashboards
Es gibt mehrere Möglichkeiten, das Nginx-Status-Dashboard anzuzeigen: über einen Webbrowser oder ein Befehlszeilenprogramm.
Wenn du einen Browser verwenden möchtest, öffne das Fenster 127.0.0.1/nginx/status.
Wenn du ein Befehlszeilenprogramm wie curl verwenden möchtest, führe den folgenden Befehl aus:
curl http://127.0.0.1:80/nginx/status
Analyse der NGINX-Status Metriken
Die NGINX-Statusseite bietet mehrere Metriken, darunter:
- Aktive Verbindungen: Die Anzahl der derzeit aktiven Verbindungen.
- Akzeptierte Verbindungen: Die Gesamtzahl der akzeptierten Verbindungen.
- Verarbeitete Verbindungen: Die Gesamtzahl der verarbeiteten Verbindungen.
- Anfragen: Die Gesamtzahl der Anfragen, die bearbeitet wurden.
- Lesende Anfragen: Die Anzahl der Anfragen, die derzeit gelesen werden.
- Schreibende Antworten: Die Anzahl der Antworten, die derzeit geschrieben werden.
- Warten auf Verbindung: Die Anzahl der Verbindungen, die auf eine Antwort warten.
- Lesen aus einer Datei: Die Anzahl der Anfragen, die aus einer Datei gelesen werden.
NGINX-Statusdaten mit Überwachungssystemen verbinden
Es ist wichtig, Nginx-Statusdaten mit Überwachungssystemen zu verbinden. Wie dies geschieht, hängt vom System ab.
Verwendung von DataDog für die NGINX-Überwachung
Um DataDog für die Nginx-Überwachung zu verwenden, bearbeite die Datei nginx.d/conf.yaml und setze den Parameter nginx_status_url auf http://127.0.0.1:80/nginx/status.
Jetzt muss nur noch DataDog neu gestartet werden.
Allgemeine Lösung zur Überwachung der Betriebszeit
Es können auch andere Überwachungslösungen wie Prometheus, Grafana oder jeder andere Dienst zur Überwachung der Betriebszeit verwendet werden, der HTTP-Prüfungen ermöglicht. Diese Tools müssen lediglich auf die URL der Nginx-Statusseite verweisen.
<H2> Fazit
Die Aktivierung der Nginx-Statusseite ist ein einfacher Vorgang, der wertvolle Einblicke in die Leistung Ihres Servers bietet. Wenn du die in diesem Leitfaden beschriebenen Schritte befolgst, kannst du deinen Nginx-Server effektiv überwachen und so eine optimale Leistung und eine schnelle Reaktion auf potenzielle Probleme sicherstellen. Durch die Integration dieser Daten in Überwachungslösungen wie DataDog wird deine Fähigkeit verbessert, eine gesunde Serverumgebung zu verwalten und zu warten.