Un petit mémo sur comment superviser les services d’un serveur web (Nginx, MariaDB et PHP) sous Linux avec LibreNMS.
Configuration des services à superviser : Nginx, MariaDB et PHP
Cette partie est à réaliser sur le serveur à superviser. L’installation et la configuration du serveur web ainsi que le service snmpd ne seront pas traités ici.
- Installation de l’agent Librenms :
cd /opt/ git clone https://github.com/librenms/librenms-agent.git cd librenms-agent cp check_mk_agent /usr/bin/check_mk_agent chmod +x /usr/bin/check_mk_agent cp check_mk@.service check_mk.socket /etc/systemd/system mkdir -p /usr/lib/check_mk_agent/plugins /usr/lib/check_mk_agent/local cp -r agent-local/ /usr/lib/check_mk_agent/local/ chmod +x /usr/lib/check_mk_agent/local/$script systemctl enable check_mk.socket && systemctl start check_mk.socket
- Télécharger les scripts pour la supervision de chaque service :
wget https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/nginx -O /etc/snmp/nginx wget https://github.com/librenms/librenms-agent/raw/master/snmp/phpfpmsp -O /etc/snmp/phpfpmsp wget https://github.com/librenms/librenms-agent/raw/master/snmp/mysql -O /etc/snmp/mysql
chmod +x /etc/snmp/nginx chmod +x /etc/snmp/phpfpmsp chmod +x /etc/snmp/mysql
snmpd.conf :extend mysql /etc/snmp/mysql extend nginx /etc/snmp/nginx extend phpfpmsp /etc/snmp/phpfpmsp
snmpd :systemctl restart snmpd
- Créer un nouveau fichier serveur block nginx :
nano /etc/nginx/conf.d/status.conf
server {
listen localhost;
server_name status.localhost;
keepalive_timeout 0;
access_log off;
allow 127.0.0.1;
deny all;
###status nginx
location /nginx-status {
stub_status on;
}
###status de php-fpm
location ~ ^/(status|ping)$ {
allow 127.0.0.1;
fastcgi_param SCRIPT_FILENAME /usr/share/php/8.0/fpm/status.html;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.0-fpm.sock;
}
}
/etc/php/8.0/fpm/pool.d/www.conf :nano /etc/php/8.0/fpm/pool.d/www.conf
décommenter la ligne pm.status_path = /status
nginx -t
php-fpm8.0 -t
systemctl restart nginx php8.0-fpm
- nginx :
curl -L http://localhost/nginx-status
curl -L http://127.0.0.1/status
Dans le répertoire /etc/snmp/ (celui ou a été téléchargé le script myslq) créer le fichier mysql.cnf avec les informations suivantes (login et mdp à modifier) :
nano /etc/snmp/mysql.cnf
<?php
$mysql_user = 'root'; $mysql_pass = 'MDP'; $mysql_host = 'localhost'; $mysql_port = 3306; $chk_options['slave'] = false;
?>
./mysql
Activation des applications à superviser dans LibreNMS :
Les étapes suivantes sont à rélaliser dans l’interface web de LibreNMS.
- Sélectionner l’hôte à superviser, exemple :
- Cliquer sur le roue « dentée » à droite de la fenêtre :
- Cliquer sur le menu Application, puis activer les modules Nginx, PHP-FPM et MySQL :
- Après quelques disaines de minutes, les premièrs relevés apparaissent sour forme de graphiques dans le menu Apps :






