• Skip to main content
  • Skip to primary sidebar
  • Skip to footer

A Bit of History

Informatica Semplice per Tutti

You are here: Home / Linux / Come Monitorare un Server Linux con Nagios

Aggiornato il 7 Maggio 2020 da A Bit of History

Come Monitorare un Server Linux con Nagios

Indice

  • Lato Server
  • Lato Client
  • Configurare il client
  • Configurare Server

Una volta installato Nagios, risulta molto semplice fare il check dei servizi. Una delle domande più diffuse è se esiste un modo per monitorare, su server Remoti, i processi, lo spazio dei dischi, utenti ecc.. E bene si!!! Esiste un modo utilizzando un plugin di nagios, check_nrpe, che ci permette di monitorare tutto ciò!! Vediamo come installarlo e configurarlo sul Server Nagios e su un server guest!!!

Lato Server

Scarichiamo e installiamo il plugin NRPE sul server Nagios
$ wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz
$ tar xvfz nrpe-2.12.tar.gz && cd nrpe-2.12
$ ./configure
$ make all
$ make install-plugin

Completata l’installazione del plugin creiamo il comando personalizzato nel file di configurazione command.cfg, aggiungendo alla fine del file

# command check_nrpe
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

Salviamo il file di configurazione e testiamo la configurazione con il comando
$ nagios -v /etc/nagios/nagios.cfg

Lato Client

Installiamo le dipendenze del plugin
$ yum install gcc glibc glibc-common openssl-devel

Creiamo l’utente nagios e relativa password
$ adduser nagios
$ passwd nagios

Scarichiamo e installiamo i plugins di nagios e il plugin NRPE per creare il demone
$ wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar.gz
$ tar xvzf nagios-plugins-1.4.11.tar.gz
$ cd nagios-plugins-1.4.11
$ export LDFLAGS=-ldl
$ ./configure –with-nagios-user=nagios –with-nagios-group=nagios –enable-redhat-pthread-workaround
$ make
$ make install
$ chown nagios.nagios /usr/local/nagios
$ chown -R nagios.nagios /usr/local/nagios/libexec/
$ cd ..
$ wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz
$ tar xvfz nrpe-2.12.tar.gz
$ cd nrpe-2.12
$ ./configure
$ make all
$ make install-daemon
$ make install-daemon-config
$ make install-xinetd
$ make install-plugin

A questo punto tutto è pronto per essere configurato. Possiamo scegliere se utilizzarare xinted per avviare il demone nrpe opuure lanciarlo manualmente da riga di comando.

Avvio manuale a riga di comando
Aggiungere al file /etc/rc.local la riga:
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
per avviarlo
$ /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

Usare Xinetd
lanciare
$ echo “nrpe 5666/tcp” >> /etc/services
editate il file /etc/xinetd.d/nrpe con l’editor preferito e aggiungere alla riga
only_from = 127.0.0.1
l’ip del server Nagios, (ad esempio 10.30.0.45) in questo modo:
only_from = 127.0.0.1 10.30.0.45
salvate e avviate xinetd.

Configurare il client

Il File di configurazione della macchina da monitorare è
/usr/local/nagios/etc/nrpe.cfg

La configurazione è molto semplice e commentata. Facciamo un esempio
Se vogliamo controllare una partizione la riga da aggiungere sotto a quelle di default è
command[check_opt]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /opt

In questo caso verrà generato un messaggio di Warning se lo spazio rimanente sul disco è del 20% e un Critical se lo spazio rimanente è del 10%.
Come potrete notate il nome del comando personalizzato è “check_opt” che dovrà essere utilizzato, come vedremo a breve, sul server Nagios.

Per i server remoti che non fanno parte della propria Lan dobbiamo modificare anche la direttiva
allowed_hosts=
aggiungendo l’ip del server Nagios (IP pubblico), questo eviterà l’errore
CHECK_NRPE: Error – Could not complete SSL handshake.

Configurare Server

Aggiungiamo il comando check_nrpe al template dei comandi editando il file di configurazione
/usr/local/nagios/etc/objects/commands.cfg

e aggiungendo le righe
# check_nrpe
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

a questo punto non ci rimane che aggiungere al template dove abbiamo definito il server da controllare il servizio. Ad esempio se vogliamo controllare la partizione “/opt” come nell’esempio fatto sopra, dobbiamo aggiungere
define service{
use local-service
host_name server1
service_description /opt Partition
check_command check_nrpe!check_opt
}

come noterete nella stringa
check_command check_nrpe!check_opt
è definito il comando che abbiamo personalizzato sul server da monitorare.

Filed Under: Linux

About A Bit of History

Previous Post: « SMTP – Guida su Come Funziona
Next Post: Come Effettuare Chiamate Anonime »

Primary Sidebar

Categorie

  • Grafica
  • Guida
  • Linux
  • Windows

Footer

Informazioni

  • Contatti