Installer et configurer le plugin NRPE

Dans le dernier article, nous avons discuté de l’installation du serveur Nagios sur Debian 9 . Ici, dans ce post, nous allons ajouter l’hôte Linux à l’ outil de surveillance Nagios en utilisant le plugin NRPE.

NRPE Plugin:

Le plugin Nagios Remote Plugin Executor (en abrégé NRPE) vous permet de surveiller les applications et services s’exécutant sur des hôtes Linux / Windows distants. Ce module NRPE permet à Nagios de surveiller les ressources locales comme le processeur, la mémoire, le disque, l’échange, etc. de l’hôte distant.

Enfin, votre système distant doit avoir ce plugin NRPE installé.

Étapes pour ajouter Linux Host à la surveillance Nagios,

Sur l’hôte distant Nagios:

  1. Installez les plug-ins NRPE Add-on et Nagios
  2. Configurer l’extension NRPE
  3. Configurer les chèques Nagios

Sur l’hôte du serveur Nagios:

  1. Configurer le serveur Nagios
  2. Surveillez la machine distante.

Nagios Remote Host:

Installez le plug-in NRPE et les plugins Nagios:

Les plugins NRPE et Nagios ne sont pas disponibles dans le référentiel de base. Donc, pour CentOS 7 / RHEL 7, vous devez configurer le référentiel EPEL sur votre machine.

### CentOS 7 / RHEL 7 ###
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Utilisez la commande suivante pour installer le plug-in NRPE et les plugins Nagios.
### CentOS 7 / RHEL 7 ###
yum install -y nrpe nagios-plugins-all

### Ubuntu 16.04 / Debian 9 ###
apt-get install -y nagios-nrpe-server nagios-plugins

Configurer le module complémentaire NRPE:

Modifiez le fichier de configuration NRPE pour accepter la connexion du serveur Nagios, Editez le fichier /etc/nagios/nrpe.cfg .

vi /etc/nagios/nrpe.cfg

Ajoutez l’adresse IP des serveurs Nagios, séparés par une virgule comme ci-dessous.

allowed_hosts = 127.0.0.1, 192.168.12.10

Configurer les vérifications Nagios:

Le fichier /etc/nagios/nrpe.cfg contient les commandes de base pour vérifier les attributs (CPU, mémoire, disque, etc.architecure) et les services (HTTP, FTP, etc.) sur les hôtes distants. Les lignes de commande ci-dessous vous permettent de surveiller les attributs à l’aide des plugins Nagios.

Remarque: Le chemin d’accès aux plug-ins Nagios peut varier en fonction de l’architecture de votre système d’exploitation (i386 ou x86_64)

CentOS 7 / RHEL 7:

command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_root]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/mapper/centos-root
command[check_swap]=/usr/lib64/nagios/plugins/check_swap -w 20% -c 10%
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200

Ubuntu 16.04 / Debian 9:

command[check_users]=/usr/lib/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_root]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/mapper/server--vg-root
command[check_swap]=/usr/lib/nagios/plugins/check_swap -w 20% -c 10%
command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -w 150 -c 200

Dans la définition de commande ci-dessus -w signifie avertissement et -c signifie critique .

Par exemple, exécutez la commande ci-dessous dans un autre terminal. Testé sur Ubuntu 16.04 :

/usr/lib/nagios/plugins/check_procs -w 150 -c 200
Sortie:
PROCS WARNING: 190 processes | procs=190;150;200;0;

Nagios plugin comptera les processus en cours et vous avertira lorsque le nombre de processus est supérieur à 150, ou il vous indiquera critique lorsque le nombre de processus est supérieur à 200, et en même temps, la sortie affichera OK si le nombre est inférieur à 150

 

Vous pouvez ajuster le niveau d’alerte selon vos besoins. Changez l’avertissement à 200 et critiquez à 250 pour l’essai. Maintenant, vous pouvez voir un message OK.

/usr/lib/nagios/plugins/check_procs -w 200 -c 250
Sortie:
PROCS OK: 189 processes | procs=189;200;250;0;

Ces définitions de commande doivent être entrées dans le fichier modèle sur l’hôte du serveur Nagios pour activer la surveillance.

 

Redémarrez le service NRPE.

### CentOS 7 / RHEL 7 ###
systemctl start nrpe
systemctl active nrpe

### Ubuntu 16.04 / Debian 9 ### 
/etc/init.d/nagios-nrpe-server restart

Hôte du serveur Nagios:

Les plugins NRPE et Nagios ne sont pas disponibles dans le référentiel de base. Donc, pour CentOS 7 / RHEL 7, vous devez configurer le référentiel EPEL sur votre machine.

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Installez check_nrpe plugin:

Utilisez la commande suivante pour installer le plugin ” check_nrpe ” sur votre machine.

### CentOS 7 / RHEL 7 ###
yum -y installer nagios-plugins-nrpe

### Ubuntu 16.04 / Debian 9 ###
apt-get -y installer nagios-nrpe-plugin

Editez le fichier de configuration de Nagios pour inclure tous les fichiers “* .cfg ” dans le répertoire “/usr/local/nagios/etc/servers “.

nano /usr/local/nagios/etc/nagios.cfg

Ajouter ou décommenter la ligne suivante.

cfg_dir=/usr/local/nagios/etc/servers

Créez un répertoire de configuration.

mkdir /usr/local/nagios/etc/servers

 

Configurer le serveur Nagios:

Il est maintenant temps de configurer le serveur Nagios pour surveiller la machine cliente distante, et vous devrez créer une définition de commande dans le fichier de configuration d’objet Nagios pour utiliser le plugin ” check_nrpe “. Ouvrez le fichier ” commands.cfg ” ….
nano /usr/local/nagios/etc/objects/commands.cfg

Ajoutez la définition de commande Nagios suivante au fichier.

### CentOS 7 / RHEL 7 ###
# .check_nrpe. command definition
define command{
command_name check_nrpe
command_line /usr/lib64/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}

### Ubuntu 16.04 Debian 9 ###
# .check_nrpe. command definition
define command{
command_name check_nrpe
command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}

Ajouter un hôte Linux au serveur Nagios:

Créez un fichier de configuration client ( /usr/local/nagios/etc/servers/client.itzgeek.local.cfg ) pour définir les définitions d’hôte et de service de l’hôte Linux distant. Vous pouvez également utiliser le modèle suivant et le modifier en fonction de vos besoins. Le modèle suivant permet de surveiller les utilisateurs connectés, le chargement du système, l’utilisation du disque (/ – partitions), le swap et le processus total .

nano /usr/local/nagios/etc/servers/client.itzgeek.local.cfg

Copiez le contenu ci-dessous dans le fichier ci-dessus.

define host{

            use                     linux-server
            
            host_name               client.itzgeek.local
            
            alias                   client.itzgeek.local
            
            address                 192.168.12.20

}

define hostgroup{

            hostgroup_name  linux-server
            
            alias           Linux Servers
            
            members         client.itzgeek.local
}

define service{

            use                             local-service
            
            host_name                       client.itzgeek.local
            
            service_description             SWAP Uasge
            
            check_command                   check_nrpe!check_swap

}

define service{

            use                             local-service
            
            host_name                       client.itzgeek.local
            
            service_description             Root / Partition
            
            check_command                   check_nrpe!check_root

}

define service{

            use                             local-service
            
            host_name                       client.itzgeek.local
            
            service_description             Current Users
            
            check_command                   check_nrpe!check_users

}

define service{

            use                             local-service
            
            host_name                       client.itzgeek.local
            
            service_description             Total Processes
            
            check_command                   check_nrpe!check_total_procs

}

define service{

            use                             local-service
            
            host_name                       client.itzgeek.local
            
            service_description             Current Load
            
            check_command                   check_nrpe!check_load

}

Vérifiez Nagios pour toute erreur.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Redémarrez le serveur Nagios.

service nagios restart

Pare-feu : (non obligatoire)

Configurez le pare-feu pour que le serveur Nagios puisse atteindre le serveur NRPE s’exécutant sur un hôte Linux distant. Exécutez ces commandes sur une machine Linux distante.

Pare-feu:

firewall-cmd --permanent --add-port = 5666 / tcp
pare-feu-cmd --reload

UFW:

ufw autoriser 5666 / tcp
ufw recharger
ufw activer

Surveiller la machine distante:

Allez voir l’interface Web de Nagios pour voir les nouveaux services que nous avons ajoutés tout à l’heure.

La capture d’écran de la machine Linux distante avec le service que nous avons configuré quelques étapes auparavant:

 

Sources

 

Laisser un commentaire