Nagios: monitoraggio infrastruttura IT: differenze tra le versioni

Revisione, aggiunto paragrafo contatti, menu riorganizzato - la guida e' ancora da completare
(Prima pubblicazione - da completare)
 
(Revisione, aggiunto paragrafo contatti, menu riorganizzato - la guida e' ancora da completare)
Riga 1: Riga 1:
{{stub}}
{{stub}}
{{Versioni compatibili|Squeeze|Lenny}}
{{Versioni compatibili|Squeeze|Lenny}}
== Introduzione ==
== Introduzione ==
[http://www.nagios.org Nagios] è un sistema di monitoraggio che
[http://www.nagios.org Nagios] è un sistema di monitoraggio che
consente di identificare e risolvere eventuali problematiche di
consente di identificare e risolvere eventuali problematiche di
un'infrastruttura IT prima che possano avere conseguenze negative.
un'infrastruttura IT prima che possano avere conseguenze negative.
Nagios è in grado di monitorare apparati di rete, sistemi e servizi, inoltre
Nagios è in grado di monitorare apparati di rete, sistemi e servizi; inoltre
il sistema dei plugin lo rende versatile ed adattabile ad ogni esigenza di
il sistema dei plugin lo rende versatile ed adattabile ad ogni esigenza di
monitoraggio, infatti è possibile scrivere plugin personalizzati.
monitoraggio, infatti è possibile anche scrivere plugin personalizzati.


Di Nagios esiste una versione enterprise chiamata [http://www.nagios.com/products/nagiosxi Nagios XI]
Esistono una versione enterprise chiamata [http://www.nagios.com/products/nagiosxi Nagios XI]
che offre un sistema di monitoraggio completo e già costruito ed una versione
che offre un sistema di monitoraggio completo e già costruito ed una versione
[http://www.nagios.org/download/core Nagios Core] che costituisce la base su
[http://www.nagios.org/download/core Nagios Core] che costituisce la base su
cui fondar il proprio sistema di monitoring. In Debian 'squeeze' è disponibile la
cui fondare il proprio sistema di monitoring. In Debian 'squeeze' è disponibile la
versione 'Core' nel pacchetto <code>nagios3</code>.
versione 'Core' nel pacchetto <code>nagios3</code>.


== Installazione ==
== Installazione ==
Come anticipato nell'[[#Introduzione]], installiamo Nagios in una Debian
Come anticipato nell'[[#Introduzione|Introduzione]], installiamo Nagios in una Debian
'squeeze'.
'squeeze'.


Riga 54: Riga 55:


== Configurazione ==
== Configurazione ==
Esistono due modi per configurare un'installazione Nagios:
Esistono due modi di configurare un'installazione Nagios:
# editare i file di configurazione siti in <code>/etc/nagios3</code>
# editare i file di configurazione siti in <code>/etc/nagios3</code>
# utilizzare uno strumento per la configurazione
# utilizzare uno strumento per la configurazione
L'installazione appena effettuata non offre alcuno strumento di configurazione
L'installazione appena effettuata non offre alcuno strumento di configurazione
e Debian offre poco in tal senso: solo [http://www.djagios.org djagios] che
e tra i pacchetti Debian troviamo solo [http://www.djagios.org djagios] che
non raccomanderei, almeno all'attuale stato di sviluppo.
non raccomanderei, almeno all'attuale stato di sviluppo.


Riga 66: Riga 67:
* [http://www.nconf.org NConf]
* [http://www.nconf.org NConf]


In questa guida ci si riferirà a ''NagiosQL'' e alla modifica diretta dei file
In questa guida ci si riferirà a ''NagiosQL'' ed alla modifica diretta dei file
di configurazione.
di configurazione.


= Editare i file di configurazione =
=== Editare i file di configurazione ===
I file di configurazione si trovano in <code>/etc/nagios3</code>:
I file di configurazione si trovano in <code>/etc/nagios3</code>:


Riga 95: Riga 96:


Oltre a questi file è presente la directory <code>conf.d</code> in cui è
Oltre a questi file è presente la directory <code>conf.d</code> in cui è
contenuta la configurazione dell'host di esempio <code>localhost</code> e si
contenuta la configurazione dell'host di esempio <code>localhost</code> che si
trova nel file: <code>localhost_nagios2.cfg</code>.
trova nel file: <code>localhost_nagios2.cfg</code>.


Riga 115: Riga 116:
</pre>
</pre>


Le definizioni sono autoesplicative, tuttavia si noti la direttiva <code>use</code>
Le definizioni sono autoesplicative, tuttavia si noti che la direttiva <code>use</code>
indica i ''template'' a cui fare riferimento: <code>generic-host</code> per gli
indica i ''template'' a cui fare riferimento: <code>generic-host</code> per gli
host e <code>generic-service</code> per i servizi. I ''template'' specificano
host e <code>generic-service</code> per i servizi. I ''template'' specificano
Riga 125: Riga 126:
argomenti separati da <code>!</code> indicano rispettivamente la soglia di
argomenti separati da <code>!</code> indicano rispettivamente la soglia di
''warning'' e di condizione ''critical''. Ci si aspeterebbe che il comando fosse
''warning'' e di condizione ''critical''. Ci si aspeterebbe che il comando fosse
definit nel file <code>/etc/nagios3/commands.cfg</code>, ma in Debian i comandi
definito nel file <code>/etc/nagios3/commands.cfg</code>, ma in Debian i comandi
relativi ai plugin installati sono definiti all'interno della directory
relativi ai plugin installati sono specificati all'interno della directory
<code>/etc/nagios-plugins/config</code>.
<code>/etc/nagios-plugins/config</code>.


= Aggiungere un host =
==== Aggiungere un host ====
Supponiamo di voler monitorare un router, per aggiungere il nuovo host è
Supponiamo di voler monitorare un router; per aggiungere il nuovo host è
sufficiente creare un nuovo file all'interno della directory <code>conf.d</code>
sufficiente creare un nuovo file all'interno della directory <code>conf.d</code>
ad esempio <code>myrouter.cfg</code>.
ad esempio <code>myrouter.cfg</code>.
Riga 143: Riga 144:
</pre>
</pre>


= Aggiungere un servizio =
==== Aggiungere un servizio ====


Non ha senso controllare lo spazio disco di un router, invece monitoriamo il
Non ha senso controllare lo spazio disco di un router, invece monitoriamo il
router tramite un servizio <code>PING<code>. Supponendo di non conoscere quale
router tramite un servizio <code>PING</code>. Supponendo anche di non conoscere
comando utilizzare, controlliamo all'interno della directory
quale comando utilizzare, controlliamo all'interno della directory
<code>/etc/nagios-plugins/config</code> per notare il file <code>ping.cfg</code>:
<code>/etc/nagios-plugins/config</code> per notare il file <code>ping.cfg</code>:


Riga 210: Riga 211:
</pre>
</pre>


per qualsiasi plugin che possa essere utile. Ritornando all'esempio, aggiungere
È utile farlo per qualsiasi plugin che possa essere utile. Ritornando
al file /etc/nagios3/conf.d/myrouter.cfg:
all'esempio, aggiungere al file /etc/nagios3/conf.d/myrouter.cfg:


<pre>
<pre>
Riga 221: Riga 222:
         }
         }
</pre>
</pre>
 
==== Aggiungere gruppi ====
Definiamo un nuovo gruppo in cui inserire tutti gli apparati di rete modificando
Definiamo un nuovo gruppo in cui inserire tutti gli apparati di rete modificando
il file <code>/etc/nagios3/conf.d/hostgroups_nagios2.cfg</code>:
il file <code>/etc/nagios3/conf.d/hostgroups_nagios2.cfg</code>:
Riga 237: Riga 238:
web di Nagios.
web di Nagios.


==== Modificare i contatti ====
I contatti definiscono le risorse a cui inviare gli avvisi, in modo che le eventuali
problematiche siano prese in gestione e risolte. Il file <code>/etc/nagios3/conf.d/contacts_nagios2.cfg</code>
contiene la definizione dei contatti.
<pre>
define contact{
        contact_name                    root
        alias                          Root
        service_notification_period    24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r
        host_notification_options      d,r
        service_notification_commands  notify-service-by-email
        host_notification_commands      notify-host-by-email
        email                          root@localhost
        }
</pre>
In questo caso gli alert relativi ai servizi e agli host sono inviati via email 24x7 a root@localhost. Gli avvisi sono inviati quando un servizio si trova in stato di <code>WARNING</code>, <code>UNKNOWN</code>, <code>CRITICAL</code> e <code>RECOVERY</code> o quando un host si trova in stato di <code>DOWN</code> o <code>RECOVERY</code>.
==== Applicazione della nuova configurazione ====
Ora è necessario ricaricare la configurazione, ma prima è opportuno controllare
Ora è necessario ricaricare la configurazione, ma prima è opportuno controllare
di non avere introdotto errori di configurazione:
di non avere introdotto errori di configurazione:
57

contributi