Munin per monitorare le risorse

Munin è un progetto decisamente interessante per la sua semplicità d’uso, d’installazione e configurazione e per la sua versatilità. Di cosa si tratta? Di un sistema per monitorare le risorse utilizzate dalla (o dalle) vostre macchine quali:

  • CPU
  • Disco
  • Rete
  • Servizi vari (MySQL, Dovecot, Apache, …)

Ha un architettura di tipo client/server dove abbiamo un Master il quale raccoglie e mostra attraverso grafici generati con RRDTool i dati provenienti da uno o più nodi (che chiaramente posso essere distribuiti su macchine diverse).

muninVediamo ora una semplice configurazione di Munin prendendo come requisiti per il nostro sistema i seguenti punti:

  • Piattaforma Debian 5.0 (Lenny) ma dovrebbe funzionare anche su versioni precedenti
  • Master e nodo sono la stessa macchina

Procediamo con l’installazzione dei pacchetti necessari a far funzionare il servizio, per installare munin utilizzate il seguente comando:

apt-get install munin

Se volete avere un elenco più preciso di quello che sta per fare mettete l’opzione -s al comando e vedrete quali pacchetti verranno installati (e quali potrebbe essere interessante aggiungere, suggested). L’installazione provvederà anche ad attivare il servizio.

A questo punto il Master ed il Nodo sono sulla stessa macchina ma non viene ancora monitorizzato nessun servizio, periferica o quantaltro. Procediamo quindi con la configurazione dei servizi che riteniamo opportuno monitorare. La seguente istruzione

munin-node-configure --suggest

stampa un elenco di plugin attivabili sul nostro server in base alla configurazione, disponibilità, …

apache_volume              | no   | [LWP::UserAgent not found]
courier_mta_mailqueue      | no   | [spooldir not found]
courier_mta_mailstats      | no   | [could not find executable]
courier_mta_mailvolume     | no   | [could not find executable]
cpu                        | no   | yes
cupsys_pages               | no   | [could not find logdir]
df                         | no   | yes
df_inode                   | no   | yes

Dove i campi rappresentano il nome, se è attiva ed eventuali note (attivabile, errori, …). Una volta configurato il sistema per essere compatibile con le nostre esigenze di monitoraggio possiamo eseguire il seguente comando:

munin-node-configure --suggest --shell

attraverso il quale abbiamo l’elenco delle istruzione da eseguire (tramite copia/incolla) per attivare le plugin.

ln -s /usr/share/munin/plugins/cpu /etc/munin/plugins/cpu
ln -s /usr/share/munin/plugins/df /etc/munin/plugins/df
ln -s /usr/share/munin/plugins/df_inode /etc/munin/plugins/df_inode
ln -s /usr/share/munin/plugins/entropy /etc/munin/plugins/entropy
ln -s /usr/share/munin/plugins/forks /etc/munin/plugins/forks
ln -s /usr/share/munin/plugins/if_ /etc/munin/plugins/if_eth0
ln -s /usr/share/munin/plugins/if_err_ /etc/munin/plugins/if_err_eth0

Questo non fa altro che generare un link sombolico della plugin in /usr/share/munin/plugins in /etc/munin/plugins ed è poi possibile configuare ulterioremente il comportamento in :/etc/munin/plugin-conf.d

Una volta configurato riavviamo il servizio cosi da ricaricare la configurazione e le diverse plugin, a questo punto i dati vengono registrati:

/etc/init.d/munin-node restart

Il servizio è ora attivo e funzionante, è possibile (e auspicabile) però ad esempio implementare un meccanismo di sicurezza sull’accesso (attraverso IP o autenticazione) alle statistiche.

Se si vogliono monitorare dati di applicazioni o servizi al momento non implementati si può verificare se è disponibile una plugin per questo al seguente indirizzo:

Link interessanti:

Lascia un commento

*