Surveillance système · 4 min read · Oct 16, 2025

Surveillance de plusieurs systèmes avec munin (Debian Etch)

Dans cet article, je vais décrire comment vous pouvez surveiller plusieurs systèmes avec munin. munin produit de jolis petits graphiques sur presque tous les aspects de votre serveur (moyenne de charge, utilisation de la mémoire, utilisation du CPU, débit MySQL, trafic eth0, etc.) sans beaucoup de configuration. Je vais installer le client munin sur tous les systèmes à surveiller (y compris le serveur munin lui-même) ; les clients munin vont ensuite rapporter au serveur munin.

Ce tutoriel a été écrit pour Debian Etch, mais la configuration devrait s’appliquer à d’autres distributions avec peu de changements également.

Je tiens à dire d’abord que ce n’est pas la seule façon de configurer un tel système. Il existe de nombreuses façons d’atteindre cet objectif, mais c’est la méthode que je choisis. Je ne garantis pas que cela fonctionnera pour vous !

1 Note Préliminaire

Le nom d’hôte de notre serveur munin est server1.example.com (adresse IP : 192.168.0.100), et nous avons un site web www.example.com dessus avec le répertoire racine /var/www/www.example.com/web.

J’utilise ici un client munin, server2.example.com (adresse IP : 192.168.0.101). Bien sûr, vous pouvez ajouter autant de systèmes clients que vous le souhaitez.

2 Installer et configurer munin sur le serveur

serveur munin (server1.example.com) :

Pour installer le client et le serveur munin sur Debian Etch, nous faisons ceci :

apt-get install munin munin-node

Ensuite, nous devons éditer le fichier de configuration de munin /etc/munin/munin.conf. Nous voulons que munin place sa sortie dans le répertoire /var/www/www.example.com/web/monitoring, donc nous changeons la valeur de htmldir, et nous voulons qu’il utilise le nom server1.example.com au lieu de localhost.localdomain dans la sortie HTML, donc nous remplaçons localhost.localdomain par server1.example.com. Avec cette configuration, le serveur munin est capable de se surveiller lui-même. Sans les commentaires, le fichier modifié ressemble à ceci :

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 |

Ensuite, nous créons le répertoire /var/www/www.example.com/web/monitoring et changeons sa propriété à l’utilisateur et au groupe munin, sinon munin ne peut pas placer sa sortie dans ce répertoire. Puis nous redémarrons munin :

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

Maintenant, attendez quelques minutes pour que munin puisse produire sa première sortie, puis allez à http://www.example.com/monitoring/ dans votre navigateur, et vous verrez les premières statistiques. Après quelques jours, cela pourrait ressembler à ceci :

(Ceci est juste un petit extrait des nombreux graphiques que munin produit…)

3 Protéger par mot de passe le répertoire de sortie de munin sur le serveur munin (optionnel)

serveur munin (server1.example.com) :

Il est maintenant judicieux de protéger par mot de passe le répertoire /var/www/www.example.com/web/monitoring à moins que vous ne souhaitiez que tout le monde puisse voir chaque petite statistique sur votre serveur.

Pour ce faire, nous créons un fichier .htaccess dans /var/www/www.example.com/web/monitoring :

vi /var/www/www.example.com/web/monitoring/.htaccess

| AuthType Basic AuthName "Membres seulement" AuthUserFile /var/www/www.example.com/.htpasswd require valid-user |

Ensuite, nous devons créer le fichier de mot de passe /var/www/www.example.com/.htpasswd. Nous voulons nous connecter avec le nom d’utilisateur admin, donc nous faisons ceci :

htpasswd -c /var/www/www.example.com/.htpasswd admin

Entrez un mot de passe pour admin, et c’est fait !

4 Installer et configurer munin sur le client

client munin (server2.example.com) :

Sur le système client, nous devons seulement installer le paquet client munin qui s’appelle munin-node :

apt-get install munin-node

Ensuite, nous devons dire au client munin que notre serveur munin server1.example.com avec l’adresse IP 192.168.0.100 est autorisé à se connecter pour récupérer des détails du client. Pour ce faire, nous ouvrons /etc/munin/munin-node.conf et ajoutons la ligne allow ^192.168.0.100$ à la fin. Ensuite, le fichier devrait ressembler à ceci :

vi /etc/munin/munin-node.conf

| # # Exemple de fichier de configuration pour 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 # Quel port utiliser ; host * user root group root setsid yes # Regexps pour les fichiers à ignorer ignore_file ~$ ignore_file \.bak$ ignore_file %$ ignore_file \.dpkg-(tmp|new|old|dist)$ ignore_file \.rpm(save|new)$ # Définissez ceci si le client ne rapporte pas le nom d'hôte correct lors de # la connexion à localhost, port 4949 # #host_name localhost.localdomain # Une liste d'adresses qui sont autorisées à se connecter. Cela doit être un # expression régulière, en raison de problèmes dans Net::Server, qui # ne comprend pas la notation réseau de style CIDR. Vous pouvez répéter # la ligne allow autant de fois que vous le souhaitez allow ^127\.0\.0\.1$ allow ^192\.168\.0\.100$ |

Enfin, nous redémarrons le client munin :

/etc/init.d/munin-node restart

5 Mettre à jour la configuration du serveur munin

serveur munin (server1.example.com) :

Maintenant, nous devons dire au serveur munin qu’il y a un autre système à surveiller (server2.example.com avec l’adresse IP 192.168.0.101). Pour ce faire, nous ouvrons /etc/munin/munin.conf et ajoutons une section pour server2.example.com afin que le fichier ressemble à ceci :

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 |

Ensuite, nous redémarrons munin :

/etc/init.d/munin-node restart

Après quelques minutes, vous devriez trouver un lien pour server2.example.com sur la page munin (http://www.example.com/monitoring/) :

Lorsque vous cliquez sur ce lien, vous verrez les graphiques pour server2.example.com.

6 Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.