Munin è un software opensource che permette di monitorare e graficare i server in modo molto dettagliato.
Progettato per essere estremamente flessibile, le sue funzionalità sono facilmente estendibili tramite plugin. Grazie a questo software si può monitorare praticamente tutto, dall’hardware (Cpu, Ram, Disco), al software (apache, php, mysql, postfix) passando per l’utilizzo della rete e per lo stato del sistema operativo.
Sviluppato con architettura client-server ed è formato da due componenti:
– il client che campiona i dati sul server in relazione ai plugin installati;
– il server che recupera sistematicamente i dati dal client e sulla base di questi ne crea i grafici.
Grazie a questa architettura è possibile installare il client ed il server su macchine differenti ed avere più client collegati al medesimo server.
La seguente guida è riferita a Debian 8 ma è possibile installare i relativi pacchetti anche su altre distribuzioni.
Sul server dove sarà in esecuzione Munin è necessario avere un server web che possa fornire le pagine html generate da Munin, Apache e Nginx sono ottime soluzioni, se non è già installato è necessario farlo, in questa guida daremo come prerequisito Apache.
Per installare la componente server:
apt-get update && apt-get install -y munin
Una volta installato il server è possibile configurarlo.
Nel file /etc/munin/munin.conf decommentare le seguenti direttive:
dbdir /var/lib/munin htmldir /var/cache/munin/www logdir /var/log/munin rundir /var/run/munin
In modo da specificare quali saranno le directory su cui saranno rispettivamente il database del software, i file html generati, i log e il pid del processo.
A questo punto non ci resta che creare la directoy che conterrà i file html:
mkdir -p /var/cache/munin/www chown munin:munin /var/cache/munin/www
Configuriamo Apache affinchè il software sia protetto da username e password e quindi non accessibile direttamente all’esterno, creiamo il file .htpasswd
htpasswd -c /etc/munin/.htpasswd munin
Nel file /etc/apache2/conf-enabled/munin.conf impostiamo la seguente configurazione:
Alias /munin /var/cache/munin/www <Directory /var/cache/munin/www> AuthType Basic AuthName "Authentication Required" AuthUserFile "/etc/munin/.htpasswd" Require valid-user </Directory> ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph <Location /munin-cgi/munin-cgi-graph> Require local <IfModule mod_fcgid.c> SetHandler fcgid-script </IfModule> <IfModule !mod_fcgid.c> SetHandler cgi-script </IfModule> </Location>
Dopo aver avviato Apache, avremo il software configurato protetto da username e password.
Per accedere è possibile farlo via web digitando nel browser http://127.0.0.1/munin/ (Dove 127.0.0.1 è l’ip o l’hostname del nostro server).
Per installare il client:
apt-get update && apt-get install munin-node munin-plugins-extra
La configurazione del client è automatica, è sufficiente eseguire il comando:
munin-node-configure
Tale comando esegue l’autodiscovery di ciò che è possibile monitorare.
Nel file /etc/munin/munin-node.conf è possibile definire le configurazioni del client, in particolare deve essere specificato l’ip del server Munin che può accedere, in questo caso dato che client e server girano sulla stessa macchina la direttiva è:
allow ^127\.0\.0\.1$
Una volta editata la configurazione del client per riavviarlo:
/etc/init.d/munin-node restart
Dobbiamo adesso impostare sul server qual è il client che vogliamo monitorare, questo può essere definito nel file: /etc/munin/munin.conf . I dati da riportare sono sostanzialmente la label che vogliamo dare al client e l’indirizzo ip del client:
[servermunin.seeweb.it] address 127.0.0.1 use_node_name yes
Una volta configurato il client nel nostro server verranno campionati e graficati i dati.
Se vogliamo estendere le funzionalità di monitoraggio possiamo aggiungere dei plugin, oltre a quelli già presenti nei pacchetti dei sistemi operativi, se ne trovano molti altri, una buona base di partenza è http://munin-monitoring.org/wiki/plugins oltre che github.
I plugin sono nella directory /etc/munin/plugins/ mentre quelli non abilitati (ma già installati) sono in /usr/share/munin/plugins/ per attivarli è necessario copiarli (o creare un link) in /etc/munin/plugins/.
Riteniamo Munin uno strumento molto valido per il monitoraggio e ne cosigliamo vivamente l’installazione, può essere un valido aiuto per monitorate costantemente il carico del server, le attività ed i processi avendo uno storico su cui fare riferimento.
Articoli correlati:
- Come monitorare lo stato di salute del server
- Purge Cache WordPress automatico con Web Accelerator
- Server di posta con il Certificato SSL: guida all’uso
- Modulo mod_pagespeed per Nginx: rendi il tuo sito più veloce che mai!
- Ansible: introduzione alla Server Automation
- Cloud Server High Memory: pronte le istanze a memoria elevata
Una risposta