So installieren Sie das Munin Monitoring Tool unter Debian 8

Einführung

Munin ist eine System-, Netzwerk- und Infrastrukturüberwachungsanwendung, die Informationen in Diagrammen über einen Webbrowser bereitstellt. Es basiert auf einer Client-Server-Architektur und kann so konfiguriert werden, dass es den Computer überwacht, auf dem es installiert ist (den Munin-Master), sowie eine beliebige Anzahl von Client-Computern, die in Munin als Munin-Knoten bezeichnet werden.

In diesem Artikel installieren und konfigurieren wir Munin so, dass der Server, auf dem es installiert ist, und ein Knoten überwacht werden. Um Munin auf mehreren Knoten zu installieren, befolgen Sie einfach die Anweisungen zum Erstellen eines Knotens auf jedem System.

Voraussetzungen

  • Zwei Debian 8.1-Tröpfchen

  • Für jedes Droplet ein Nicht-Root-Benutzer mit Sudo-Berechtigungen

Sofern nicht anders angegeben, sollten alle Befehle in diesem Lernprogramm als Nicht-Root-Benutzer mit Sudo-Berechtigungen ausgeführt werden. Informationen zum Erstellen von Benutzern und zum Gewähren von Sudo-Berechtigungen finden Sie unter Initial Server Setup with Debian 8.

Schritt 1 - Erforderliche Pakete installieren

Wir werden zuerst am Munin-Meister arbeiten. Vor der Installation von Munin müssen einige Abhängigkeiten installiert werden.

Munin kann zwar mit den meisten gängigen Webservern wie Nginx und Lighttpd zusammenarbeiten, ist jedoch standardmäßig für die Verwendung mit dem Apache-Webserver ausgelegt. Stellen Sie also sicher, dass Apache auf dem Munin-Master installiert und konfiguriert ist. Wenn es noch nicht installiert ist, verwenden Sie dazu Folgendes:

sudo apt-get update
sudo apt-get install -y apache2
  • Um sicherzustellen, dass die Dynazoom-Funktionalität, die für das Zoomen in die generierten Diagramme verantwortlich ist, beim Klicken ordnungsgemäß funktioniert, installieren Sie Folgendes:

sudo apt-get install -y libcgi-fast-perl libapache2-mod-fcgid

Nach der Installation dieser beiden Pakete sollte das + fcgid + Modul aktiviert worden sein. Geben Sie zum Überprüfen Folgendes ein:

/usr/sbin/apachectl -M | grep -i cgi

Die Ausgabe sollte sein:

fcgid_module (shared)

Wenn die Ausgabe leer ist, ist sie nicht aktiviert. Sie können es dann aktivieren mit:

sudo a2enmod fcgid

Wenn Sie den Befehl + apachectl + ausführen, können Sie die folgende Warnung ignorieren:

Could not reliably determine the server's fully qualified domain name ...

Apache wird mit dieser Warnung weiterhin mit Munin zusammenarbeiten.

Der Rest der Konfiguration, mit der das Zoomen von Diagrammen ordnungsgemäß funktioniert, wird in Schritt 3 behandelt.

Schritt 2 - Munin auf dem Munin Master installieren

Installationspakete für Munin sind im Debian-Repository verfügbar, so dass es mit dem Paket-Manager der Distribution installiert werden kann. In diesem Schritt installieren Sie das Munin-Masterpaket aus dem Stable-Zweig. Die Version im Debian-Repository, Munin 2.0.25, ist dieselbe wie die letzte stabile Version.

Geben Sie zum Installieren Folgendes ein:

sudo apt-get install -y munin

Schritt 3 - Konfiguration des Munin Masters

Die Hauptkonfigurationsdatei des Munin-Masters "+ munin.conf " und andere Dateien, die für das Funktionieren erforderlich sind, befinden sich im Verzeichnis " / etc / munin +" und seinen Unterverzeichnissen.

Die Konfigurationsdatei besteht aus mindestens zwei Abschnitten - einem * globalen * und mindestens einem * Host-Abschnitt *. Optional kann es einen * group * -Abschnitt geben. Host- und Gruppenabschnitte beginnen mit ihren jeweiligen Namen in eckigen Klammern. Diese Datei enthält Variablendefinitionen und Anweisungen, die festlegen, wie Munin Server und Dienste überwacht und welche Server überwacht werden sollen.

So starten Sie die Änderung:

cd /etc/munin
sudo nano munin.conf

Suchen Sie nach diesen Zeilen und kommentieren Sie sie aus. Entfernen Sie also das vorangestellte Zeichen * # *. Das * dbdir * speichert alle rrd-Dateien, die die eigentlichen Überwachungsinformationen enthalten. * htmldir * speichert die Bilder und Site-Dateien; * logdir * verwaltet die Protokolle; * rundir * enthält die Statusdateien; und * tmpldir * ist der Speicherort für die HTML-Vorlagen. Stellen Sie sicher, dass Sie das Verzeichnis htmldir von + / var / cache / munin / www + in Ihr Webverzeichnis ändern. In diesem Beispiel verwenden wir "+ / var / www / munin +":

