Il pannello FlareVM già fornisce un servizio di monitoraggio di base dell’utilizzo delle risorse di sistema, che include le informazioni riguardanti l’utilizzo della rete, CPU e dischi nelle ultime 24 ore e 30 giorni. Anche se queste informazioni di base sono gia’ molto utili, ci sono casi in cui e’ necessario avere un quadro piu’ dettagliato delle risorse utilizzate dalla VPS. Per esempio, se si ha bisogno di monitorare l'utilizzo di memoria o il consumo di risorse a livello di singolo processo, e’ possibile utilizzare un tool come Munin.
Munin è uno strumento di monitoraggio che raccoglie le informazioni dal sistema e, tramite l’utilizzo di RRDTool, genera i relativi grafici di utilizzo. L'obiettivo primario del progetto Munin è quello di fornire uno strumento facile da usare, semplice da installare e configurare e che presenti le informazioni tramite una chiara e semplice interfaccia web. Munin permette anche di monitorare più "nodi" con tramite un’unica installazione.
Installazione di Munin
Assicurarsi di avere i pacchetti aggiornati:
apt-get update
apt-get upgrade
Munin e’ formato da due componenti: una componente master spesso definita semplicemente come "Munin", ed una componente “nodo”, o "munin-node", che raccoglie i dati e li inoltra al master. Munin-node è installato come una dipendenza del pacchetto munin. Se si ha la necessita’ di monitorare un solo sistema, sara’ allora sufficiente installare il pacchetto munin.
Per installare il pacchetto, eseguiamo il seguente comando:
apt-get install munin
Se abbiamo ulteriori sistemi che vogliamo monitorare tramite il master, allora su ognuno di essi eseguiamo:
apt-get install munin-node
Sulle macchine da monitorare e’ possibile eseguire qualunque distribuzione, quindi per installare munin dobbiamo utilizzare il relativo sistema di gestione dei pacchetti.
Configurazione di Munin
Configurazine del Master
Il file di configurazione master si trova in /etc/munin/munin.conf . Questo file è usato per impostare le direttive globali utilizzate da Munin, così come i dati relativi agli host da monitorare. Questo file è abbastanza complesso, quindi abbiamo scelto di mostrare solo le parti di interesse per questa guida. La configurazione di default e’ comunque adatta alla maggior parte dei sistemi.
La prima sezione del file contiene i percorsi delle cartelle usate da Munin. Quando effettuate la configurazione del server web, assicuratevi di indicare come doc root directory in percorso indicato da htmldir.
# Configfile for Munin master
dbdir /var/lib/munin/
htmldir /var/www/munin/
logdir /var/log/munin/
rundir /var/run/munin/
Ci sono direttive supplementari dopo la posizione del blocco directory come, ad
esempio, tmpldir , che indica a Munin dove cercare i modelli HTML, ed altri che consentono di configurare l'invio avvisi via email. Queste direttive aggiuntive sono spiegate in modo più approfondito sulla pagina del sito munin.conf Munin .
È inoltre possibile trovare delle veloci spiegazioni all'interno dello stesso file. Tali direttive globali devono essere definite prima degli host da monitorare.
L'ultima sezione del munin.conf definisce gli host da monitorare. Un host di esempio puo’ essere definito come di seguito:
File: /etc/munin/munin.conf
[test.org]
address test.org
Per configurazioni più complesse, leggiamo gli esempio forniti nello stesso file di configurazione, che riportiamo di seguito per comodita’:
File: /etc /munin/munin.conf
# From and including the first host, no more global directives can be defined.
# Everything after one host definition belongs to that host, until another host definition is found.
[foo.example.com] # Defines the group "example.com" and then
# "foo.example.com" under that group.
address localhost # The address (IP or host name) of the host, where munin-node is running.
[example.com;bar.example.com] # Same as above, but with an explicit definition.
# of the host's group.
address bar.example.com # The address.
df.contacts no # Don't warn Nagios (or whatever) if the 'df' plugin exceed warning values.
[Groupname;baz.example.com] # Associates the host baz.example.com to this group
address baz.example.com # The address of the host, where munin-node is running.
update no # Specifies that no services on this host should be updated by munin-update
Configurazione dei nodi
Il file /etc/munin/munin-node.conf contiene diverse variabili che possiamo modificare in base alle nostre preferenze.
Per una configurazione di base, e’ sufficiente aggiungere l'indirizzo IP del server master per mezzo di una regexp.
File: /etc/munin/munin-node.conf
# A list of addresses that are allowed to connect. This must be a
# regular expression, due to brain damage in Net::Server, which
# doesn't understand CIDR-style network notation. You may repeat
# the allow line as many times as you'd like
allow ^127\.0\.0\.1$
# Replace this with the master munin server IP address
allow ^3\.3\.3\.3$
La riga sopra indica al nodo che il server master Munin è situato all'indirizzo
IP 3.3.3.3 . Una volta aggiornato, riavviamo nel modo seguente:
/etc/init.d/munin-node restart
Interfaccia Web
È possibile utilizzare Munin con il server web di vostra scelta per accedere alle risorse create da Munin. Di default, queste risorse si trovano in /var/www/munin .
Se si utilizza il server HTTP Apache è possibile creare un Virtual Host nel modo seguente:
File: / etc/apache2/sites-available/munin.test.org
<VirtualHost 3.3.3.3:80>
ServerAdmin [email]webmaster@test.org[/email]
ServerName munin.test.org
DocumentRoot /var/www/munin
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
LogLevel notice
CustomLog /var/log/apache2/access.log combined
ErrorLog /var/log/apache2/error.log
ServerSignature On
</VirtualHost>
Attiviamo quindi il nuovo Virtual Host:
a2ensite munin.test.org
e riavviamo Apache:
/etc/init.d/apache2 restart