Attention, cet article a plus d'une année d'ancienneté. Il est possible que les informations présentées ne soient plus à jour, spécialement dans le cadre d'un article technique.
Bonjour à tous,
Après demande de Julien, je vais vous expliquer comment configurer les checks applicatifs pour MySQL et Nginx sous Librenms ou Observium afin que vous ayez de beaux graphs et un œil attentif sur vos serveurs.
Je pars du principe que vos hôtes sont déjà configurés dans LibreNMS (ou observium), je pars du principe que vous utilisez du Debian aussi.
Installation de l’Unix-Agent
Toutes les manipulations se font sur les serveurs qui sont monitorés.
Installez les dépendances nécessaires :
apt-get install xinetd git -y
Clonez l’Unix-Agent de LibreNMS sur votre serveur :
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
Copiez les scripts de démarrage de l’Unix-Agent :
cp check_mk_xinetd /etc/xinetd.d/check_mk && cp check_mk@.service check_mk.socket /etc/systemd/system
Créez les dossiers nécessaires au bon fonctionnement de l’agent :
mkdir -p /usr/lib/check_mk_agent/plugins /usr/lib/check_mk_agent/local
Maintenant, récupérez les scripts :
cd /usr/lib/check_mk_agent/local wget https://raw.githubusercontent.com/librenms/librenms/master/scripts/agent-local/mysql --no-check-certificate wget https://raw.githubusercontent.com/librenms/librenms/master/scripts/agent-local/nginx --no-check-certificate
Configuration du check MySQL :
Le check MySQL ne semble pas être compatible avec PHP 7.0 !
Créez le fichier de configuration du script avec la commande suivante :
nano /usr/lib/check_mk_agent/local/mysql.cnf
Remplissez-le avec ceci :
<?php
$mysql_user = ‘debian-sys-maint’;
$mysql_pass = ‘pass’;
$mysql_host = ‘localhost’;
$mysql_port = 3306;
Vous pouvez trouver le mot de passe de l’utilisateur de maintenance MySQL intégré à Debian dans le fichier /etc/mysql/debian.cnf.
Une fois le fichier créez, rendez le bordel exécutable et testez avec la commande suivante :
chmod +x * && ./mysql
Vous devriez avoir une sortie qui commence comme ça :
<<<mysql>>>
a0:0
a1:0
a2:0
a3:0
a4:-1
…
Configuration du check Nginx :
Créez un vhost spécific pour le monitoring :
nano /etc/nginx/sites-enabled/monitoring
Remplissez-le avec ceci :
server { listen 127.0.0.1:80; server_name _; location /nginx-status { stub_status on; access_log off; allow 127.0.0.1; deny all; } }
Redémarrez Nginx avec la commande suivante et testez le script :
service nginx restart && /usr/lib/check_mk_agent/local/nginx
Vous devriez avoir une sortie dans ce style :
<<<nginx>>>
1
0
1
0
1
Redémarrez Xinetd :
/etc/init.d/xinetd restart
Activez ensuite l’agent dans les paramètres du serveur :
Merci bcp pour l’article ! Comme le dit Apache2 : « It Works ! »
Par contre, attention à une ligne de commande, il te manque des « && » entre les commandes > « 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 »
Merci pour le retour Julien, a la base j’étais sensé avoir des retours à la la ligne mais, ça a du péter sans que j’y fasse attention lors d’une révision O.o