Monitorare macchine Linux remote con nagios-nrpe

Come visto nei precedenti post, Nagios è un ottimo sistema per il monitoraggio della rete. Se abbiamo delle macchine in Linux e vogliamo tenere sotto controllo lo stato globale del sistema, dobbiamo installare nei computer nagios-nrpe, un agent di Nagios che permette al sistema di effettuare controlli remoti.
Vediamo i vari passi da effettuare per configurare le nostre macchine remote utilizzando Linux CentOS.
1. INSTALLAZIONE PLUG-IN SULLA MACCHINA REMOTA
Per effettuare l’installazione tramite yum è necessario aver installato il repository RPMforge.
# yum install nagios-nrpe
# chkconfig nrpe on
I plug-in vengono installati nella directory /usr/lib/nagios/plugins/.
Per monitorare le eventuali partizioni presenti nei sistemi Linux della rete, dobbiamo conoscere quante sono le partizioni presenti nelle varie macchine. Tramite il comando df è possibile visualizzare le partizioni di un sistema.
# df –h

In questo caso abbiamo cinque partizioni. Questa informazione ci serve per aggiungere i parametri mancanti nel file di configurazione di NRPE.
2. CONFIGURAZIONE DEL PLUG-IN
Per poter monitorare i nostri sistemi (partizioni, swap, processi, etc.), bisogna editare il file di configurazione nrpe.conf. Va specificato l’IP del server Nagios per permettere la corretta comunicazione tra i sistemi e definire i comandi addizionali richiesti non presenti per default nel file di configurazione.
# vi /etc/nagios/nrpe.conf
log_facility=daemon
pid_file=/var/run/nrpe.pid
server_port=5666
#server_address=127.0.0.1nrpe_user=nagios
nrpe_group=nagios
allowed_hosts=127.0.0.1,IP_Nagiosdont_blame_nrpe=0
# command_prefix=/usr/bin/sudo
debug=0
command_timeout=60
connection_timeout=300
#allow_weak_random_seed=1#include=<somefile.cfg>
#include_dir=<somedirectory>
#include_dir=<someotherdirectory># The following examples use hardcoded command arguments…
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_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1# Aggiungere i comandi in base alle partizioni da monitorare
command[check_hdax]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hdax
command[check_sdax]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sdax
command[check_zombie_procs]=/usr/lib/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib/nagios/plugins/check_procs -w 150 -c 200
command[check_swap]=/usr/lib/nagios/plugins/check_swap -w 20% -c 10%
Avviamo quindi il servizio:
# service nrpe start
Se tra la macchina remota e il server Nagios c’è un firewall, bisogna aprire la porta TCP 5666 necessaria a Nagios per comunicare con la macchina da monitorare.
3. TESTARE LA COMUNICAZIONE
Per verificare che Nagios riesca a comunicare con il daemon NRPE nella macchina remota, da Nagios lanciamo il comando:
# /usr/lib/nagios/plugins/check_nrpe -H IP_MacchinaRemota
![]()
Per verificare manualmente che il sistema funzioni, proviamo a controllare lo stato della partizione di ROOT della macchina remota:
# /usr/lib/nagios/plugins/check_nrpe -H IP_MacchinaRemota -c check_hda3
![]()
Verificato che il plug-in funziona correttamente, andiamo a definire il comando in Nagios.
4. CONFIGURARE NAGIOS
Una volta configurati i parametri nel file di configurazione di NRPE, non ci resta che editare il file /etc/nagios/commands.cfg per definire il comando per l’utilizzo del plug-in da parte di Nagios:
define command {
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
Impostando ad esempio il comando per la verifica dello stato della partizione di ROOT della macchina remota, Nagios è adesso in grado di visualizzare lo stato corrente ed eventualmente generare un alert al presentarsi di un problema.
![]()
Adesso siamo in grado di monitorare i parametri che più ci interessano delle macchine remote Linux presenti nella rete.

Subscribe to the RSS feed and have all new posts delivered straight to you.

Articolo ben scritto compliemnti