Wie man Nginx mit Netdata auf Ubuntu 16.04 überwacht

Netdata ist ein Open-Source-Monitoring-Tool für Linux-Server. Es bietet Echtzeit-Leistungs- und Zustandsüberwachung mit einem ansprechenden Dashboard und Analysen. Netdata sollte auf jeder Linux-Distribution laufen, es wurde auf Alpine Linux, Arch Linux, CentOS, Ubuntu etc. getestet. Es überwacht CPU, Speichernutzung, IPv4 und v6, Benutzeranwendungen wie Nginx, fail2ban, MySQL, MongoDB etc.

In diesem Tutorial werde ich Ihnen zeigen, wie Sie Nginx mit Netdata überwachen können. Das Tutorial behandelt die Installation des Nginx-Webservers, die Aktivierung des Moduls’stub_status‘ in Nginx und die Installation von Netdata auf Ubuntu 16.04 Xenial Xerus.

Was wir tun werden:

  1. Installieren Sie den Nginx Webserver.
  2. Netdata Monitoring Tool auf Ubuntu 16.04 installieren.
  3. Aktivieren Sie das Nginx-Modul’stub_status‘.
  4. Netdata für die Überwachung von Nginx konfigurieren.
  5. UFW Firewall konfigurieren.
  6. Test.

Voraussetzung

  • Ubuntu 16.04 Server
  • Root-Rechte

Schritt 1 – Nginx Webserver installieren

Der erste Schritt, den wir tun müssen, ist die Installation des Nginx-Webservers aus dem Repository. Aktualisieren Sie das Ubuntu-Repository, bevor Sie Nginx mit dem Befehl apt update installieren.

apt update

Installieren Sie Nginx aus dem Ubuntu-Repository mit dem untenstehenden Befehl apt install.

apt install -y nginx

Wenn die Installation abgeschlossen ist, starten Sie Nginx und fügen Sie es hinzu, um es automatisch zum Startzeitpunkt mit systemctl-Befehlen zu starten.

systemctl start nginx
systemctl enable nginx

Der Webserver läuft, überprüfen Sie ihn mit curl.

curl -I localhost

Stellen Sie sicher, dass Sie ein Ergebnis des http-Status’200 OK‘ haben, wie im Screenshot unten gezeigt.

Installation von Nginx

Der Nginx-Webserver wurde installiert.

Schritt 2 – Netdata Monitoring Tool auf Ubuntu 16.04 installieren

In diesem Schritt installieren wir das Netdata Monitoring Tool aus der Quelle. Ich werde es manuell mit dem mitgelieferten Installer installieren. Vor der Installation von Netdata müssen wir einige benötigte Pakete installieren.

Installieren Sie die für die Installation von Netdata erforderlichen Pakete mit dem untenstehenden Befehl apt install.

apt install -y zlib1g-dev uuid-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl

Wenn alle Pakete installiert sind, laden Sie den Quellcode von Netdata von github mit dem Befehl git herunter.

git clone https://github.com/firehol/netdata.git --depth=1

Download netdata Sourcecode mit GIT

Gehen Sie in das Verzeichnis’netdata‘ und führen Sie das Installationsskript’netdata-installer.sh‘ mit sudo-Rechten aus.

cd netdata/
sudo ./netdata-installer.sh

Drücken Sie’Enter‘, um die Installation von Netdata fortzusetzen.

Installation des Netdata Monitoring Tools

Wenn die Installation abgeschlossen ist, erhalten Sie das Ergebnis wie folgt.

netdata wurde installiert

Das Netdata Monitoring Tool stellt ein Service-Skript für das System zur Verfügung. Starten Sie netdata und fügen Sie hinzu, um automatisch zum Startzeitpunkt mit den folgenden systemctl-Befehlen zu starten.

systemctl start netdata
systemctl enable netdata

Standardmäßig läuft er auf Port 19999, überprüfen Sie den Port mit netstat und stellen Sie sicher, dass Sie Port 19999 im Zustand’LISTEN‘ haben.

netstat -plntu

Netdata wurde gestartet

Das Netdata Monitoring Tool wurde installiert.

Schritt 3 – Nginx Modul’stub_status‘ aktivieren

