Collectd-web ist ein webbasiertes Überwachungstool, das auf RRDtool (Round-Robin Database Tool) basiert, das die von dem Collectd-Dienst auf Linux-Systemen gesammelten Daten interpretiert und grafisch ausgibt.
Collectd-Dienst wird standardmäßig mit einer großen Sammlung verfügbarer Plug-ins in seiner Standardkonfigurationsdatei geliefert, von denen einige standardmäßig bereits aktiviert sind, sobald Sie das Softwarepaket installiert haben.
Collectd-web CGI-Skripte, die die grafische HTML-Seitenstatistik interpretieren und generieren, können einfach über das Apache CGI-Gateway mit minimalen Konfigurationen auf der Apache-Webserverseite ausgeführt werden.
Die grafische Webschnittstelle mit den generierten Statistiken kann jedoch auch über den eigenständigen Webserver ausgeführt werden, der vom Python CGIHTTPServer-Skript angeboten wird, das im Haupt-Git-Repository vorinstalliert ist.
In diesem Tutorial wird der Installationsprozess des Collectd-Dienstes und der Collectd-web-Schnittstelle auf RHEL/CentOS/Fedora– und Ubuntu/Debian-basierten Systemen mit den minimalen Konfigurationen behandelt, die erforderlich sind, um die Dienste auszuführen und ein Collectd-Dienst-Plug-in zu aktivieren.
Bitte lesen Sie die folgenden Artikel der collectd-Serie durch.
Schritt 1: – Installieren Sie den Collectd-Dienst
Grundsätzlich ist die Aufgabe des Collectd-Daemon, Datenstatistiken des Systems zu sammeln und zu speichern, auf dem er läuft. Das Collectd-Paket kann aus den Standard-Debian-basierten Distribution-Repositories heruntergeladen und installiert werden, indem Sie den folgenden Befehl ausgeben:
Auf Ubuntu/Debian
# apt-get install collectd [On Debian based Systems]

Auf RHEL/CentOS 6.x/5.x
Auf älteren RedHat-basierten Systemen wie CentOS/Fedora müssen Sie zunächst das epel-Repository aktivieren, bevor Sie das collectd-Paket aus dem epel-Repository installieren können.
# yum install collectd
Auf RHEL/CentOS 7.x
In der neuesten Version von RHEL/CentOS 7.x können Sie das epel-Repository aus den standardmäßigen yum-Repos installieren und aktivieren, wie unten gezeigt.
# yum install epel-release # yum install collectd

Hinweis: Für Fedora-Benutzer ist es nicht erforderlich, irgendwelche Repositories von Drittanbietern zu aktivieren, einfach yum, um das Collectd-Paket aus den standardmäßigen yum-Repositories zu erhalten.
2. Sobald das Paket auf Ihrem System installiert ist, führen Sie den folgenden Befehl aus, um den Dienst zu starten.
# service collectd start [On Debian based Systems] # service collectd start [On RHEL/CentOS 6.x/5.x Systems] # systemctl start collectd.service [On RHEL/CentOS 7.x Systems]
Schritt 2: Collectd-Web und Abhängigkeiten installieren
3. Bevor Sie beginnen, das Collectd-Web-Git-Repository zu importieren, müssen Sie zunächst sicherstellen, dass das Git-Softwarepaket und die folgenden erforderlichen Abhängigkeiten auf Ihrem Rechner installiert sind:
----------------- On Debian / Ubuntu systems ----------------- # apt-get install git # apt-get install librrds-perl libjson-perl libhtml-parser-perl

----------------- On RedHat/CentOS/Fedora based systems ----------------- # yum install git # yum install rrdtool rrdtool-devel rrdtool-perl perl-HTML-Parser perl-JSON

Schritt 3: Importieren des Collectd-Web-Git-Repositorys und Ändern des eigenständigen Python-Servers
4. Wählen Sie im nächsten Schritt ein Verzeichnis aus und ändern Sie es in einen Systempfad aus der Linux-Verzeichnishierarchie, in dem Sie das Git-Projekt importieren möchten (Sie können den Pfad /usr/local/
verwenden), und führen Sie dann den folgenden Befehl aus, um das Git-Repository Collectd-web zu klonen:
# cd /usr/local/ # git clone https://github.com/httpdss/collectd-web.git

5. Sobald das Git-Repository in Ihr System importiert wurde, wechseln Sie zum Verzeichnis collectd-web und listen Sie dessen Inhalt auf, um das Python-Server-Skript (runserver.py
) zu identifizieren, das im nächsten Schritt geändert wird. Fügen Sie außerdem Ausführungsberechtigungen für das folgende CGI-Skript hinzu: graphdefs.cgi
.
# cd collectd-web/ # ls # chmod +x cgi-bin/graphdefs.cgi

6. Das eigenständige Python-Server-Skript von Collectd-web ist standardmäßig so konfiguriert, dass es nur auf der Loopback-Adresse (127.0.0.1) ausgeführt und gebunden wird.
Um auf die Collectd-web-Oberfläche von einem entfernten Browser aus zuzugreifen, müssen Sie das Skript runserver.py
bearbeiten und die 127.0.1.1 IP Adresse in 0.0.0.0 ändern, um es an alle IP-Adressen der Netzwerkschnittstellen zu binden.
Wenn Sie es nur an eine bestimmte Schnittstelle binden möchten, verwenden Sie die IP-Adresse dieser Schnittstelle (es wird nicht empfohlen, diese Option zu verwenden, wenn Ihre Netzwerkschnittstellenadresse dynamisch von einem DHCP-Server zugewiesen wird). Verwenden Sie untenstehenden Screenshot als Auszug, wie das endgültige runserver.py
-Skript aussehen sollte:
# nano runserver.py

Wenn Sie einen anderen Netzwerkport als 8888 verwenden möchten, ändern Sie den Wert der PORT-Variablen.
Schritt 4: Führen Sie den eigenständigen Python-CGI-Server aus und durchsuchen Sie die Collectd-web-Oberfläche.
7. Nachdem Sie die eigenständige Python-Server-Skript-IP-Adressbindung geändert haben, starten Sie den Server im Hintergrund, indem Sie den folgenden Befehl ausführen:
# ./runserver.py &
Optional, als alternative Methode können Sie den Python-Interpreter aufrufen, um den Server zu starten:
# python runserver.py &

Source:
https://www.tecmint.com/install-collectd-and-collectd-web-to-monitor-server-resources-in-linux/