Wie man Nginx mit Netdata auf CentOS 7 überwacht
Netdata ist ein Open Source Überwachungssystem für Linux-Server. Es bietet Echtzeit-Leistungs- und Zustandsüberwachung mit einem ansprechenden Dashboard und Analysen. Netdata sollte auf jeder Linux-Distribution laufen – wurde getestet auf Alpine Linux, Arch Linux, CentOS, Ubuntu etc. Es bietet Echtzeit-Zustandsüberwachungs-Tools für Ihre Server, CPU, Speichernutzung, IPv4- und IPv6-Netzwerke und Benutzeranwendungen wie Nginx, fail2ban, MySQL, MongoDB etc.
In diesem Tutorial werde ich Ihnen zeigen, wie Sie Nginx mit Netdata überwachen können. Dieses Tutorial behandelt die Installation des Nginx-Webservers, die Aktivierung des Moduls’stub_status‘ und die Installation von Netdata auf CentOS 7.
Was wir tun werden
- Installieren Sie den Nginx Webserver.
- Aktivieren Sie das Nginx-Modul’stub_status‘.
- Installieren Sie Netdata auf CentOS 7.
- Überwachen Sie Nginx mit Netdata.
- Test.
Voraussetzungen
- CentOS 7 Server
- Root-Rechte
Schritt 1 – Nginx Webserver installieren
In diesem Schritt installieren wir den Nginx-Webserver aus dem EPEL-Repository (Extra Packages for Enterprise Linux). Bevor Sie Nginx installieren, stellen Sie sicher, dass das EPEL-Repository auf Ihrem Server installiert ist.
Wenn du es nicht hast, kannst du es mit dem folgenden Befehl installieren.
yum -y install epel-release
Als nächstes installieren Sie Nginx mit dem Befehl yum unten.
yum -y install nginx
Und wenn die Installation abgeschlossen ist, starten Sie den Dienst und aktivieren Sie ihn, damit er beim Systemstart mit den untenstehenden systemctl-Befehlen automatisch gestartet wird.
systemctl start nginx systemctl enable nginx
Öffnen Sie nach der Installation die HTTP- und HTTPS-Ports mit dem Befehl firewall-cmd unten.
firewall-cmd --add-service=http --permanent firewall-cmd --add-service=https --permanent firewall-cmd --reload
Hinweis: Wenn Sie den Befehl firewall-cmd nicht haben, können Sie die firewalld-Pakete aus dem Repository installieren.
yum -y install firewalld
Der Nginx-Webserver wurde installiert.
Schritt 2 – Nginx stub_status module aktivieren
Um Nginx mit Netdata zu überwachen, müssen wir das Modul’stub_status‘ durch Bearbeiten der Konfiguration aktivieren. Stellen Sie sicher, dass Ihre Nginx-Version über ein Modul namens’stub_status‘ verfügt, überprüfen Sie das Modul mit dem folgenden Befehl.
nginx -V
Du solltest ein ähnliches Ergebnis wie das folgende erhalten.
Stellen Sie sicher, dass Sie das Modul’stub_status‘ auf der Liste haben.
Bearbeiten Sie anschließend die nginx-Konfigurationsdatei ’nginx.conf‘, um das Modul’stub_status‘ zu aktivieren. Gehen Sie in das Verzeichnis’/etc/nginx/‘ und bearbeiten Sie die Konfiguration mit vim.
cd /etc/nginx/ vim nginx.conf
Fügen Sie die folgende Konfiguration innerhalb des Blocks‘server {}‚ ein.
location /stub_status { stub_status; # Security: Only allow access from the IP below. allow 127.0.0.1; # Deny anyone else deny all; }
Speichern und beenden.
Testen Sie nun die nginx-Konfiguration und stellen Sie sicher, dass kein Fehler vorliegt. Starten Sie dann nginx neu.
nginx -t systemctl restart nginx
Das Nginx-Modul’stub_status‘ wurde aktiviert – wir können es mit dem Befehl curl überprüfen, wie unten gezeigt.
curl http://127.0.0.1/stub_status
Wenn es aktiviert ist, können Sie das Ergebnis wie folgt sehen.
Schritt 3 – Installieren Sie die Netdata auf CentOS 7.
In diesem Schritt werden wir Netdata auf dem CentOS 7 Server installieren. Vor der Installation von Netdata müssen wir einige Pakete für die Installation von Netdata installieren.
Installieren Sie die für die Installation von Netdata benötigten Pakete mit dem folgenden Befehl yum.
yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig curl jq nodejs
Als nächstes laden Sie den Netdata-Quellcode mit dem folgenden git-Befehl herunter.
cd ~ git clone https://github.com/firehol/netdata.git --depth=1
Gehen Sie in das Verzeichnis netdata und führen Sie das Netdata-Installationsskript mit sudo-Rechten aus.
cd netdata/ sudo ./netdata-installer.sh
Drücken Sie’Enter‘, um mit der Nedata-Installation fortzufahren.
Und wenn die Installation abgeschlossen ist, sehen Sie das Ergebnis wie folgt.
Netdata wurde auf CentOS 7 installiert und läuft auf Port’19999′.
Öffnen Sie den Port mit dem Befehl firewall-cmd unten.
sudo firewall-cmd --permanent --add-port=19999/tcp sudo firewall-cmd --reload
Netdata bietet ein Skript für Systemdienste, mit dem Sie Netdata mit dem Befehl systemctl verwalten können. Starten Sie die Nettodaten neu und ermöglichen Sie es ihr, bei jedem Systemstart automatisch zu starten.
systemctl restart netdata systemctl enable netdata
Überprüfen Sie den geöffneten Port des Servers – stellen Sie sicher, dass Sie den Port 19999 in den Zustand’LISTEN‘ bringen.
netstat -plntu
Das Netdata Monitoring Tool wurde auf CentOS 7 installiert.
Schritt 4 – Nginx mit Netdata überwachen
Zu diesem Zeitpunkt wurde Nginx installiert, das Modul stub_status aktiviert und die Installation von Netdata abgeschlossen. In diesem Schritt wollen wir den nginx-Webserver mit Netdata überwachen. Überwachung auf Anfragen, aktive Verbindung und Status.
Netdata bietet Module zur Überwachung von Systemanwendungen. Es gibt einige Anwendungen wie Apache, Nginx, MongoDB usw., die Python-Module für die Überwachung mit Netdata verwenden.
Gehen Sie in das Verzeichnis netdata ‚python.d‘ und bearbeiten Sie die Konfigurationsdatei nginx.conf mit vim.
cd /etc/netdata/python.d/ vim nginx.conf
Gehen Sie zur unteren Zeile und stellen Sie sicher, dass Sie eine Konfiguration wie unten gezeigt haben.
localhost: name : 'local' url : 'http://localhost/stub_status'
Speichern und beenden.
Starten Sie nun den netdata-Dienst mit dem Befehl systemctl neu.
systemctl restart netdata
Schritt 5 – Prüfung
Öffnen Sie Ihren Webbrowser und besuchen Sie die Server-IP-Adresse mit Port 19999.
http://192.168.1.11:19999/
Und Sie erhalten das Netdata Dashboard.
Klicken Sie auf die Schaltfläche’nginx local‘ auf der rechten Seite und sehen Sie, welche aktiven Verbindungen, Anfragen, Status und die Verbindungsrate von Nginx bestehen.
Netdata wurde auf dem CentOS 7-Server installiert, und der Nginx-Webserver wird mit Netdata überwacht.