Um den Nginx-Webserver mit dem Netdata-Monitoring-Tool zu überwachen, benötigen wir einige zusätzliche Konfigurationen. Fisrt, müssen wir das Modul nginx’stub_status‘ für die Konfiguration des virtuellen Hosts aktivieren.

Bevor Sie die Konfiguration des virtuellen Hosts bearbeiten, stellen Sie sicher, dass Sie eine nginx-Version mit dem Modul’stub_status‘ installiert haben. Überprüfen Sie dies mit dem Befehl unten.

nginx -V

Stellen Sie sicher, dass Sie ein Modul’stub_status‘ haben, wie unten beschrieben.

Nginx stub_status module prüfen

Gehen Sie anschließend in das nginx-Konfigurationsverzeichnis und bearbeiten Sie die virtuelle Hostdatei „default“ mit dem vim-Editor.

cd /etc/nginx/sites-available/
vim default

Fügen Sie die untenstehende Konfiguration in den Block „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.

stub_status aktivieren

Testen Sie die nginx-Konfiguration und stellen Sie sicher, dass ein Fehler vorliegt und starten Sie den nginx-Dienst neu.

nginx -t
systemctl restart nginx

Das Nginx-Modul’stub_status‘ wurde aktiviert, überprüfen Sie es mit dem folgenden netstat-Befehl.

curl http://127.0.0.1/stub_status

Und Sie erhalten das Ergebnis wie unten beschrieben.

stub_status in Nginx wurde aktiviert.

Schritt 4 – Nettodaten für die Überwachung von Nginx konfigurieren

Netdata bietet Python-Module zur Überwachung unserer installierten Anwendungen auf dem System, einschließlich Nginx-Webserver. Um Nginx mit Netdata zu überwachen, benötigen wir das Nginx-Modul’stub_status‘ und es wurde bereits aktiviert.

Gehen Sie nun in das Netdata-Konfigurationsverzeichnis. Und dann bearbeiten Sie die Datei nginx.conf im Verzeichnis python.d.

cd /etc/netdata/
vim python.d/nginx.conf

Stellen Sie sicher, dass Sie die Konfiguration wie unten beschrieben haben.

localhost:
  name : 'local'
  url  : 'http://localhost/stub_status'

Speichern Sie die Datei und beenden Sie vim.

Nettodaten für Nginx konfigurieren

Starten Sie nun Netdata mit systemctl neu.

systemctl restart netdata

Die Netdata-Konfiguration für die Nginx-Überwachung ist abgeschlossen.

Schritt 5 – UFW Firewall konfigurieren

In diesem Tutorial werde ich die Ubuntu-Firewall UFW aktivieren. Ich werde HTTP- und HTTPS-Ports öffnen und dann den neuen Port 19999 für den Zugriff auf das Netdata Dashboard öffnen.

Stellen Sie sicher, dass Sie das UFW-Firewall-Paket installiert haben, andernfalls verwenden Sie den folgenden Befehl, um es zu installieren.

apt install -y ufw

Öffnen Sie nun die Ports für ssh, http, https und netdata port 19999 mit den untenstehenden Befehlen’ufw allow‘.

ufw allow ssh
ufw allow http
ufw allow https
ufw allow 19999/tcp

UFW Firewall konfigurieren

Als nächstes starten Sie die UFW-Firewall und fügen sie hinzu, um sie beim Booten automatisch zu starten.

ufw enable

Geben Sie ‚y‚ bis yes ein und drücken Sie ‚Enter‘.

Wenn Sie damit fertig sind, überprüfen Sie den Firewall-Status wie unten beschrieben.

ufw status

Und du bekommst neue Ports ist auf der Liste wie unten.

UFW Firewall-Status

Schritt 6 – Prüfung

Öffnen Sie Ihren Browser und geben Sie die Serveradresse mit Port 19999 ein.

http://192.168.1.11:19999/

Sie sollten das Netdata Dashboard sehen.

Netdata Monitor Dashboard

Klicken Sie auf die Schaltfläche’nginx local‘ auf der rechten Seite und sehen Sie, ob Nginx aktive Verbindungen, Anfragen, Status und die Verbindungsrate anzeigt.

Nginx-Status im Netdata-Monitor

Der Nginx-Webserver wird nun mit Netdata überwacht, und Netdata wurde auf dem Ubuntu 16.04-Server installiert.

Referenz

Das könnte Dich auch interessieren …