Hi @ All,
in diesem Artikel werde ich Euch beschreiben wie man Munin auf seinem Linux Server installiert.
Munin installieren:
Also erstmal als root einloggen bzw. mit einem user und dann mit su auf den root account wechseln, wer mag kann natürlich auch mit sudo arbeiten.
apt-get install munin munin-node
Sollte noch zusatz pakete benötigt werden bitte nach installieren bzw. die nach Frage ob dies gemacht werden soll mit J,Y,Yes oder Ja bestätigen.
Konfiguration Munin:
cd /etc/munin nano munin.conf
So sieht diese normal aus Original):
# Example configuration file for Munin, generated by 'make build' # The next three variables specifies where the location of the RRD # databases, the HTML output, and the logs, severally. They all # must be writable by the user running munin-cron. dbdir /var/lib/munin htmldir /var/cache/munin/www logdir /var/log/munin rundir /var/run/munin # Where to look for the HTML templates tmpldir /etc/munin/templates # Make graphs show values per minute instead of per second #graph_period minute # Graphics files are normaly generated by munin-graph, no matter if # the graphs are used or not. You can change this to # on-demand-graphing by following the instructions in # http://munin.projects.linpro.no/wiki/CgiHowto # #graph_strategy cgi # Drop somejuser@fnord.comm and anotheruser@blibb.comm an email everytime # something changes (OK -> WARNING, CRITICAL -> OK, etc) #contact.someuser.command mail -s "Munin notification" somejuser@fnord.comm #contact.anotheruser.command mail -s "Munin notification" anotheruser@blibb.comm # # For those with Nagios, the following might come in handy. In addition, # the services must be defined in the Nagios server as well. #contact.nagios.command /usr/sbin/send_nsca -H nagios.host.com -c /etc/send_nsca.cfg # a simple host tree [local.localhost] address 127.0.0.1 use_node_name yes # # A more complex example of a host tree # ## First our "normal" host. # [fii.foo.com] # address foo # ## Then our other host... # [fay.foo.com] # address fay # ## Then we want totals... # [foo.com;Totals] #Force it into the "foo.com"-domain... # update no # Turn off data-fetching for this "host". # # # The graph "load1". We want to see the loads of both machines... # # "fii=fii.foo.com:load.load" means "label=machine:graph.field" # load1.graph_title Loads side by side # load1.graph_order fii=fii.foo.com:load.load fay=fay.foo.com:load.load # # # The graph "load2". Now we want them stacked on top of each other. # load2.graph_title Loads on top of each other # load2.dummy_field.stack fii=fii.foo.com:load.load fay=fay.foo.com:load.load # load2.dummy_field.draw AREA # We want area instead the default LINE2. # load2.dummy_field.label dummy # This is needed. Silly, really. # # # The graph "load3". Now we want them summarised into one field # load3.graph_title Loads summarised # load3.combined_loads.sum fii.foo.com:load.load fay.foo.com:load.load # load3.combined_loads.label Combined loads # Must be set, as this is # # not a dummy field! # ## ...and on a side note, I want them listen in another order (default is ## alphabetically) # # # Since [foo.com] would be interpreted as a host in the domain "com", we # # specify that this is a domain by adding a semicolon. # [foo.com;] # node_order Totals fii.foo.com fay.foo.com #
So damit jetzt natürlich beim Aufrufen von Munin als Überschrift nicht Local oder Localhost da steht kann man jetzt den Namen ändern das macht man mit der Zeile:
# a simple host tree [local.localhost]
Das könnt Ihr ändern in z.B.: Mein.Server oder was auch immer, wie Ihr das möchtet, wichtig ist nur das ein “.” dazwischen ist wenn Ihr einfach nur so etwas reinschreiben geht Munin nicht mehr.
An der munin-node.conf muss nichts geändert werden.
Starten:
Wenn Ihr also Munin jetzt installiert habt könnt Ihr euer Munin starten mit:
/etc/init.d/munin-node start
Prüfen ob alles geht:
Unter /var/log/munin findet Ihr alle Logfiles, die könnt Ihr euch mit dem Befehl cat munin-node , cat munin-update , cat munin-graph , cat munin-html anschauen, um zu Prüfen ob alles geht.
Fehlermeldungen müßt Ihr leider googlen aber im normal Fall sollte das auf anhieb klappen.
Absichern:
So, da aber jeder der die URL herraus findet/weiss auf Euer Munin zugreifen kann sollte man dies natürlich noch absichern!
Ich mach das ganze mit htpasswd weil bei mir das Manuelle erzeugen der Dateien immer Probleme macht.
Eine Hilfe zu htpasswd bekommt Ihr mit den Befehl: htpasswd -h.
Wechselt in das Verzeichnis in dem Munin seinen HTML Dateien ablegt also cd /var/cache/munin/www
Hier ein Beispiel:
Linux like = htpasswd -cmd filename username password
Für sterbliche = htpasswd -cmd .htpasswd munin einpasswort (munin ist hier der username und einpasswort sollte ein von Dir gewähltes und “starkes” passwort sein)
Jetzt habt Ihr eine Datei namens .htpasswd im Verzeichnis zu sehen mit dem Befehl ls -al .
Nun müßt Ihr die Datei .htaccess erstellen
nano .htaccess
Und folgende Zeilen einfügen:
AuthType Basic AuthName "munin" AuthUserFile /var/cache/munin/www/.htpasswd require user DENUSERNAMENDENDUBEIHTPASSWDBENUTZTHAST
Wenn die Datei gespeichert ist werdet Ihr nun nach Username und Passwort gefragt wenn Ihr auf Eure Munin Seite geht und seid damit geschützt.
Plugins:
Jetzt könnt Ihr noch Plugins hinzufügen oder auch Entfernen.
Die Plugins selbst liegen im Verzeichnis:
/use/share/munin/plugins
Die Symlinks liegen im Verzeichnis:
/etc/munin/plugins/
Um einen Graphen zu entfernen müßt Ihr nur die Entsprechenden Symlinks unter /etc/munin/plugins löschen und Munin neustarten mit dem Befehl: /etc/init.d/munin-node restart
Um einen Graphen zu adden mach ich es mir da recht einfach, man kann zwar sich die arbeit machen und z.B. mit dem Befehl:
ln -s /usr/share/munin/plugins/vmstat /etc/munin/plugins/vmstat
Das ist mir aber zu doof daher nutze ich Midnight Commander.
Wer Ihn nicht drauf hat einfach mit dem Befehl:
apt-get install mc
Installieren und danach mit mc starten.
Auf der linken Seite gehe ich dann in das Verzeichnis /etc/munin/plugins und auf der rechten Seite gehe ich in das Verzeichnis /usr/share/munin/plugins.
Jetzt suche ich mir rechts das Plugin aus welches ich haben möchte, klicke auf Datei und dann Symlink, danach mit OK bestätigen und schon hat sichs erledigt.
Bei Plugins die eine natürlich eine weitere Option benötigen wie tcp_ nicht den Port vergessen einzutragen bevor man auf OK klickt!
Und immer Munin neustarten nach jeder Änderung!
Um jetzt auf Munin zugriff zu bekommen kannst du jeden Domainname nutzen den du hast mit der endung /munin, als Beispiel:
http://hostname.com/munin/
Links:
Die Seite von Munin findet Ihr hier.
Plugins könnt Ihr in der Exchange DB finden.
Und den FAQ Bereich von Munin findet Ihr hier.
Sollte etwas nicht klappen oder noch Anregungen da sein könnt Ihr ja einen Kommentar hinterlassen oder mich über Contact anschreiben.
Have Fun
DocSchneidi ak Cheech