ajout HowtoNRPE
This commit is contained in:
parent
fe6073c654
commit
a5b4e151f6
111
HowtoNRPE.md
Normal file
111
HowtoNRPE.md
Normal file
|
@ -0,0 +1,111 @@
|
|||
---
|
||||
categories: monitoring
|
||||
title: Howto NRPE
|
||||
---
|
||||
|
||||
* Documentation : <https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf>
|
||||
* Statut de cette page : test / bookworm
|
||||
|
||||
NRPE (Nagios Remote PluginExecutor) permet d'exécuter de façon légère des commandes prédéfinies sur un serveur distant.
|
||||
Historiquement il est utilisé par NAGIOS pour des « checks » sur un serveur distant.
|
||||
Il peut également être utilisé par [Icinga](HowtoIcinga).
|
||||
Il supporte SSL/TLS ce qui permet d'avoir un minimum de sécurité.
|
||||
|
||||
## Installation
|
||||
|
||||
~~~
|
||||
# apt install nagios-nrpe-server monitoring-plugins monitoring-plugins-basic monitoring-plugins-common monitoring-plugins-standard nagios-plugins-contrib
|
||||
|
||||
$ /usr/sbin/nrpe --version
|
||||
NRPE - Nagios Remote Plugin Executor
|
||||
Version: 4.1.0
|
||||
|
||||
# systemctl status nagios-nrpe-server
|
||||
● nagios-nrpe-server.service - Nagios Remote Plugin Executor
|
||||
Loaded: loaded (/lib/systemd/system/nagios-nrpe-server.service; enabled; preset: enabled)
|
||||
Active: active (running) since Fri 2023-07-28 15:55:54 CEST; 3 days ago
|
||||
Docs: http://www.nagios.org/documentation
|
||||
Main PID: 549 (nrpe)
|
||||
Tasks: 1 (limit: 2356)
|
||||
Memory: 1.7M
|
||||
CPU: 15ms
|
||||
CGroup: /system.slice/nagios-nrpe-server.service
|
||||
└─549 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -f
|
||||
~~~
|
||||
|
||||
|
||||
## Configuration
|
||||
|
||||
Nous utilisons le fichier `/etc/nagios/nrpe.d/evolix.cfg` pour surcharger la configuration par défaut.
|
||||
|
||||
`/etc/nagios/nrpe.d/evolix.cfg` :
|
||||
|
||||
~~~
|
||||
# Allowed IPs
|
||||
allowed_hosts=192.0.2.42,192.0.2.43
|
||||
|
||||
# System checks
|
||||
command[check_load]=/usr/lib/nagios/plugins/check_load --percpu --warning=0.7,0.6,0.5 --critical=0.9,0.8,0.7
|
||||
command[check_swap]=/usr/lib/nagios/plugins/check_swap -a -w 30% -c 20%
|
||||
command[check_disk1]=/usr/lib/nagios/plugins/check_disk -e -w 10% -c 3% -W 10% -K 3% -C -w 5% -c 2% -W 5% -K 2% -p /home -x /lib/init/rw -x /dev -x /dev/shm -x /run -I '^/run/' -I '^/sys/'
|
||||
command[check_zombie_procs]=sudo /usr/lib/nagios/plugins/check_procs -w 5 -c 10 -s Z
|
||||
command[check_total_procs]=sudo /usr/lib/nagios/plugins/check_procs -w 400 -c 600
|
||||
command[check_users]=/usr/lib/nagios/plugins/check_users -w 5 -c 10
|
||||
|
||||
# Generic services checks
|
||||
command[check_smtp]=/usr/lib/nagios/plugins/check_smtp -H localhost
|
||||
command[check_dns]=/usr/lib/nagios/plugins/check_dns -H evolix.net
|
||||
command[check_ntp]=/usr/lib/nagios/plugins/check_ntp -H ntp.evolix.net
|
||||
command[check_ssh]=/usr/lib/nagios/plugins/check_ssh localhost
|
||||
command[check_mailq]=/usr/lib/nagios/plugins/check_mailq -M postfix -w 10 -c 20
|
||||
|
||||
# Specific services checks
|
||||
command[check_pgsql]=/usr/lib/nagios/plugins/check_pgsql -H localhost -l nrpe -p 'PASSWORD'
|
||||
command[check_mysql]=/usr/lib/nagios/plugins/check_mysql -H localhost -f ~nagios/.my.cnf
|
||||
...
|
||||
~~~
|
||||
|
||||
> *Note* : dans des versions précédentes de Debian, il n'était pas vraiment possible de surcharger la configuration : des options en double provoquait une activation aléatoire d'une option ou d'une autre !
|
||||
|
||||
|
||||
## Principe
|
||||
|
||||
Le principe est qu'un démon écoute sur le port TCP/5666 et qu'on peut ainsi exécuter une commande distante définie dans la configuration.
|
||||
|
||||
~~~
|
||||
/usr/lib/nagios/plugins/check_nrpe -H 192.0.2.42 -c check_load
|
||||
OK - load average: 0.01, 0.01, 0.01|load1=0.012;0.700;0.900;0; load5=0.010;0.600;0.800;0; load15=0.010;0.500;0.700;0;
|
||||
~~~
|
||||
|
||||
> *Note* : il faut savoir que le `check_load` lance simplement la commande définie dans la configuration.
|
||||
Cela peut-être un check, mais aussi n'importe quelle commande ou script de son choix !
|
||||
|
||||
|
||||
## checks
|
||||
|
||||
Même si ce n'est pas directement lié à NRPE, listons quelques checks intéressants.
|
||||
|
||||
### check_load
|
||||
|
||||
Vu l'utilisation massive de plusieurs CPUs, il est très intéressant d'utiliser l'option `--percpu` qui permet au check de s'adapter tout seul au nombre de CPUs :
|
||||
|
||||
~~~
|
||||
$ /usr/lib/nagios/plugins/check_load --percpu --warning=0.7,0.6,0.5 --critical=0.9,0.8,0.7
|
||||
~~~
|
||||
|
||||
### check_disk
|
||||
|
||||
Plusieurs options sont intéressantes :
|
||||
|
||||
* `-e` : check toutes les partitions mais en cas d'erreur, n'affiche que les partitions qui sont en erreur (WARN, CRIT ou UNKN)
|
||||
* `-x /run` : ignore une partition
|
||||
* `-I '^/run/' : ignore les partitions selon un pattern
|
||||
* `-C -w 5% -c 2% -W 5% -K 2% -p /home` : donne des seuils d'alertes différents pour une partition
|
||||
|
||||
### check_http
|
||||
|
||||
Plusieurs options sont intéressantes :
|
||||
|
||||
* `-S -H example.com -C 15,5` : vérifie que la validité d'un certificat SSL/TLS est inférieure à 15 jours (WARN) ou 5 jours (CRIT)
|
||||
|
||||
|
Loading…
Reference in a new issue