Surveillance serveur · 5 min read · Oct 20, 2025
Surveillance du serveur avec Munin et Monit sur Ubuntu 16.04 LTS (Xenial Xerus)
Ce tutoriel vous montrera comment surveiller un serveur Ubuntu 16.04 avec Munin et Monit. Munin produit de jolis graphiques sur presque tous les aspects de votre serveur, tandis que Monit vérifie la disponibilité des services comme Apache, MySQL, Postfix et prend les mesures appropriées, comme un redémarrage, s’il constate qu’un service ne fonctionne pas comme prévu. La combinaison des deux vous offre une surveillance complète : des graphiques qui vous permettent de reconnaître les problèmes actuels ou à venir, et un gardien qui garantit la disponibilité des services surveillés. Ce tutoriel contient deux chapitres (optionnels) sur l’intégration de Munin et Monit dans ISPConfig 3.1.
1 Remarque préliminaire
Le nom d’hôte de notre système est server1.example.com, et nous avons un site web www.example.com dessus avec le répertoire racine des documents /var/www/www.example.com/web.
Les étapes suivantes doivent être effectuées en tant qu’utilisateur root. Pour devenir utilisateur root sur votre serveur, exécutez cette commande :
sudo -sAssurez-vous que le système est à jour avant de commencer à installer Munin, exécutez :
apt-get update
apt-get upgradeApache est utilisé pour afficher les pages de Munin, le module fcgid d’apache est requis pour la fonction de zoom des graphiques de Munin. Je vais installer apache et le module libapache2-mod-fcgid avec apt.
apt-get -y install apache2 libcgi-fast-perl libapache2-mod-fcgidActivez le module fcgid dans apache.
a2enmod fcgid2 Installer et configurer Munin
Pour installer Munin sur Ubuntu 16.04, exécutez les commandes ci-dessous :
apt-get -y install munin munin-node munin-plugins-extraLorsque le serveur exécute MySQL ou MariaDB, activez quelques plugins Munin supplémentaires pour surveiller MySQL :
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/mysql_ mysql_
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries
ln -s /usr/share/munin/plugins/mysql_threads mysql_threadsEnsuite, nous devons éditer le fichier de configuration de Munin /etc/munin/munin.conf. Décommentez les lignes dbdir, htmldir, logdir, rundir et tmpldir (les valeurs par défaut sont correctes). Nous voulons que Munin 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 dans la section simple de l’arborescence des hôtes. Sans les commentaires, le fichier modifié ressemble à ceci :
nano /etc/munin/munin.conf# Exemple de fichier de configuration pour Munin, généré par 'make build'
# Les trois variables suivantes spécifient où se trouvent les bases de données RRD,
# la sortie HTML, les journaux et les fichiers de verrouillage/pid. Ils doivent tous
# être accessibles en écriture par l'utilisateur exécutant munin-cron. Ils sont tous
# par défaut aux valeurs que vous voyez ici.
#
dbdir /var/lib/munin
htmldir /var/cache/munin/www
logdir /var/log/munin
rundir /var/run/munin
# Où chercher les modèles HTML
#
tmpldir /etc/munin/templates
# Où chercher les fichiers www statiques
#
#staticdir /etc/munin/static
# les fichiers cgi temporaires sont ici. notez qu'ils doivent être accessibles en écriture par
# l'utilisateur cgi (généralement nobody ou httpd).
#
# cgitmpdir /var/lib/munin/cgi-tmp
# (Exactement un) répertoire pour inclure tous les fichiers.
includedir /etc/munin/munin-conf.d
[...]
# une simple arborescence d'hôtes
[server1.example.com]
address 127.0.0.1
use_node_name yes
[...] Nous devrions trouver le fichier de configuration Apache pour Munin /etc/munin/apache.conf - il définit un alias appelé munin vers le répertoire de sortie HTML de munin /var/cache/munin/www, ce qui signifie que nous pouvons accéder à munin depuis tous les sites web sur ce serveur en utilisant le chemin relatif /munin (par exemple, http://www.example.com/munin).
Maintenant, nous allons éditer le fichier munin.conf pour Apache afin de permettre l’accès depuis des adresses IP externes. Créez une sauvegarde du fichier original :
mv /etc/munin/apache24.conf /etc/munin/apache24.conf_bakOuvrez le nouveau fichier avec un éditeur :
nano /etc/munin/apache24.confEt collez le contenu ci-dessous :
Alias /munin /var/cache/munin/www
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
SetHandler fcgid-script
SetHandler cgi-script
Redémarrez Apache :
service apache2 restartPuis redémarrez Munin :
service munin-node restartMaintenant, attendez quelques minutes pour que Munin puisse produire sa première sortie, puis allez sur http://www.example.com/munin/ dans votre navigateur, et vous verrez les premières statistiques :

(Ceci n’est qu’un petit extrait des nombreux graphiques que munin produit…)
3 Protéger par mot de passe le répertoire de sortie de Munin (optionnel, mais fortement recommandé)
Il est maintenant judicieux de protéger par mot de passe le répertoire de sortie de munin, à moins que vous ne souhaitiez que tout le monde puisse voir chaque petite statistique sur votre serveur.
Pour ce faire, nous devons créer le fichier de mot de passe /etc/munin/munin-htpasswd. Nous voulons nous connecter avec le nom d’utilisateur admin, donc nous faisons cela :
htpasswd -c /etc/munin/munin-htpasswd adminEntrez un mot de passe pour admin. Ensuite, ouvrez à nouveau /etc/munin/apache.conf…
nano /etc/munin/apache24.conf… commentez “Require all granted” et ajoutez les lignes que j’ai marquées en rouge :
Alias /munin /var/cache/munin/www
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
Options None
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
SetHandler fcgid-script
SetHandler cgi-script
Puis redémarrez Apache :
service apache2 restart4 Activer des modules supplémentaires dans Munin
La commande Munin “munin-node-configure –suggest” peut être utilisée pour obtenir des recommandations pour des modules Munin supplémentaires qui peuvent être activés sur le serveur. Exécutez :
munin-node-configure --suggestLa sortie devrait être similaire à ceci :

La colonne “utilisé” indique si un module est activé, la colonne “Suggestions” indique si le serveur exécute un service qui peut être surveillé par ce module. Créez un lien symbolique pour le module dans /etc/munin/plugins pour l’activer.
Ici, je vais activer les modules apache_* par exemple :
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/apache_accesses
ln -s /usr/share/munin/plugins/apache_processes
ln -s /usr/share/munin/plugins/apache_volumeRedémarrez Munin pour charger la nouvelle configuration.
service munin-node restart5 Configurer Munin dans ISPConfig (optionnel)
Le panneau de contrôle d’hébergement ISPConfig a une option pour afficher les données Munin dans le module de surveillance ISPConfig. Les données Munin sont chargées dans un iframe, comme la plupart des navigateurs bloquent le contenu à charger depuis http dans un site https, nous devrons trouver un moyen d’accéder aux statistiques Munin via SSL. Le moyen le plus simple est d’utiliser le vhost ISPConfig activé SSL pour cela en créant un lien symbolique à l’intérieur du répertoire web d’ISPConfig vers le répertoire de données www de Munin.
ln -s /var/cache/munin/www /usr/local/ispconfig/interface/web/muninMaintenant, nous pouvons accéder à Munin dans un navigateur avec https://server1.example.com:8080/munin à travers le vhost apache d’ISPConfig.
L’étape suivante consiste à ajouter la configuration dans ISPConfig.
Connectez-vous à ISPConfig en tant qu’utilisateur Administrateur (admin) et allez dans Système > Configuration du serveur, remplissez l’URL, le nom d’utilisateur et le mot de passe pour Munin comme indiqué ci-dessous.

Assurez-vous d’utiliser https:// et le port 8080 dans l’URL de munin.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.