Monitorer son LAN avec Php Server Monitor

Pour être sûr que toute sa domotique est toujours présente sur le réseau local, il est important de pouvoir la superviser. J’ai choisi Php Server Monitor.

Situation de départ

En rajoutant de la domotique un peu partout dans sa maison, il devient important de pouvoir s’assurer que tous ces serveurs et capteurs répondent sur le réseau. Sinon cela veut dire information erronée et potentiels problèmes à la clé.

Imaginez un script de gestion de température qui prendre sa consigne sur un capteur IOT en wifi et qu’il ne répondait plus, il pourrait faire froid au lever le matin … C’est du vécu !

Du coup, il devient primordial d’avoir un oeil sur ses équipements pour pouvoir agir au plus vite. Connaissant les applications professionnelles (centreon, zabbix, PRTG, nagios, ..), on se rend vite compte que mettre une solution comme celle-ci à la maison relève de l’utopie. On n’a pas besoin de connaitre l’état CPU/RAM/Disque de chaque équipement depuis 6 mois mais plutôt de savoir si il répond bien sur le réseau. Il faut qu’il sache donc au moins envoyer un mail en cas d’alerte.

Et le seul que j’ai trouvé qui fasse cela est Php Server Monitor.

Mur d’écran

Installation

Pour cette installation, je pars du principe que vous disposez déjà d’un serveur web et d’un serveur mysql installé. J’ai installé ce monitoring sur un Rapsberry, avec un serveur Nginx et Mysql Server.

Pour l’installation, connectez vous en SSH sur votre serveur et mettez vous dans /tmp

cd /tmp

Puis télécharger la dernière version de PhpServerMonitor ici, renommer là, dezipper là et copier la dans le serveur web.

sudo wget https://sourceforge.net/projects/phpservermon/files/phpservermon/phpservermon-3.2.0.zip/download
sudo mv download phpservermon-3.2.0.zip
sudo unzip phpservermon-3.2.0.zip
sudo mv phpservermon-3.2.0 /var/www/phpservermon

Il faut ensuite créer une base mysql

sudo mysql -u root -p

Une fois connecté au serveur, créer la base

create database phpservermonitor;
exit

Il faut ensuite se rendre sur la page web de votre serveur dans http://xxx.xxx.xxx.xxx/phpservermon et faire les réglages initiaux.

Configuration initiale pour la base mysql
Configuration compte Admin

Monitorer son LAN

Maintenant que l’application est lancée, on va pouvoir monitorer son LAN en ajoutant ses hosts. Avec PhpServerMonitor, on peut monitorer de 3 façons :

  • ping
  • check de port (service)
  • mot clé dans une page web

J’ai choisi de monitorer via un check de port car tous les éléments que je veux monitorer tournent avec des services dessus (web entre autre), mais on pourrait monitorer aussi bien le port SSH des Raspberry par exemple.

Vue globale

Dans l’onglet Server, on va retrouver en liste nos services monitorés. On va pouvoir en ajouter des nouveaux.

Vue liste

Pour l’ajout d’un serveur, c’est très simple

Ajout de serveur

Dans l’onglet config, on retrouve notamment le paramétrage SMTP pour l’envoi de mail.

Configuration SMTP

Dans log, on voit les évènements qui se sont produits (ici mauvais paramétrage de port au départ)

Dernière chose, la plus importante : il faut planifier un cron pour faire tourner la tache de check à intervalle régulier. J’ai choisi un intervalle de 5 min. Pour le rajouter, il faut éditer la crontab.

sudo crontab -e

Puis Ajouter la ligne (i pour passer en édition sous vi puis :wq pour sortir)

*/5 * * * * php /var/www/phpservermon/cron/status.cron.php

Enregistrer et fermer la crontab.

En explorant un peu les serveurs, vous verrez apparaitre au fur et à mesure des graphiques sur l’état de vos devices.

Courbe de monitoring

Alors, pas si dur hein ?

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.