Website-Suche

So überwachen Sie die Leistung des CentOS 8/7-Servers mithilfe von Netdata


Es gibt unzählige Überwachungstools, mit denen Sie die Systemleistung im Auge behalten und Benachrichtigungen senden können, falls etwas schief geht. Allerdings sind die damit verbundenen Installations- und Konfigurationsschritte oft langwierig.

Netdata ist ein Open-Source-Tool zur Echtzeitüberwachung und Fehlerbehebung, dessen Installation nur wenige Schritte erfordert. Das Git-Repository verfügt über ein automatisiertes Skript, das den Großteil des Installations- und Konfigurationsprozesses übernimmt und die umständliche Konfiguration, die mit anderen Überwachungstools verbunden ist, überflüssig macht.

Netdata erfreut sich seit seiner ersten Veröffentlichung im Oktober 2013 großer Beliebtheit. Es sammelt Echtzeitmetriken wie CPU- und RAM-Auslastung, Bandbreitenstatistiken und Festplattenauslastung und zeigt sie in einfach zu interpretierenden Diagrammen an. Grafiken.

Es hat große Sprünge gemacht und sich dadurch einen Platz in der Liste der aufstrebenden Forbes 2020 Cloud 100 gesichert. Diese Liste umfasst die 100 größten privaten Cloud-Unternehmen.

In diesem Artikel erfahren Sie, wie Sie Netdata auf CentOS 8/7 installieren können, um die Echtzeit-, Leistungs- und Gesundheitsüberwachung von Servern und Anwendungen zu überwachen.

Unterstützte Plattformen

Netdata unterstützt die folgenden Distributionen:

  • CentOS 8 und CentOS 7
  • RHEL 8 und RHEL 7
  • Fedora-Linux

So installieren Sie Netdata unter CentOS Linux

1. Bevor wir uns mit der Installation von Netdata befassen, sind einige erforderliche Pakete obligatorisch. Aktualisieren Sie jedoch zunächst das System und installieren Sie das EPEL-Repository wie gezeigt.

sudo yum update
sudo yum install epel-release

2. Als nächstes installieren Sie die erforderlichen Softwarepakete wie gezeigt.

sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils

3. Sobald Sie mit der Installation der erforderlichen Pakete fertig sind, klonen Sie das Netdata-Git-Repository wie gezeigt.

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

4. Navigieren Sie als Nächstes in das Verzeichnis Netdata und führen Sie das Skript install-required-packages.sh aus. Das Skript erkennt Ihre Linux-Distribution und installiert zusätzliche Pakete, die während der Installation von Netdata erforderlich sind.

cd netdata/
./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata 

5. Um schließlich Netdata zu installieren, führen Sie das automatisierte Netdata-Skript wie unten gezeigt aus.

sudo ./netdata-installer.sh

Nach der Ausführung des Skripts werden Sie darüber informiert, wo wichtige Netdata-Dateien gespeichert werden. Dazu gehören beispielsweise Konfigurationsdateien, Webdateien, Plugins, Datenbankdateien und Protokolldateien, um nur einige zu nennen.

6. Drücken Sie „ENTER“, um mit dem Installationsvorgang zu beginnen. Während des Installationsvorgangs erhalten Sie einige Tipps, wie Sie im Browser auf Netdata zugreifen und die Netdata verwalten, beispielsweise starten und stoppen.

Das Skript läuft eine ganze Weile und nimmt während des Installationsprozesses alle notwendigen Konfigurationen und Optimierungen vor. In meinem Fall hat es etwa 3–5 Minuten gedauert, und sobald die Installation abgeschlossen ist, sollte die angezeigte Ausgabe eine Bestätigung sein, dass die Installation erfolgreich war.

7. Nach der Installation muss der Netdata-Daemon betriebsbereit sein. Aktivieren Sie zunächst den Netdata-Daemon beim Booten und überprüfen Sie den Status, indem Sie die folgenden Befehle aufrufen:

sudo systemctl start netdata
sudo systemctl enable netdata
sudo systemctl status netdata

8. Standardmäßig lauscht Netdata auf Port 19999 und Sie können dies mit dem Befehl „netstat“ wie gezeigt bestätigen:

sudo netstat -pnltu | grep netdata

9. Wir müssen diesen Port in der Firewall öffnen, um über einen Browser Zugriff auf Netdata zu haben. Führen Sie dazu die folgenden Befehle aus:

sudo firewall-cmd --add-port=19999/tcp --permanent
sudo firewall-cmd --reload

10. Um auf Netdata zuzugreifen, starten Sie Ihren Browser und durchsuchen Sie die URL wie gezeigt:

http://centos8-ip:19999/

Sie erhalten ein Dashboard, das Ihnen die Gesamtsystemleistung in intuitiven und coolen Diagrammen anzeigt.

Werfen Sie einen Blick auf die verschiedenen Diagramme, indem Sie auf die in der rechten Seitenleiste aufgeführten Kennzahlen klicken. Um beispielsweise einen Blick auf die laufenden Systemd-Dienste zu werfen, klicken Sie wie gezeigt auf die Option „Systemd-Dienste“.

Sichern von Netdata mit Basisauthentifizierung unter CentOS

Wie Sie vielleicht alarmierend bemerkt haben, bietet Netdata keine Form der Authentifizierung. Dies bedeutet, dass praktisch jeder auf das Dashboard zugreifen kann, sofern er die IP-Adresse von Netdata erhält.

Glücklicherweise können wir die Basisauthentifizierung mit dem Programm htpasswd und dem Nginx-Webserver als Reverse-Proxy konfigurieren. Daher werden wir den Nginx-Webserver installieren.

sudo dnf install nginx

Wenn Nginx installiert ist, erstellen wir eine Konfigurationsdatei im Verzeichnis /etc/nginx/conf.d. Sie können jedoch gerne das Verzeichnis sites-available verwenden, wenn Sie Nginx für andere Zwecke als Netdata verwenden.

sudo vim /etc/nginx/conf.d/default.conf

Fügen Sie die folgende gesamte Konfiguration hinzu und stellen Sie sicher, dass Sie die Anweisungen server_ip und example.com durch Ihre eigene Server-IP-Adresse und Ihren eigenen Servernamen ändern.

upstream netdata-backend {
    server 127.0.0.1:19999;
    keepalive 64;
}

server {
    listen server_ip:80;
    server_name example.com;

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

    location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://netdata-backend;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }
}

Zur Benutzerauthentifizierung erstellen wir mit dem Tool htpasswd einen Benutzernamen und ein Passwort für einen Benutzer namens tecmint und bewahren die Anmeldeinformationen unter netdata-access auf Datei.

sudo htpasswd -c /etc/nginx/netdata-access tecmint

Geben Sie das Passwort ein und bestätigen Sie es.

Starten Sie anschließend den Nginx-Webserver neu, damit die Änderungen wirksam werden.

sudo systemctl restart nginx

Um zu testen, ob die Konfiguration richtig gelaufen ist, fahren Sie fort und durchsuchen Sie die IP-Adresse Ihres Servers.

http://server-ip

Anschließend erhalten Sie Zugriff auf das Netdata-Dashboard.

Und das ist es, Leute. Wir haben Sie durch die Installation des Netdata-Überwachungstools auf CentOS 8 geführt und die Basisauthentifizierung konfiguriert, um das Überwachungstool zu sichern. Rufen Sie uns an und lassen Sie uns wissen, wie es gelaufen ist.