/etc/munin/munin.conf

dbdir     /var/lib/munin
htmldir
logdir    /var/log/munin
rundir    /var/run/munin
...
tmpldir /etc/munin/templates

Da das "+ htmldir " nicht existiert, wollen wir es so erstellen und anzeigen, dass es dem " munin +" - Systembenutzer gehört:

sudo mkdir /var/www/munin
sudo chown munin:munin /var/www/munin

Suchen Sie abschließend in + munin.conf + nach dem ersten Host-Baum. Es sollte lauten:

/etc/munin/munin.conf

[localhost.localdomain]
   address 127.0.0.1
   use_node_name yes

Ändern Sie den Namen dieses Baums in einen Namen, der den Server eindeutig identifiziert. In diesem Beispiel verwenden wir * MuninMaster *:

/etc/munin/munin.conf

[]
   address 127.0.0.1
   use_node_name yes

Das ist alles für die Konfigurationsdatei. Speichern und schließen Sie sie.

Im selben "+ / etc / munin " - Verzeichnis ist die nächste Datei, die wir ändern, " apache24.conf ", die Apache 2.4-Konfigurationsdatei von Munin. Es ist sym-verknüpft mit ` / etc / apache2 / conf-available / munin.conf `. Um es zu ändern, öffne es mit ` nano +`:

sudo nano apache24.conf

Ändern Sie ganz oben in der Datei die erste Zeile so, dass sie den * htmldir * -Pfad widerspiegelt, den Sie in + munin.conf + angegeben und zuvor erstellt haben. Basierend auf dem in diesem Artikel verwendeten Verzeichnispfad sollte dieser wie folgt lauten, sodass Sie auf die Weboberfläche von Munin zugreifen können, indem Sie * munin * an die IP-Adresse des Servers oder die auf dem Server gehostete Domäne anhängen:

/etc/munin/apache24.conf

Alias /munin

Um sicherzustellen, dass Sie remote auf die Weboberfläche von Munin zugreifen können, löschen Sie den Verzeichnisabschnitt und ersetzen Sie ihn durch diesen:

/etc/munin/apache24.conf

<Directory /var/www/munin>
       Require all granted
       Options FollowSymLinks SymLinksIfOwnerMatch
</Directory>

Machen Sie dasselbe mit dem letzten Standortabschnitt. Entfernen Sie die Zeile "+ Lokale +" und ersetzen Sie sie durch folgende:

/etc/munin/apache24.conf

<Location /munin-cgi/munin-cgi-graph>


       ...
</Location>

Speichern und schließen Sie die Datei. Dann starte Munin und Apache neu:

sudo systemctl restart munin-node
sudo systemctl restart apache2

Sie können jetzt auf die Weboberfläche von Munin zugreifen, indem Sie Ihren Webbrowser auf / munin richten

Schritt 4 - Hinzufügen eines Knotens zu Munin Master

In diesem Schritt wird gezeigt, wie Sie dem Munin-Master einen Knoten hinzufügen. Dazu müssen Sie die Konfigurationsdatei des Munin-Masters ändern, um einen Host-Baum für den Knoten anzugeben, das Munin-Knotenpaket auf dem Knoten installieren und die Konfigurationsdatei so ändern, dass sie vom Munin-Master überwacht werden kann.

Beginnen wir mit dem Munin-Knoten - dem anderen Debian 8-Droplet, das Sie erstellt haben.

Melden Sie sich beim * Munin-Knoten * an, aktualisieren Sie die Paketdatenbank und installieren Sie das Munin-Knotenpaket:

sudo apt-get update
sudo apt-get install -y munin-node

Nach erfolgreicher Installation sollte sich die Konfiguration des Knotens im Verzeichnis "+ / etc / munin " befinden. Öffne es mit ` nano +`:

sudo nano /etc/munin/munin-node.conf

Suchen Sie in der Mitte der Datei nach einer * allow ^ 127.0.0.1 $ * -Zeile und ändern Sie sie so, dass sie die IP-Adresse des Munin-Masters widerspiegelt. Beachten Sie, dass die IP-Adresse im Regex-Format vorliegt. Unter der Annahme, dass die IP-Adresse des Masterservers 123.46.78.100 lautet, sollte in der Zeile Folgendes stehen:

/etc/munin/munin-node.conf

allow

Speichern und schließen Sie die Datei. Dann starte den Munin neu:

sudo systemctl restart munin-node

Öffnen Sie auf dem * Munin Master * die Hauptkonfigurationsdatei:

sudo nano /etc/munin/munin.conf

