Compilation Installation et Configuration de l'addon Nagios : NRPE
Très utilisée cette petite bête
NRPE (Nagios Remote Plugin Executor) est un Addons pour Nagios qui permet d'exécuter des plugins sur un serveur Linux/Unix distant. Cela permet de monitorer des ressources locales (Charge du processeur, utilisation de la mémoire, espace disque...etc...) qui ne sont normalement pas disponibles depuis d'autres machines.
Afin d'interroger un client NRPE il faut utiliser le plugin "check_nrpe" sur le serveur Nagios, et c'est ce que nous allons voir.
Petit schéma explicatif :
Pré-requis :
Avant ces deux compilations (nrpe et les plugins check) il vous faudra créer l'utilisateur Nagios :
adduser nagios -s /sbin/nologin
Sinon vous rencontrerez des erreurs lors du make install.
Vous aurez aussi besoin du paquet de développement de SSL :
yum install openssl-devel ou aptitude install libssl-dev
Téléchargement :
Rendez vous à cette url : http://www.nagios.org/download/addons/
cd /opt/SOURCES wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz?use_mirror=ignum wget http://heanet.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz mkdir /opt/nrpe212 ln -s /opt/nrpe212/ /opt/nrpe
Compilation de Nrpe :
cd /opt/SOURCES/nrpe-2.12 ./configure --prefix=/opt/nrpe/ make make install
Configuration :
Copier le script d'init qui se trouve dans les sources :
#Redhat & Centos : cp -a init-script /etc/init.d/nrpe #Debian & Ubuntu : cp -a init-script.debian /etc/init.d/nrpe
Pensez à le modifier pour qu'il colle à votre installation :
vi /etc/init.d/nrpe chkconfig --add nrpe chkconfig --level 35 nrpe on chmod 755 /etc/init.d/nrpe
Fichier de configuration :
cp -a /opt/SOURCES/nrpe-2.12/
Compilation de Plugins Nagios :
cd /opt/SOURCES/nagios-plugins-1.4.13 ./configure --prefix=/opt/nrpe make make install
Ici pas de configuration spécifique.
Installation :
Copie du fichier de configuration :
mkdir /opt/nrpe/etc cp -a /opt/SOURCES/nrpe-2.12/sample-config/nrpe.cfg /opt/nrpe/etc/
Modification des droits :
chown -R nagios: /opt/nrpe212
Fichier nrpe.cfg :
- <user> : utilisateur exécutant le serveur nrpe ( ex :nagios )
- <nrpebin> : chemin du serveur nrpe (ex : /home/nagios/nrpe )
- <nrpecfg> : chemin du fichier de config du serveur nrpe (ex : /home/nagios/nrpe.cfg )
- <ipaddressx> : liste des adresse autorisé à ce connecter ( ex : ip de votre serveur nagios )
Démarrer Nrpe :
#Redhat & Centos service nrpe start ou # Debian & Ubuntu Invoke-rc.d nrpe start
Vérifiez qu'il se soit bien lancé :
netstat -ntlp | grep nrpe
qui devrait vous donner :
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 16328/nrpe
Configuration dans Nagios :
Version 3.2.1
Il faudra installer nrpe aussi sur votre serveur Nagios, le compiler comme plus haut dans ce billet.
Une fois fait vous vous retrouverez avec le fichier check_nrpe dans : /checmin/nagios/libexec/ selon votre installation.
Premier petit test sur votre serveur Nagios :
nagios/libexec 4$ ./check_nrpe -H ip-client-nrpe NRPE v2.12
Pour valider le bon fonctionnement il faut que cette commande vous renvoi la version de votre client Nrpe.
Deuxième test sur votre serveur Nagios :
Dans votre fichier nrpe.cfg sur votre serveur client vous dévirez avoir quelque chose comme :
# The following examples use hardcoded command arguments... command[check_users]=/opt/nrpe/libexec/check_users -w 5 -c 10 command[check_load]=/opt/nrpe/libexec/check_load -w 15,10,5 -c 30,25,20 command[check_sda1]=/opt/nrpe/libexec/check_disk -w 20% -c 10% -p /dev/sda1 command[check_sda3]=/opt/nrpe/libexec/check_disk -w 20% -c 10% -p /dev/sda3 command[check_zombie_procs]=/opt/nrpe/libexec/check_procs -w 5 -c 10 -s Z command[check_total_procs]=/opt/nrpe/libexec/check_procs -w 150 -c 200
Sur votre serveur nagios voici les tests que vous pouvez effectuer : (prenez bien le nom entre crochet du fichier nrpe.cfg) :
./check_nrpe -H ip-serveur-client -c check_load OK - Charge moyenne: 0.17, 0.18, 0.22|load1=0.170;15.000;30.000;0; load5=0.180;10.000;25.000;0; load15=0.220;5.000;20.000;0; ./chepe -H ip-serveur-client -c check_total_procs PROCS OK: 148 processus
etc....
Maintenant plus qu'a modifier sur votre serveur Nagios une dernière fois : le fichier services.cfg pour certain même si chez moi il n'existe pas Oo ou le fichier nom-serveur-client.cfg :
# Charge CPU define service{ use generic-service host_name remotehost service_description CPU Load check_command check_nrpe!check_load } # Memoire define service{ use generic-service host_name remotehost service_description Memory check_command check_nrpe!check_mem }
Redémarrez Nrpe sur le serveur client et le tour est joué !