Aug 312011
 

Questa è la seconda e ultima parte del mio articolo sulla realizzazione di una soluzione di monitoraggio distribuito con Nagios, è possibile trovare la parte 1 qui

Configurazione Centrale

Ora sapete tutto quello che dovete sapere per impostare i controlli sui servizi del server slave e come inviare le informazioni dal server slave al master.

Un vantaggio di una configurazione master/slave è la possibilità di configurare centralmente tutti i nodi Nagios, sia master che slave. Ci sono molti modi per farlo.

Uno dei miei modi preferiti per la gestione distribuita di configurazione di Nagios è quello di usare un sistema di controllo di versione (VCS), come ad esempio SVN. In questa configurazione si memorizzano tutte le configurazioni sotto il VCS (che è una buona pratica in ogni caso, per mantenere i vostri file di configurazione con un numero di versione e una cronologia delle modifiche). Ed i vari siti Nagios hanno ciascuno le proprie directory dove mettere i propri file, vi suggerisco una configurazione di questo tipo:



/etc/nagios/conf.d/
                   master/
                   site1/
                   site2/
                   ...

In questo modo i responsabili di ogni sito sono in grado di gestire solo i propri file e di fare un commit sul repository principale una volta finito. È inoltre possibile aggiungere un hook (operazione automatica) a questa operazione per aggiornare tutti gli altri siti.

Questa configurazione funziona, ma è difficile da mantenere se molte persone lavorano su di essa, e si può incontrare problemi con i modelli ed i nomi degli oggetti che si potrebbero sovrapporre. Per mantenere una soluzione di questo tipo funzionante è necessario applicare una politica stringente alla configurazione, come richiedere l’uso del nome del dominio completo del server come un prefisso ad ogni nome dei check.

Un altro approccio è quello di utilizzare uno strumento di configurazione che può gestire più installazioni di Nagios, come NagiosQL , opcfg , o Nconf . Ho personalmente testato e utilizzato NagiosQL ( ho anche aiutato il progetto per la traduzione in italiano). Con esso (o con gli altri progetti), è possibile configurare i modelli, controlli e servizi per tutte le installazione di Nagios da un unico punto. NagiosQL supporta FTP e SCP per copiare i file da remoto, e mantiene tutte le configurazioni in un database MySQL .

Performance e Privacy

Ora siete a posto, avete dei server slave che riportano le informazioni al loro master. Si potrebbe pensare, “Ora dovrei visualizzare tutti i grafici delle prestazioni sul master in modo da poter controllare tutte le informazioni da un punto.” Anche io avevo questa idea, ma di solito questa soluzione vi porterà ad un disastro. Il vostro master è la macchina che aggrega tutti i controlli, così nella maggior parte dei casi la visualizzazione dei grafici rallenterà la macchina, fino a renderla inutilizzabile per il suo vero lavoro di reportistica e comunicazione degli allarmi. Invece, vi suggerisco di mantenere gli strumenti di prestazioni sulle macchine slave, perché ogni Nagios periferico avrà meno lavoro di quanto ha il master. In questo modo non dovrete preoccuparvi di inviare le informazioni sulle prestazioni al master. Ma io so, volete davvero tutte le informazioni sul master. Si può fare, ma per farlo bene dovete pensare a cose come l’ottimizzazione del disco, utilizzando un disco RAM, e parallelizzare i processi – argomenti oltre la portata di questo articolo.

È possibile installare uno qualsiasi dei diversi plugin per monitorare le prestazioni sui server slave. Alcuni dei più comuni sono PNP4Nagios , nagiosgraph e n2rrd .

Come ho detto prima, avendo più installazioni Nagios può anche aiutare con la privacy. È possibile definire i contatti sul master, in questo modo si può vedere dal web tutte le informazioni provenienti dai diversi slave. In alternativa, è possibile definire un contatto solo su un server slave in questo caso saranno in grado di vedere solo i servizi ivi definiti.

L’impostazione di una soluzione di monitoraggio distribuita con Nagios, e utilizzando strumenti e plugin per rendere il vostro compito più facile, può dare molti vantaggi, ma è necessaria una pianificazione accurata ed una policy aziendale rigorosa per il personale che gestisce le configurazioni. Io suggerisco di usare uno strumento grafico di configurazione come NagiosQL che supporta i modelli, utilizzando i modelli rende più facile mantenere le cose in ordine.


Popular Posts:

Flattr this!

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)

*