Monitoraggio di altri sistemi con Nagios attraverso NRPE

From RVM Wiki
Jump to navigation Jump to search

Se un sistema è raggiungibile direttamente (ip pubblico o portmap), si può monitorare in una istanza esterna di Nagios, tramite il plugin NRPE: Nagios Remote Plugin Executor.

Per windows è disponibile il servizio NSClient++ (Vedi Riferimenti)

Configurazione del client da monitorare

  • Installare il server di esecuzione dei plugins ed i plugins
sudo apt-get install nagios-nrpe-server nagios-plugins

Il server ha un demone che ascolta sulla porta 5666: impostare firewal e portmapping di conseguenza.

  • Verificare la raggiungibilità tramite un telnet dal server nagios che dovrà monitorare questo client
user@nagios-server$ telnet host.da.monitorare 5666
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.






Connection closed by foreign host.
  • Configurare i servizi da monitorare.
sudoedit /etc/nagios/nrpe_local.cfg

Per monitorare lo spazio libero sulla partizione /, inserire:

command[check-disk-root]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /

Se si vuole monitorare anche l'aggiornamento dei pacchetti:

command[check-apt]=/usr/lib/nagios/plugins/check_apt

Di default sono già inseriti questi in /etc/nagios/nrpe_local.cfg:

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_disk1]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /dev/hda1
command[check_disk2]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /dev/hdb1
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

Verificare che i plugin usati funzionino in locale, esempio:

sudo -u nagios /usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /
DISK OK - free space: / 24915 MB (35% inode=90%);| /=44585MB;73200;73210;0;73220
sudo -u nagios /usr/lib/nagios/plugins/check_apt
APT OK: 0 packages available for upgrade (0 critical updates).

Riavviare il demone nrpe:

sudo /etc/init.d/nagios-nrpe-server restart
  • Ora i plugin definiti sono richiamabili da remoto dal server nagios.

Configurazione del Server Nagios

Il server Nagios contatterà il demone NRPE del client tramite il plugin check_nrpe, eseguendo uno dei comandi predecedentemente definti nella configurazione del client.

  • Installazione del plugin nrpe
sudo apt-get install nagios-nrpe-plugin
  • Testare il plugin con il comando già definito sul client da monitorare per lo spazio su disco:
sudo -u nagios /usr/lib/nagios/plugins/check_nrpe -H fire.rvmgroup.it -c check-disk-root
DISK OK - free space: / 24915 MB (35% inode=90%);| /=44585MB;73200;73210;0;73220

e quello per Apt:

sudo -u nagios /usr/lib/nagios/plugins/check_nrpe -H fire.rvmgroup.it -c check-apt
  • Definire il comando da usare per il plugin check_nrpe:
sudoedit /etc/nagios/misccommands.cfg

inserire:

define command{
        command_name    check-nrpe
        command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }
  • Dopo aver definito l'host remoto, aggiungere il servizio remoto da monitorare. Se l'host remoto non è pingabile, inserire localhost come ip, oppure non monitorarne lo stato ed usare il plugin check_dummy.
sudoedit /etc/nagios/services.cfg

inserire (notare il -, non il _)

Per il plugin check_disk:

define service{
        use                             generic-service
        host_name                       fire.rvmgroup.it
        service_description             DISK
        check_command                   check-nrpe!check-disk-root
        }

Per il plugin check_apt:

define service{
        use                             generic-service
        host_name                       fire.rvmgroup.it
        service_description             APT
        check_command                   check-nrpe!check-apt
        }
  • Verificare la configurazione:
sudo nagios -v /etc/nagios/nagios.cfg
  • Riavviare nagios
sudo /etc/init.d/nagios restart

Riferimenti