Configurare Nagios con Nconf

Galleria: 
Configurare Nagios con Nconf

Nagios

Struttura directory

La configurazione di Nagios nei sistemi “Debian like” è posizionata in /etc/nagios3 o /etc/nagios4
In queto esempio utilizzeremo per comodità Nagios3, le configurazioni sono comunque compatibili con la versione superiore

Nella /etc/nagios3/conf.d/ possiamo trovare gli host di esempio
Le configurazioni dei plugin di monitoraggio proprie di Nagios in /etc/nagios-plugins/config
Tutto questo è definito nel file principale: /etc/nagios3/nagios.cfg

Nagios carica le definizioni nelle directory in modo ricorsivo di host, commands, timeperiod ecc. presenti

Feature disponibili

Parte delle feature disponibili in Nagios Core includono:

  • Monitoring dei servizi di rete (SMTP, POP3, HTTP, NNTP, PING, etc.)
  • Monitoring delle risorse degli host (processor load, disk usage, etc.)
  • Plugin di monitoraggio
  • Abilità di definire una gerarchia di usando i parent
  • Notifiche
  • Interfaccia web opzionale per vedere gli stati e i problemi

Nconf

Nconf è un interfaccia web dedicata alla creazione delle configurazioni di Nagios.
Tramite Nconf possiamo definire host, servizi, gruppi, periodi di notifica, utenti, check e template, testare eventuali errori di configurazione e effetturare il deploy della configurazione su un server Nagios in maniera sicura e senza il bisogno di riavviare il servizio.
E’ inoltre possibile visualizzare uno storico delle modifiche effettuate e
Tramite l’utilizzo e l’applicazione di template e gruppi di host è possibile applicare in maniera automatica tutte le proprietà dei template a tutti i membri del gruppo

Aggiungere un host

Tramite Nconf possiamo visualizzare gli host presenti e aggiungerne di nuovi, proviamo ad esempio a aggiungere google.com con l’indirizzo 8.8.8.8
Clicchiamo Host add, definiamo l’hostname (in questo caso google.com), l’address (8.8.8.8), utilizziamo l’host preset “generic-switch” e il max check attempts che definisce quanti check effettuare prima di cambiare lo stato dell’host
A questo punto possiamo fare il submit dell’host.
Ci verrà richiesto se aggiungere dei servizi collegati che per ora non utilizzeremo
L’host è pronto necessita di essere caricato nella configurazione di Nagios

Deploy

Si occupa di verificare la configurazione e di fare il reload nel nostro server Nagios
Per prima cosa generiamo la configurazione tramite l’apposito link sulla barra principale.
Nella pagina che si aprirà vedremo un box nel quale è presente il syntax check che ci riporta eventuali errori e warning
Controllati questi errori e warning potremo rendere operativa la configurazione e visualizzare gli host e i servizi sul nostro server di monitoraggio

Priorità applicazione template

La seguente sequenza illustra l’ordine di precendenza degli attributi applicati agli host (lo stesso ordine si applica ai servizi):

  1. La priorità più alta si ha negli attributi definiti nel host o nel servizio direttamente
  2. Attributi deifniti in una template che è direttamente linkata a un host o a un servizio
  3. Attributi definiti in una template linkata a un servizio tramite il 'checkcommand'
  4. Attributi definiti in una template linkata a un a host o serivizio tramite il 'notification_period'
  5. Attributi definiti in una template linkata a un a host o serivizio tramite il 'check_period'
  6. Attributi definiti in una template linkata a un a host o serivizio tramite un collector / monitor, (in situazioni di monitoraggio distribuito)

Template

Tramite le template possiamo definire degli “standard” da applicare agli host con caratteristiche simili come ad esempio linux-server, che applica un intervallo di check ogni 5 minuti, la notifica durante le workhours e il check-host-alive

Checkcommands

In questa sezione troviamo i plugin di monitoraggio, che si occuperanno di effettuare fisicamente il test sull’host specificato nella configurazione.
Sono presenti alcuni già specificati in questo caso 19 ed è possibile definirne altri tramite l’interfaccia.
In Debian e Ubuntu sono situati in:
/usr/lib/nagios/plugins
I plugin utilizzati vengono richiamati da questa cartella dalle impostazioni di Nagios.

Services

I servizi ci permettono di definire il tipo di check da utilizzare, dargli un nome, definire l’intervallo fra un test e l’altro e i parametri del check, questo poi sarà applicato a un host da monitorare

Servicegroups

Sono unità logiche nelle quali suddividere gli host, ad esempio web-services tutti quegli host che hanno un check_http

Contacts e Contactgroups

In questa sezione possiamo definire contatti e gruppi di contatti a cui notificare i failure di servizi e host.

Parents

Per evitare notificazioni doppie o multiple, è possibile definire dei parent (genitori) in modo da avere la notifica solo del nodo superiore nel caso questo impedisca di raggiungere il sottostante in una struttura ad albero