Alles, was wir in dieser Datei tun müssen, ist einen Host-Baum für den (entfernten) Knoten einzufügen. Am einfachsten ist es, den Host-Baum des Masters zu kopieren und zu ändern. Stellen Sie sicher, dass Sie die IP-Adresse des Knotens angeben, den Sie hinzufügen:

[]
   address
   use_node_name yes

Speichern und schließen Sie die Datei. Dann starte Apache neu:

sudo systemctl restart apache2

Munin sucht alle 5 Minuten nach neuen Knoten. Warten Sie einige Minuten und laden Sie dann das Webinterface des Munin Masters neu. Sie sollten einen Eintrag für den Knoten sehen. Wenn Sie es noch nicht sehen, versuchen Sie es in 5 Minuten erneut. Mit dieser Methode können Sie so viele Knoten hinzufügen, wie Sie überwachen müssen.

image: https: //assets.digitalocean.com/articles/munin_installing/MuninNode2.png [Munin-Knoten hinzugefügt]

Schritt 5 - Zusätzliche Plugins aktivieren

Munin überwacht ein System mithilfe von Pluginskripten. Standardmäßig sind ungefähr ein Dutzend Plugins installiert und aktiv. Eine vollständige Liste der verfügbaren Plugins finden Sie im Verzeichnis + / usr / share / munin / plugins +. Um zu sehen, welche Plugins auf Ihrem System verwendet werden können, bietet Munin den folgenden Befehl an:

sudo munin-node-configure --suggest

Die Ausgabe sollte von dieser Art sein:

Plugin                     | Used | Suggestions
------                     | ---- | -----------
cps_                       | no   | no
cpu                        | yes  | yes
cpuspeed                   | no   | no [missing /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state]
cupsys_pages               | no   | no [could not find logdir]
df                         | yes  | yes
df_inode                   | yes  | yes
fail2ban                   | no   | yes
ip_                        | no   | yes

Ein Plugin mit einem * yes * in der Spalte Used bedeutet genau das, was es anzeigt, während ein Plugin mit einem * yes * in der Spalte Suggestions bedeutet, dass es verwendet werden kann. Ein * no * in beiden Spalten bedeutet, dass es nicht verwendet wird und auf dem System nicht verwendet werden kann. Wenn ein Plugin in der Spalte Used ein * no * und in den Suggestions ein * yes * hat, wird es nicht verwendet, kann aber auf dem System aktiviert und verwendet werden.

Auf dem Munin-Master und -Knoten sehen Sie auch eine Liste der installierten Plugins im Verzeichnis + / etc / munin / plugins +.

Bei der Installation von Munin sollte ein "+ munin-plugins-extra +" - Paket installiert worden sein. Ist dies nicht der Fall, verwenden Sie.

sudo apt-get install munin-plugins-extra

Um ein verfügbares Plugin zu aktivieren, das derzeit nicht verwendet wird, erstellen Sie einen symbolischen Link für dieses Plugin aus dem Verzeichnis "+ / usr / share / munin / plugins " in das Verzeichnis " / etc / munin / plugin +".

Um beispielsweise das Fail2ban-Plugin zu aktivieren, installieren Sie zuerst Fail2ban:

sudo apt-get install fail2ban

Erstellen Sie dann den Symlink, der das Munin-Plugin aktiviert:

sudo ln -s /usr/share/munin/plugins/fail2ban /etc/munin/plugins

Munin neu starten:

sudo systemctl restart munin-node

Warten Sie einige Minuten, laden Sie das Webinterface neu, und Sie sollten unter dem Titel * Hosts, die von fail2ban * in der Kategorie * network * für den Munin-Master auf die schwarze Liste gesetzt wurden, Diagramme für Fail2ban sehen.

Fehlerbehebung

Wenn Sie Probleme beim Konfigurieren des Munin-Masters, des Munin-Knotens oder beim Anzeigen des Knotens durch den Master haben, überprüfen Sie die Protokolldateien auf Fehlermeldungen:

  • Munin-Master: + / var / log / munin / munin-update.log +

  • Munin-Knoten: + / var / log / munin / munin-node.log +

Weitere Tipps zur Fehlerbehebung finden Sie auch auf der http://munin-monitoring.org/wiki/MuninTremptsProject-Seite.

Fazit

Munin kann so konfiguriert werden, dass es das System überwacht, auf dem es installiert ist. Das Hinzufügen von Remote-Servern zum überwachten System ist so einfach wie das Installieren des Pakets "+ munin-node +" auf dem Remote-Server (oder Knoten) und anschließendes Ändern der Konfigurationsdateien des Servers und Knotens, um auf die andere IP-Adresse zu verweisen.

Munin funktioniert mit Plugins, aber nicht alle werden sofort aktiviert. Informationen zu Plugins finden Sie auf der Seite project’s.