3ème volet de la problématique de surveiller si tout se passe bien sur son RPi. L’utilisation de Monit est destinée aux serveurs et pas spécialement au Raspberry Pi contrairement aux applications évoquées dans Monitorer son Raspberry Pi – Partie 1 et Monitorer son Raspberry Pi – Partie 2.
Le vrai plus de Monit c’est une surveillance active et complètement paramètrable de votre système, les processus, disques, accessibilité de service.
Installation après mise à jour de la liste des dépôts :
sudo apt-get update
sudo apt-get install monit
Un fichier contient la configuration de base de l’application :
sudo vi /etc/monit/monitrc
Le fichier est assez long, je vous ai fait une sélection, à vous de trouver et décommenter/modifier la ligne qui vous intéresse.
set daemon 120
set mailserver localhost,
set mail-format { from: monit@mondomaine.fr }
set alert monomail@mondomaine.fr
set httpd port 2812 and #Ecoute du port 2812 en HTTP
use address 0.0.0.0 #Accès depuis n’importe quelle IP
allow md5 /var/www/.htpasswd #Identification par login/mot de passe
Il ne reste plus qu’à démarrer le service (et donc le serveur web intégré) :
sudo services monit start
On se connecte avec le navigateur sur http://IPDuRaspberryPi:2812/
Pour ajouter des « éléments » à surveiller, il suffit de créer un fichier dans /etc/monit/conf.d/ comme par exemple pour Postfix :
check process postfix with pidfile /var/spool/postfix/pid/master.pid
start program = « /etc/init.d/postfix start »
stop program = « /etc/init.d/postfix stop »
if cpu > 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart
if totalmem > 200.0 MB for 5 cycles then restart
if children > 250 then restart
if loadavg(5min) greater than 10 for 8 cycles then stop
if failed host localhost port 25 type tcp protocol smtp
with timeout 15 seconds
then alert
if failed host localhost port 10025 type tcp protocol smtp
with timeout 15 seconds
then alert
if 3 restarts within 5 cycles then timeout
Je vous laisse regarder la doc pour plus de détails, on trouve pas mal d’exemples sur le net pour diverses utilisations.
Stay tuned !