« Mise en place de monitoring avec Munin » : différence entre les versions

De Linux Server Wiki
Aller à la navigation Aller à la recherche
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