« Mise en place de monitoring avec Munin » : différence entre les versions
Ligne 33 : | Ligne 33 : | ||
L'addresse étant bien entendu celle du node, ici nous interrogeons le node contenu sur le même serveur. | L'addresse étant bien entendu celle du node, ici nous interrogeons le node contenu sur le même serveur. | ||
<code>hostnamedunode</code> correspond à l'hostname du serveur tel que défini dans <code>/etc/hostname</code>. Vous devez pour chaque enregistrement vous assurer que l'hostname défini après le ; dans la configuration du master munin corresponde bien à l'hostname utilisé par le node (par défaut lu depuis <code>/etc/hostname</code> | <code>hostnamedunode</code> correspond à l'hostname du serveur tel que défini dans <code>/etc/hostname</code>. Vous devez pour chaque enregistrement vous assurer que l'hostname défini après le ; dans la configuration du master munin corresponde bien à l'hostname utilisé par le node (par défaut lu depuis <code>/etc/hostname</code>) | ||
Note : la configuration du Master ne se reload pas, celui-ci relit sa configuration dès qu'il interroge les nodes. | Note : la configuration du Master ne se reload pas, celui-ci relit sa configuration dès qu'il interroge les nodes. |
Version du 11 novembre 2014 à 16:13
Installer Munin
Munin se divise en deux parties :
- Le Master : qui s'occupe de l'affichage et de récupérer les valeurs auprès des nodes
- Le Node : qui fournit les valeurs au master et contient des plugins pour récupérer les valeurs à grapher
Il existe un grand nombre de plugins, ceux-ci peuvent être écrit en bash/perl/python (ou autre). Chaque plugin se charge de récupérer (en parsant des logs, requêtant une base de données, etc) les valeurs à envoyer au Master.
Nous allons maintenant installer Munin sur notre première machine, qui aura donc le master et un node :
sudo apt-get install munin munin-node
Configurer le Master
Pour configurer le Master nous allons édité le fichier /etc/munin/munin.conf.
La valeur la plus intéressante dans un premier temps est la suivante :
htmldir /var/cache/munin/www
C'est dans ce dossier que Munin va stocker le site pour afficher les graphs.
Vous pouvez ensuite configurer les nodes à interroger de la façon suivante :
[groupedunode;hostnamedunode] address 127.0.0.1
L'addresse étant bien entendu celle du node, ici nous interrogeons le node contenu sur le même serveur.
hostnamedunode
correspond à l'hostname du serveur tel que défini dans /etc/hostname
. Vous devez pour chaque enregistrement vous assurer que l'hostname défini après le ; dans la configuration du master munin corresponde bien à l'hostname utilisé par le node (par défaut lu depuis /etc/hostname
)
Note : la configuration du Master ne se reload pas, celui-ci relit sa configuration dès qu'il interroge les nodes.
Configurer le Node
Nous pouvons ensuite configurer le node à l'aide du fichier /etc/munin/munin-node.conf. Les valeurs importantes sont les suivantes :
allow ^127\.0\.0\.1$ host *
La première ligne permet de n'autoriser que l'addresse indiquer à interroger le node. La deuxième permet de définir sur quelle interface la node doit écouter.
Le mieux est bien entendu de restreindre au maximum, en changeant la configuration de base par :
allow ^127\.0\.0\.1$ host 127.0.0.1
Bien entendu si la node n'est pas au même endroit que le Master, vous devrez adapter la configuration.
Après cette configuration il ne faut pas oublier de redémarrer le node :
sudo /etc/init.d/munin-node restart
Configurer Apache
Munin propose une configuration de base pour Apache dans /etc/munin/apache.conf. Vous pouvez l'adapter à vos besoins, en mettant toujours comme DocumentRoot la valeur défini pour htmldir dans /etc/munin/munin.conf.
N'oubliez pas de mettre en place un htaccess pour protéger vos graphs par un nom d'utilisateur/mot de passe.
Les plugins
Dans les versions actuelles de Munin, le Master interroge les nodes toutes les 5 minutes. Les plugins activés sont définis sur chaque node dans /etc/munin/plugins. Le principe est de créer un lien symbolique dans ce dossier vers le plugin. Pour désactiver/activer un plugin, il suffit de créer/supprimer le lien symbolique.
Lorsque le Master interrogera à nouveau le node, il adaptera les graphs en conséquence.
Pour voir la liste des plugins :
munin-node-configure
Pour voir les plugins suggérés :
munin-node-configure --suggest
Pour avoir facilement les lignes de créations des liens virtuels :
munin-node-configure --suggest --shell
Pour tester un plugin :
munin-run <plugin name>
La configuration individuelle de chaque plugin peut se faire en créant des fichiers dans /etc/munin/plugin-conf.d/
Notez qu'a chaque fois que vous ajoutez, modifiez, ou changez la configuration d'un plugin, il faut relancer munin-node
En cours de rédaction
MySQL
aptitude install libcache-cache-perl cd /etc/munin/plugins/ ln -s /usr/share/munin/plugins/mysql_ mysql_ ./mysql_ suggest
Vous devriez avoir une liste de plugin mysql suggéré Pour ajouter le plugin commands :
ln -s /usr/share/munin/plugins/mysql_ /etc/munin/plugins/mysql_commands
diskstats
Non fonctionnel sous debian wheezy
Le plugin diskstats n'utilise pas de variable d'environnement sous debian wheezy (c'est réglé sur le git de munin), vous ne pouvez donc pas modifier les variables telles que les warning directement sur le node (sauf en éditant directement le plugin). A titre d'information voila ce qu'il aurait fallu faire une fois le patch appliqué :
/etc/munin/plugin-conf.d/diskstats
[diskstats] env.avgrdwait.warning 0:2 env.avgwrwait.warning 0:2
Fonctionnel sous debian wheezy
Dans la configuration du master vous pouvez cependant faire ceci :
[lenode] address ip_du_node diskstats_latency.sda.avgrdwait.warning 0:2 diskstats_latency.sda.avgwrwait.warning 0:2