Vous êtes ici:

Menu


Stacks Image 9724
NRPE (Nagios Remote Plugin Executor) est à la fois un agent de supervision et un protocole de communication sécurisé (ou non si ssl est désactivé). Il permet l'exécution de sonde (plugin) sur un hôte distant. Cela réduit la charge sur le serveur de supervision car l'exécution de la sonde se réalise sur 'hôte distant. On peut aussi exécuter une sonde sur l'hôte distant pour superviser un hôte distant différent. Cette autre solution peut être intéressante pour des petites infrastructures éloignées et éviter l'installation d'un poller.
Il faut bien comprendre le fonctionnement de l'agent NRPE :
- NRPE installé sur le serveur de supervision fonctionne comme une sonde, envoie les commandes de sonde à exécuter et reçoit les informations en retour.
- NRPE installé sur l'hôte distant fonctionne en daemon et attends les instructions du serveur de supervision, exécute la sonde quand on lui donne l'ordre et renvoie les informations au serveur de supervision.
Le protocole de communication NRPE est le 5666 par défaut.
Nous avons deux installations distinctes à réaliser en fonction du rôle de la machine : supervision ou hôte. L’exemple ci-dessous a été réactualisé avec la dernière installation de Centreon 3.4.
Stacks Image 19246
schéma de principe

1 Installation de l'agent NRPE sur un central

Nous commencerons par l'installation la plus facile, le démon NRPE étant installé sur un serveur poller. Nous installerons seulement le client NRPE sur le Central.
yum install centreon-nrpe-plugin

1.1 Vérification du fonctionnement

Pour vérifier le fonctionnement de notre plugin, nous pouvons, par exemple, utilisez un poller Centreon avec NRPE installé en daemon.
/usr/lib/nagios/plugins/check_centreon_nrpe -H 172.16.209.233
NRPE v2.15
Un autre exemple, utilisez un serveur Windows avec comme agent nsclient++
/usr/local/plugins/libexec/check_centreon_nrpe -H 172.16.209.204
I (0,4,1,105 2014-04-28) seem to be doing fine...
Si vous avez déjà installé un agent NSClient++ avec l'option NRPE, vous pouvez vérifiez le bon fonctionnement avec la commande suivante. Sinon, je vous invite à lire l'article sur l'agent NSCLient++.
/usr/local/plugins/libexec/check_centreon_nrpe -H 172.16.209.214 -c "alias_cpu"
OK CPU Load ok.|'5m'=0%;80;90 '1m'=0%;80;90 '30s'=0%;80;90
Si votre agent NRPE distant n'est pas sécurisé, ce qui n'est pas une bonne solution, vous avez la possibilité de lancer la commande sans cryptage avec l'option n.
/usr/local/plugins/libexec/check_centreon_nrpe -H 172.16.209.214 -n -c "alias_cpu"
OK CPU Load ok.|'5m'=0%;80;90 '1m'=0%;80;90 '30s'=0%;80;90

1.2 Configuration du plugin dans Centreon

Pour configurer notre sonde (plugin), nous aurons besoin d'une commande.
 

1.2.a La commande check_nrpe

Stacks Image 19497
la commande check_nrpe
$USER1$/check_centreon_nrpe -H $HOSTADDRESS$ -p $_SERVICEPORT$ -c $_SERVICECOMMAND$ -a ""$_SERVICEARGUMENT$""
La macro $_SERVICEPORT$ étant obligatoire, nous devrons créer un template de base avec le port 5666 par défaut. Si vous ne voulez pas de template de base supprimer le paramètre -p et sa macro associée. La macro $_SERVICEARGUMENT$ est protégé par 2 double-quotes. Pour utiliser cette commande de vérification sans utiliser les arguments -a, nous devrons absolument mettre une valeur non significative sinon le moteur de supervision nous retournera une erreur.
Centreon-Clapi

centreon -u admin -p password -o CMD -a ADD -v 'check_nrpe;check;$USER1$/check_centreon_nrpe -H $HOSTADDRESS$ -p $_SERVICEPORT$ -c $_SERVICECOMMAND$ -a ""$_SERVICEARGUMENT$""'

1.2.b Le template de base pour check_nrpe

Stacks Image 19662
le template NRPE
Ce template de base nous évite de saisir le numéro de port 5666 par défaut. Il sera possible de le surcharger avec un numéro de port spécifique pour un service particulier.
Centreon-Clapi

centreon -u admin -p password -o STPL -a add -v "Modele_NRPE;NRPE;generic-active-service-custom"
centreon -u admin -p password -o STPL -a setparam -v "Modele_NRPE;check_command;check_nrpe"
centreon -u admin -p password -o STPL -a setmacro -v "Modele_NRPE;PORT;5666"
Pour superviser une machine Windows avec NSClient ++, je vous conseille de lire l'article suivant. Sinon vous pouvez continuer avec le mode démon NRPE.
comments powered by Disqus
 Vous êtes ici: