Installation de munin - munin-node
De wikiGite
Sommaire
Debian
Installation client only
apt-get install munin-node
Editer /etc/munin/munin-node.conf, ajouter à la fin :
allow ^192\.168\.1\.253
(Ou 192.168.1.253 est l'adresse du serveur Munin - Adapter selon la configuration)
CentOS
Installation client
Si ça n'a pas déjà été fait, installation repos RPMForge ( -> Dépôts complémentaires).
yum --enablerepo=rpmforge install munin-node
paramétrer le fichier conf sous /etc/munin, démarrer munin-node et l'ajouter au chkconfig
Pour munin-node (client), si le serveur munin est distant, il faut l'autoriser dans /etc/munin/munin-node.conf en ajoutant sont adresse IP. Exemple :
allow ^192\.168\.1\.253$
On oublie pas :
chkconfig --level 2345 munin-node on chkconfig --list munin-node
NOTE importante : supprimer le plugin hddtemp_smartctl (/etc/munin/plugins) car il provoque une erreur sur le lecteur CD :
Apr 9 10:00:06 server2 kernel: hdc: drive_cmd: status=0x51 { DriveReady SeekComplete Error } Apr 9 10:00:06 server2 kernel: hdc: drive_cmd: error=0x04 { AbortedCommand } Apr 9 10:00:06 server2 kernel: ide: failed opcode was: 0xec
Problème noté sur BlueOnyx en machine virtuelle ESXi.
Ne laisser qu'un plugin ntp, renommé en "ntp_canon_inria_fr".
Et pour finir...
/etc/init.d/munin-node restart
Installation server
yum --enablerepo=rpmforge install munin
Paramétrer le serveur munin pour récupérer les données du client. Dans /etc/munin/munin.conf :
[server.domain.tld] address 192.168.1.250 use_node_name yes
Activation et paramétrage des PLUGINS
Créer simplement un lien sur les plugins, de /usr/share/munin/plugins/ dans /etc/munin/plugins.
Certains liens doivent être créés avec un nom spécial (ex : *_eth0 pour faire référence à une interface en particulier)
Plugins MySQL
Vérifier que les plugins mysql_* sont présents (les ajouter avec "ln -s /usr/share/munin/plugins/mysqlxxxxxx si nécessaires). Pour mysql munin a besoin de droits. Donc déclarer un utilsateur avec le minimum de droits sur les tables systèmes :
# mysql -u root -p mysql> grant select on mysql.* to munin@localhost identified by 'munin'; mysql> exit
Puis modifier le bloc [mysql*] dans /etc/munin/plugin-conf.d/munin-node
[mysql*] user root env.mysqlopts -umunin -pmunin
Plugins APACHE_*
Les plugins apache ont besoin de server-status. Pour l'activer voir Activation de server-status.
Note : server-status est activé par défaut sur Debian 6 Squeeze.
Créer ensuite un lien des scripts /usr/share/munin/plugins/apache_* vers /etc/munin/plugins
cd /etc/munin/plugins ln -s /usr/share/munin/plugins/apache_accesses ln -s /usr/share/munin/plugins/apache_volume ln -s /usr/share/munin/plugins/apache_processes
Plugins ip_*
if_* n'est pas sûr pour des cartes à 100Mb ou 1Gb. Il vaut mieux ajouter le plugin ip_
Le plugin ip_ de munin-node réclame 2 règles iptables pour compter les paquets au niveau IP, en début de INPUT :
/sbin/iptables -I INPUT -d <adresse IP à surveiller> /sbin/iptables -I OUTPUT -s <adresse IP à surveiller>
Le plus simple est de les placer dans /etc/rc.local pour qu'elles soient chargées au démarrage.
Activation du module :
ln -s /usr/share/munin/plugins/ip_ /etc/munin/plugins/ip_<adresse IP à surveiller>
Et ajouter dans /etc/munin/plugin-conf.d/munin-node
[ip*] user root
Redémarrer le service munin-node :
/etc/init.d/munin-node restart
Note pour ISPConfig : ajout d'un script init.d/ispconfig_zcustom (z pour qu'il se lance après ispconfig_server) :
#!/bin/bash # FSO 01/2008 ################################### # # ISPConfig custom tasks # ################################### IPTABLES=/sbin/iptables IP=192.168.1.1 case "$1" in start) echo "ISPConfig custom script..." # OSSEC HIDS ip_ plugin comment : "...you need these iptables rules as the first rules (they don't do anything, just make packet counts)" $IPTABLES -I INPUT -d $IP $IPTABLES -I OUTPUT -s $IP ;; stop) $IPTABLES -D INPUT -d $IP $IPTABLES -D OUTPUT -s $IP ;; restart) $0 stop && sleep 1 $0 start ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit 0
Puis ajout aux runlevels par défaut : update-rc.d ispconfig_zcustom defaults 99 98
Plugins PostgreSQL
Les plugins postgresql (/usr/share/munin/plugins/postgres_*) demandent une librairie Perl pour fonctionner sur Debian :
apt-get install libdbd-pg-perl
TIPS
Tests
munin-run mysql_bytes
On peut essayer aussi
telnet <host_surveillé> 4949 fetch df config df
qui donne ce que voit le serveur munin (ici pour le service df) en interrogeant munin-node du "host surveillé". Essayer aussi les commandes "list", et "nodes".
Pour quitter telnet taper "quit" ou attendre quelque secondes, la session se ferme seule s'il n'y a pas d'activité.
Sur le serveur Munin qui centralise les nodes, on peut vérifier les échanges par :
# su -s /bin/bash munin $ /usr/share/munin/munin-update --debug --nofork --stdout --host <host_surveillé> --service df
Si modification device eth
Ex : après install des VMWareTools, eth1 passe en eth0 Penser à renommer /etc/munin/plugins/if_* (par mv, pas par cp, pour ne toucher qu'aux liens)