Serverüberwachung · 5 min read · Oct 15, 2025
Serverüberwachung mit Munin und Monit auf Debian 8 (Jessie)
In diesem Artikel werde ich beschreiben, wie Sie Ihren Debian 8 (Jessie) Server mit Munin und Monit überwachen können. Munin erzeugt nützliche kleine Grafiken über nahezu jeden Aspekt Ihres Servers (Lastdurchschnitt, Speichernutzung, CPU-Nutzung, MySQL-Durchsatz, eth0-Verkehr usw.) ohne viel Konfiguration, während Monit die Verfügbarkeit von Diensten wie Apache, MySQL, Postfix überprüft und die entsprechenden Maßnahmen wie einen Neustart ergreift, wenn es feststellt, dass ein Dienst sich nicht wie erwartet verhält. Die Kombination der beiden bietet Ihnen eine vollständige Überwachung: Grafiken, die es Ihnen ermöglichen, aktuelle oder bevorstehende Probleme zu erkennen (wie “Wir brauchen bald einen größeren Server, unser Lastdurchschnitt steigt schnell.”), und einen Wächter, der die Verfügbarkeit der überwachten Dienste sicherstellt.
Obwohl Munin es Ihnen ermöglicht, mehr als einen Server zu überwachen, werden wir hier nur die Überwachung des Systems besprechen, auf dem es installiert ist.
Dieses Tutorial wurde für Debian 8 (Jessie) geschrieben, aber die Konfiguration sollte auch auf andere Distributionen wie Ubuntu mit wenigen Änderungen anwendbar sein.
Ich möchte zunächst sagen, dass dies nicht der einzige Weg ist, ein solches System einzurichten. Es gibt viele Möglichkeiten, dieses Ziel zu erreichen, aber dies ist der Weg, den ich wähle. Ich gebe keine Garantie, dass dies für Sie funktioniert!
1 Vorbemerkung
Der Hostname unseres Systems ist server1.example.com, und wir haben eine Website www.example.com darauf mit dem Dokumentenstamm /var/www/www.example.com/web.
Stellen Sie sicher, dass das System auf dem neuesten Stand ist, bevor Sie mit der Installation von Munin beginnen, führen Sie aus:
apt-get update
apt-get upgradeApache wird verwendet, um die Munin-Seiten anzuzeigen, das Apache fcgid-Modul ist für die Zoomfunktion der Munin-Grafiken erforderlich. Installieren Sie Apache und das fcgid-Modul mit apt.
apt-get install apache2 libcgi-fast-perl libapache2-mod-fcgidAktivieren Sie das fcgid-Modul in Apache.
a2enmod fcgid2 Munin installieren und konfigurieren
Um Munin auf Debian Jessie zu installieren, tun wir dies:
apt-get install munin munin-node munin-plugins-extra Wenn der Server MySQL oder MariaDB ausführt, aktivieren Sie einige zusätzliche Munin-Plugins zur Überwachung von MySQL:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/mysql_ mysql_
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes
ln -s /usr/share/munin/plugins/mysql_innodb mysql_innodb
ln -s /usr/share/munin/plugins/mysql_isam_space_ mysql_isam_space_
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries
ln -s /usr/share/munin/plugins/mysql_threads mysql_threadsAls nächstes müssen wir die Munin-Konfigurationsdatei /etc/munin/munin.conf bearbeiten. Kommentieren Sie die Zeilen dbdir, htmldir, logdir, rundir und tmpldir aus (die Standardwerte sind in Ordnung). Wir möchten, dass Munin den Namen server1.example.com anstelle von localhost.localdomain in der HTML-Ausgabe verwendet, daher ersetzen wir localhost.localdomain durch server1.example.com im einfachen Hostbaumabschnitt. Ohne die Kommentare sieht die geänderte Datei so aus:
nano /etc/munin/munin.conf# Beispielkonfigurationsdatei für Munin, generiert von 'make build'
# Die nächsten drei Variablen geben den Speicherort der RRD
# Datenbanken, die HTML-Ausgabe, Protokolle und die Lock/PID-Dateien an. Sie müssen alle
# beschreibbar sein für den Benutzer, der munin-cron ausführt. Sie sind alle
# standardmäßig auf die Werte eingestellt, die Sie hier sehen.
#
dbdir /var/lib/munin
htmldir /var/cache/munin/www
logdir /var/log/munin
rundir /var/run/munin
# Wo nach den HTML-Vorlagen gesucht werden soll
#
tmpldir /etc/munin/templates
# Wo nach den statischen www-Dateien gesucht werden soll
#
#staticdir /etc/munin/static
# temporäre cgi-Dateien sind hier. beachten Sie, dass sie beschreibbar sein müssen von
# dem cgi-Benutzer (normalerweise nobody oder httpd).
#
# cgitmpdir /var/lib/munin/cgi-tmp
# (Genau ein) Verzeichnis, um alle Dateien einzuschließen.
includedir /etc/munin/munin-conf.d
[...]
# ein einfacher Hostbaum
[server1.example.com]
address 127.0.0.1
use_node_name yes
[...] Wir sollten die Apache 2.4-Konfigurationsdatei für Munin /etc/munin/apache24.conf finden - sie definiert ein Alias namens munin für das HTML-Ausgabeverzeichnis von Munin /var/cache/munin/www, was bedeutet, dass wir von allen Websites auf diesem Server auf Munin zugreifen können, indem wir den relativen Pfad /munin verwenden (z.B. http://www.example.com/munin).
Die Apache Munin-Konfiguration ist standardmäßig nicht aktiviert, dies wurde von Debian Wheezy auf Jessie geändert. Das neue Konfigurationsverzeichnis ist /etc/apache2/conf-enabled anstelle von /etc/apache2/conf.d, das in älteren Versionen wie Wheezy und Squeeze verwendet wurde.
Führen Sie diese Befehle aus, um die Konfiguration zu aktivieren und in Apache zu laden.
cd /etc/apache2/conf-enabled/
ln -s /etc/munin/apache24.conf munin.conf
service apache2 restartStellen Sie sicher, dass Sie die Zeile Require local auskommentieren und stattdessen Require all granted und Options FollowSymLinks SymLinksIfOwnerMatch hinzufügen (ansonsten können Sie die Munin-Ausgabe nur von localhost aus aufrufen):
nano /etc/munin/apache24.confAlias /munin /var/cache/munin/www
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
SetHandler fcgid-script
SetHandler cgi-script
Starten Sie Apache neu:
service apache2 restartStarten Sie dann Munin neu:
service munin-node restartWarten Sie nun ein paar Minuten, damit Munin seine erste Ausgabe erzeugen kann, und gehen Sie dann in Ihrem Browser zu http://www.example.com/munin/, und Sie sehen die ersten Statistiken:

(Das ist nur ein kleiner Auszug aus den vielen Grafiken, die Munin erzeugt…)
3 Passwortschutz für das Munin-Ausgabeverzeichnis (optional, aber sehr empfohlen)
Jetzt ist es eine gute Idee, das Munin-Ausgabeverzeichnis mit einem Passwort zu schützen, es sei denn, Sie möchten, dass jeder jede kleine Statistik über Ihren Server sehen kann.
Um dies zu tun, müssen wir die Passwortdatei /etc/munin/munin-htpasswd erstellen. Wir möchten uns mit dem Benutzernamen admin anmelden, also tun wir dies:
htpasswd -c /etc/munin/munin-htpasswd adminGeben Sie ein Passwort für admin ein. Öffnen Sie dann erneut /etc/munin/apache24.conf…
nano /etc/munin/apache24.conf… kommentieren Sie “Require all granted” aus und fügen Sie die Zeilen hinzu, die ich rot markiert habe:
Alias /munin /var/cache/munin/www
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
SetHandler fcgid-script
SetHandler cgi-script
Starten Sie Apache dann neu:
service apache2 restart4 Zusätzliche Module in Munin aktivieren
Der Munin-Befehl “munin-node-configure –suggest” kann verwendet werden, um Empfehlungen für zusätzliche Munin-Module zu erhalten, die auf dem Server aktiviert werden können. Führen Sie aus:
munin-node-configure --suggestDie Ausgabe sollte ähnlich aussehen:

Die Spalte “used” zeigt, ob ein Modul aktiviert ist, die Spalte “Suggestions” zeigt, ob der Server einen Dienst ausführt, der von diesem Modul überwacht werden kann. Erstellen Sie einen Symlink für das Modul in /etc/munin/plugins, um es zu aktivieren.
Hier werde ich zum Beispiel die apache_* Module aktivieren:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/apache_accesses
ln -s /usr/share/munin/plugins/apache_processes
ln -s /usr/share/munin/plugins/apache_volumeStarten Sie Munin neu, um die neue Konfiguration zu laden.
service munin-node restartErhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.