Una volta installato Icinga, è possibile monitorare il sistema tramite interfaccia web; per impostazione predefinita è limitato al monitoraggio della macchina locale su cui è installato Icinga. Se desideri monitorare il box remoto Linux o il box Windows, devi avere il plug-in Nagios e il componente aggiuntivo NRPE installati sul box remoto. Una volta installato il plugin e il componente aggiuntivo, è necessario configurare il server Icinga per raccogliere le informazioni dalla macchina remota e visualizzarle sull'interfaccia web.
Se devi ancora installare Icinga; visita il post di Installazione di Icinga su Centos 7. Il monitoraggio del sistema Linux remoto include i 6 passaggi
Host remoto Icinga:
- Aggiungi account utente
- Scarica e installa il plug-in Nagios
- Installa il componente aggiuntivo NRPE
- Configura il componente aggiuntivo NRPE
Host server Icinga:
- Configura Icinga Server
- Monitoraggio macchina remota.
Host remoto Icinga:
Installa i pacchetti richiesti.
yum install gcc cpp glibc-devel glibc-headers kernel-headers libgomp libmpc mpfr make openssl* xinetd
Aggiungi account utente:
Prima di procedere con l'installazione, crea un nuovo utente a nome “icinga” e assegnagli una password.
useradd icinga
Imposta la password.
passwd icinga
Scarica e installa il plug-in Nagios:
Scarica i plug-in Nagios sull'host remoto utilizzando il comando seguente (Per l'ultima versione, visita il sito Web di Nagios)
cd /tmp wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
Estrai il tarball dei plugin di Nagios.
tar -zxvf /tmp/nagios-plugins-2.0.3.tar.gz cd /tmp/nagios-plugins-2.0.3
Compila e installa il plugin.
./configure --prefix=/usr/local/icinga --with-cgiurl=/icinga/cgi-bin --with-nagios-user=icinga --with-nagios-group=icinga make make install
Modifica l'autorizzazione della directory del plug-in nagios sull'host remoto.
chown icinga:icinga /usr/local/icinga/ chown -R icinga:icinga /usr/local/icinga/libexec/
Scarica e installa il componente aggiuntivo NRPE:
Visita la pagina di download di Nagios e scarica il componente aggiuntivo NRPE.
cd /tmp wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
Una volta scaricato, estrai la sfera di catrame.
tar -zxvf /tmp/nrpe-2.15.tar.gz cd /tmp/nrpe-2.15
Compilalo.
./configure --with-nagios-user=icinga --with-nagios-group=icinga --with-nrpe-group=icinga --with-nrpe-user=icinga --prefix=/usr/local/icinga make all make install-plugin make install-daemon make install-daemon-config make install-xinetd
Configura componente aggiuntivo NRPE:
NRPE fa parte del demone xinetd, modifica il file di configurazione NRPE per accettare la connessione dal server Nagios, modifica il file /etc/xinetd.d/nrpe.
vi /etc/xinetd.d/nrpe
Aggiungi l'indirizzo IP del server Nagios come di seguito.
only_from = 127.0.0.1 192.168.12.151
Aggiungi la porta NRPE alla fine del file /etc/services.
nrpe 5666/tcp # NRPE
Riavvia il servizio Xinetd.d.
systemctl restart xinetd.service
Conferma che l'ascolto NRPE.
netstat -at | grep 5666 tcp6 0 0 :::5666 :::* LISTEN 26780/xinetd
Confermare il funzionamento NRPE.
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 NRPE v2.15
Modifica file di configurazione NRPE:
Modificare /usr/local/icinga/etc/nrpe.cfg sull'host remoto, contiene l'argomento del comando per controllare il servizio sull'host remoto. Il file nrpe.cfg contiene i comandi di base per controllare i servizi remoti, di seguito sono riportate le righe di comando per controllare il carico della cpu e il processo in esecuzione. Check_load e check_total_procs devono essere inseriti nel file modello sull'host del server per consentire il monitoraggio.
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
Nel comando precedente -w sta per avviso mentre -c sta per avviso critico. Ad esempio, se esegui il secondo comando sul terminale, verificherà il processo in esecuzione; avviserà quando il processo è superiore a 150 o segnalerà critico quando il processo è superiore a 200 e allo stesso tempo dirà OK se il processo è inferiore a 150.
/usr/local/icinga/libexec/check_procs -w 150 -c 200 PROCS OK: 17 processes | procs=17;150;200;0;
Cambia avviso su 15 e critico su 150 a scopo di test, poiché il processo in esecuzione sul server è molto inferiore. Ora puoi vedere il messaggio di avviso, in base alle tue esigenze puoi modificarlo.
/usr/local/icinga/libexec/check_procs -w 15 -c 200 PROCS WARNING: 17 processes | procs=17;15;200;0;
Host server Icinga:
Sul server Icinga dobbiamo avere il componente aggiuntivo NRPE installato e il modello dell'host remoto.
Installa il componente aggiuntivo NRPE:
Visita la pagina di download di Nagios e scarica il componente aggiuntivo NRPE.
cd /tmp wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
Una volta scaricato, estrai la sfera di catrame.
tar -zxvf /tmp/nrpe-2.15.tar.gz cd /tmp/nrpe-2.15
Compilalo.
./configure --with-nagios-user=icinga --with-nagios-group=icinga --with-nrpe-group=icinga --with-nrpe-user=icinga --prefix=/usr/local/icinga make all make install-plugin
Configura il server Nagios:
Ora è il momento di configurare il server Icinga per monitorare il client remoto, dovrai creare una definizione di comando in uno dei tuoi file di configurazione dell'oggetto Icinga per utilizzare il plug-in check_nrpe. Modifica il file command.cfg.
vi /usr/local/icinga/etc/objects/commands.cfg
Aggiungi la seguente definizione di comando al file.
# .check_nrpe. command definition define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$ }
Creare il nuovo file di configurazione (/usr/local/icinga/etc/objects/remote.cfg) per definire l'host e la definizione del servizio. È possibile utilizzare il seguente modello, modificare in base alle proprie esigenze. Quanto segue è configurato per visualizzare il carico della CPU, lo spazio su disco, gli utenti correnti. ecc.,
define host{ use linux-server host_name remote.itzgeek.com alias Client 1 address 192.168.12.102 } define hostgroup{ hostgroup_name Linux Client alias Linux Client 1 members remote.itzgeek.com } define service{ use local-service host_name remote.itzgeek.com service_description Root Partition check_command check_nrpe!check_hda1 } define service{ use local-service host_name remote.itzgeek.com service_description Current Users check_command check_nrpe!check_users } define service{ use local-service host_name remote.itzgeek.com service_description Total Processes check_command check_nrpe!check_total_procs } define service{ use local-service host_name remote.itzgeek.com service_description Current Load check_command check_nrpe!check_load }
Aggiungi il nuovo template nel file di configurazione icinga.cfg, in modo che legga le nuove voci.
vi /usr/local/icinga/etc/icinga.cfg
Aggiungi sotto la riga.
# Definitions for monitoring the Remote (Linux) host cfg_file=/usr/local/icinga/etc/objects/remote.cfg
Riavvia il server icinga.
/etc/init.d/icinga restart
Monitoraggio della macchina remota:
Ora accedi all'interfaccia web e inizia a monitorare. Lo screenshot seguente mostra il server Linux remoto con il servizio predefinito disponibile.
È tutto. Ora puoi monitorare facilmente la macchina remota con Icinga.