In diesem Artikel werde ich beschreiben, wie Sie mehrere Systeme mit munin überwachen können. munin erstellt raffinierte kleine Grafiken über fast jeden Aspekt Ihres Servers (durchschnittliche Auslastung, Speicherauslastung, CPU-Auslastung, MySQL-Durchsatz, eth0-Verkehr usw.) ohne viel Konfiguration. Ich werde den Munin-Client auf allen Systemen installieren, die überwacht werden sollen (einschließlich des Munin-Servers selbst); Die Munin-Clients melden sich dann beim Munin-Server.
Dieses Tutorial wurde für Debian Etch geschrieben, aber die Konfiguration sollte mit kleinen Änderungen auch für andere Distributionen gelten.
Ich möchte zunächst sagen, dass dies nicht die einzige Möglichkeit ist, ein solches System einzurichten. Es gibt viele Wege, dieses Ziel zu erreichen, aber ich gehe diesen Weg. Ich gebe keine Garantie dafür, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
Der Hostname unseres Munin-Servers ist server1.example.com (IP-Adresse:192.168.0.100), und wir haben darauf eine Website www.example.com mit dem Dokumentenstammverzeichnis /var/www/www.example.com/web darauf .
Ich verwende hier einen Munin-Client, server2.example.com (IP-Adresse:192.168.0.101). Natürlich können Sie beliebig viele Client-Systeme hinzufügen.
2 Installieren und konfigurieren Sie munin auf dem Server
Munin-Server (server1.example.com):
Um den Munin-Client und -Server auf Debian Etch zu installieren, gehen wir wie folgt vor:
apt-get install munin munin-node
Als nächstes müssen wir die Munin-Konfigurationsdatei /etc/munin/munin.conf bearbeiten. Wir möchten, dass munin seine Ausgabe in das Verzeichnis /var/www/www.example.com/web/monitoring legt, daher ändern wir den Wert von htmldir und wir möchten, dass es den Namen server1.example.com anstelle von localhost verwendet. localdomain in der HTML-Ausgabe, daher ersetzen wir localhost.localdomain durch server1.example.com. Mit dieser Konfiguration kann sich der Munin-Server selbst überwachen. Ohne die Kommentare sieht die geänderte Datei so aus:
vi /etc/munin/munin.conf
dbdir /var/lib/munin htmldir /var/www/www.example.com/web/monitoring logdir /var/log/munin rundir /var/run/munin tmpldir /etc/munin/templates [server1.example.com] address 127.0.0.1 use_node_name yes |
Als nächstes erstellen wir das Verzeichnis /var/www/www.example.com/web/monitoring und ändern seinen Besitz auf den Benutzer und die Gruppe munin, andernfalls kann munin seine Ausgabe nicht in diesem Verzeichnis platzieren. Dann starten wir munin neu:
mkdir -p /var/www/www.example.com/web/monitoring
chown munin:munin /var/www/www.example.com/web/monitoring
/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 auf http://www.example.com/monitoring/, und Sie sehen die ersten Statistiken. Nach ein paar Tagen könnte das so aussehen:
(Dies ist nur ein kleiner Auszug aus den vielen Grafiken, die munin produziert...)
3 Schützen Sie das munin-Ausgabeverzeichnis auf dem munin-Server mit einem Passwort (optional)
Munin-Server (server1.example.com):
Jetzt ist es eine gute Idee, das Verzeichnis /var/www/www.example.com/web/monitoring mit einem Passwort zu schützen, es sei denn, Sie möchten, dass jeder jede noch so kleine Statistik über Ihren Server sehen kann.
Dazu erstellen wir eine .htaccess-Datei in /var/www/www.example.com/web/monitoring:
vi /var/www/www.example.com/web/monitoring/.htaccess
AuthType Basic AuthName "Members Only" AuthUserFile /var/www/www.example.com/.htpasswd <limit GET PUT POST> require valid-user </limit> |
Dann müssen wir die Passwortdatei /var/www/www.example.com/.htpasswd erstellen. Wir möchten uns mit dem Benutzernamen admin anmelden, also tun wir Folgendes:
htpasswd -c /var/www/www.example.com/.htpasswd admin
Geben Sie ein Passwort für den Administrator ein und Sie sind fertig!
4 Installieren und konfigurieren Sie munin auf dem Client
Munin-Client (server2.example.com):
Auf dem Client-System müssen wir nur das munin-Client-Paket mit dem Namen munin-node:
installierenapt-get install munin-node
Als nächstes müssen wir dem Munin-Client mitteilen, dass unser Munin-Server server1.example.com mit der IP-Adresse 192.168.0.100 sich verbinden darf, um Details vom Client abzurufen. Dazu öffnen wir /etc/munin/munin-node.conf und fügen unten die Zeile allow ^192\.168\.0\.100$ hinzu. Danach sollte die Datei so aussehen:
vi /etc/munin/munin-node.conf
# # Example config-file for munin-node # log_level 4 log_file /var/log/munin/munin-node.log port 4949 pid_file /var/run/munin/munin-node.pid background 1 setseid 1 # Which port to bind to; host * user root group root setsid yes # Regexps for files to ignore ignore_file ~$ ignore_file \.bak$ ignore_file %$ ignore_file \.dpkg-(tmp|new|old|dist)$ ignore_file \.rpm(save|new)$ # Set this if the client doesn't report the correct hostname when # telnetting to localhost, port 4949 # #host_name localhost.localdomain # A list of addresses that are allowed to connect. This must be a # regular expression, due to brain damage in Net::Server, which # doesn't understand CIDR-style network notation. You may repeat # the allow line as many times as you'd like allow ^127\.0\.0\.1$ allow ^192\.168\.0\.100$ |
Schließlich starten wir den Munin-Client neu:
/etc/init.d/munin-node restart
5 Aktualisieren Sie die munin-Serverkonfiguration
Munin-Server (server1.example.com):
Jetzt müssen wir dem Munin-Server mitteilen, dass es ein anderes System zu überwachen gibt (server2.example.com mit der IP-Adresse 192.168.0.101). Dazu öffnen wir /etc/munin/munin.conf und fügen eine Strophe für server2.example.com hinzu, sodass die Datei so aussieht:
vi /etc/munin/munin.conf
dbdir /var/lib/munin htmldir /var/www/www.example.com/web/monitoring logdir /var/log/munin rundir /var/run/munin tmpldir /etc/munin/templates [server1.example.com] address 127.0.0.1 use_node_name yes [server2.example.com] address 192.168.0.101 use_node_name yes |
Als nächstes starten wir munin neu:
/etc/init.d/munin-node restart
Nach einigen Minuten sollten Sie auf der Munin-Seite (http://www.example.com/monitoring/) einen Link für server2.example.com finden:
Wenn Sie auf diesen Link klicken, sehen Sie die Grafiken für server2.example.com.
6 Links
- munin: http://munin-monitoring.org/