Serverüberwachung · 3 min read · Oct 15, 2025

Serverüberwachung Mit munin Und monit Auf Debian Squeeze

Serverüberwachung Mit munin Und monit Auf Debian Squeeze

Version 1.0
Autor: Falko Timme
Folge mir auf Twitter

In diesem Artikel werde ich beschreiben, wie Sie Ihren Debian Squeeze-Server mit munin und monit überwachen können. munin erzeugt nette 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 Squeeze geschrieben, aber die Konfiguration sollte auch auf andere Distributionen 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 bei Ihnen 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.

2 Installieren Und Konfigurieren von munin

Um munin auf Debian Squeeze zu installieren, tun wir Folgendes:

apt-get install munin munin-node munin-plugins-extra

Als Nächstes müssen wir die Konfigurationsdatei von munin /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:

vi /etc/munin/munin.conf

| # Beispielkonfigurationsdatei für Munin, erstellt von 'make build' # Die nächsten drei Variablen geben an, wo sich die RRD # Datenbanken, die HTML-Ausgabe, Protokolle und die Lock/PID-Dateien befinden. Sie müssen alle # schreibbar sein für den Benutzer, der munin-cron ausführt. Sie sind alle # auf die Werte voreingestellt, 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 # (Genau ein) Verzeichnis, aus dem alle Dateien eingeschlossen werden. # 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-Konfigurationsdatei für munin /etc/apache2/conf.d/munin finden (die tatsächlich ein Symlink zu /etc/munin/apache.conf ist) - sie definiert ein Alias namens munin für das HTML-Ausgabeverzeichnis von munin /var/cache/munin/www, was bedeutet, dass wir munin von allen Websites auf diesem Server über den relativen Pfad /munin (z.B. http://www.example.com/munin) aufrufen können.

Stellen Sie sicher, dass Sie die Zeile Allow from localhost 127.0.0.0/8 ::1 und stattdessen alle Allow from all auskommentieren (ansonsten können Sie die munin-Ausgabe nur von localhost aus aufrufen):

vi /etc/apache2/conf.d/munin

| Alias /munin /var/cache/munin/www Order allow,deny Allow from all #Allow from localhost 127.0.0.0/8 ::1 Options None # Diese Datei kann als .htaccess-Datei oder als Teil Ihrer Apache # Konfigurationsdatei verwendet werden. # # Damit die .htaccess-Datei funktioniert, muss das munin www-Verzeichnis # (/var/cache/munin/www) "AllowOverride all" oder etwas # Ähnliches gesetzt haben. # # AuthUserFile /etc/munin/munin-htpasswd # AuthName "Munin" # AuthType Basic # require valid-user # Dieser nächste Teil erfordert, dass mod_expires aktiviert ist. # # Setzen Sie die Standardablaufzeit für Dateien auf 5 Minuten 10 Sekunden ab # ihrem Erstellungs- (Änderungs-) Zeitpunkt. Es gibt wahrscheinlich neue Dateien bis # zu diesem Zeitpunkt. # ExpiresActive On ExpiresDefault M310 |

Starten Sie Apache neu:

/etc/init.d/apache2 restart

Dann starten Sie munin neu:

/etc/init.d/munin-node restart

Warten 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. Nach ein paar Tagen könnte dies so aussehen:

(Das ist nur ein kleiner Auszug aus den vielen Grafiken, die munin erzeugt…)

3 Passwortschutz Für Das munin-Ausgabeverzeichnis (Optional)

Jetzt ist es eine gute Idee, das munin-Ausgabeverzeichnis passwortgeschützt zu machen, 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 Folgendes:

htpasswd -c /etc/munin/munin-htpasswd admin

Geben Sie ein Passwort für admin ein. Öffnen Sie dann erneut /etc/apache2/conf.d/munin…

vi /etc/apache2/conf.d/munin

… und kommentieren Sie den folgenden Abschnitt aus:

| [...] AuthUserFile /etc/munin/munin-htpasswd AuthName "Munin" AuthType Basic require valid-user [...] |

Starten Sie dann Apache neu:

/etc/init.d/apache2 restart
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.