Monitoraggio di sistemi con Munin: Difference between revisions
No edit summary |
|||
| Line 39: | Line 39: | ||
Dopo 5 minuti si avrà il nuovo sistema online. | Dopo 5 minuti si avrà il nuovo sistema online. | ||
== | == Abilitazione di un plugin == | ||
* I plugin disponibili sono in | |||
/usr/share/munin/plugins | |||
* Comandi generici per i plugin: | |||
** ''autoconf'': dice se il plugin può funzionare | |||
** ''config:'' mostra i parametri configurabili | |||
** ''suggest'': mostra come può essere usato il plugin (ad esempio per i plugin che finiscono in "_" dice come è possibile richiamarli) | |||
Ipotizziamo di voler installare il plugin "squid_cache" | |||
* Verificare che il plugin possa essere installato: | |||
sudo /usr/share/munin/plugins/squid_cache autoconf | |||
Se la risposta è | |||
yes | |||
allora il plugin è installabile. | |||
Se invece si ottiene un errore, allora occorre indagare. | |||
Per esempio, è possibile leggere il sorgente del plugin, che di solito contiene istruzioni sul suo utilizzo. | |||
* Verificare se il plugin funziona, cioè se si ottengono dei dati: | |||
<pre> | |||
sudo /usr/share/munin/plugins/squid_cache | |||
Maximum.value 5120000 | |||
Current.value 3071472 | |||
</pre> | |||
Abilitare il plugin creando un link in /etc/munin/plugins: | |||
cd /etc/munin/plugins | |||
ln -s /usr/share/munin/plugins/squid_cache squid_cache | |||
Verificare anche che il plugin funzioni quando richiamato da munin: | |||
<pre> | |||
sudo munin-run squid_cache | |||
Maximum.value 5120000 | |||
Current.value 3071472 | |||
</pre> | |||
Riavviare munin-node per rendere attivo il nuovo plugin: | |||
sudo /etc/init.d/munin-node restart | |||
Forzare una lettura dei dati iniziale, per creare il grafico: | |||
sudo -u munin munin-cron | |||
Il nuovo grafico, magari vuoto, apparirà. | |||
'''ATTENZIONE:''' se il link al grafico in testa pagina è in '''ROSSO''', significa che il plugin associato ha dei problemi. | |||
== Modifica dei parametri soglia o di configurazione di un plugin == | |||
Identificare quale è il parametro da impostare: | |||
sudo /etc/munin/plugins/nomeplugin config | sudo /etc/munin/plugins/nomeplugin config | ||
| Line 60: | Line 113: | ||
Esempio: | Esempio: | ||
df. | <pre> | ||
hddtemp_smartctl. | sudo /usr/share/munin/plugins/df config | ||
graph_title Filesystem usage (in %) | |||
graph_args --upper-limit 100 -l 0 | |||
graph_vlabel % | |||
graph_category disk | |||
graph_info This graph shows disk usage on the machine. | |||
_dev_md0.label / | |||
_dev_md0.info / (ext3) -> /dev/md0 | |||
_dev_md0.warning 92 | |||
_dev_md0.critical 98 | |||
tmpfs_dev_shm.label /dev/shm | |||
tmpfs_dev_shm.info /dev/shm (tmpfs) -> tmpfs | |||
tmpfs_dev_shm.warning 92 | |||
tmpfs_dev_shm.critical 98 | |||
</pre> | |||
Per cambiare il livello di warning per lo spazio libero, inserire | |||
df._dev_md0.warning 97 | |||
=== Plugin smart_ === | |||
Il plugin smart fornisce il grafico dei parametri di salute del disco. | |||
Installare smartmontools e configurarlo (vedi wiki) | |||
sudo apt-get install smartmontools | |||
Verificare quali dischi è in grado di gestire: | |||
<pre> | |||
sudo /usr/share/munin/plugins/smart_ suggest | |||
hdc | |||
hda | |||
</pre> | |||
Creare i rispettivi link: | |||
<pre> | |||
cd /etc/munin/plugins | |||
ln -s /usr/share/munin/plugins/smart_ smart_hda | |||
ln -s /usr/share/munin/plugins/smart_ smart_hdc | |||
'''Attenzione''': non sbagliare nome, altrimenti il plugin non funziona ! | |||
Vedere se funzionano: | |||
<pre> | |||
sudo ./smart_hda | |||
Power_Cycle_Count.value 100 | |||
Current_Pending_Sector.value 200 | |||
Start_Stop_Count.value 100 | |||
Offline_Uncorrectable.value 200 | |||
Seek_Error_Rate.value 200 | |||
Reallocated_Event_Count.value 200 | |||
UDMA_CRC_Error_Count.value 200 | |||
Reallocated_Sector_Ct.value 200 | |||
Power_On_Hours.value 088 | |||
Calibration_Retry_Count.value 100 | |||
Spin_Up_Time.value 092 | |||
Spin_Retry_Count.value 100 | |||
Multi_Zone_Error_Rate.value 200 | |||
Raw_Read_Error_Rate.value 200 | |||
smartctl_exit_status.value 0 | |||
sudo ./smart_hdc | |||
Spin_Retry_Count.value 252 | |||
Reallocated_Event_Count.value 253 | |||
Spin_Buzz.value 252 | |||
smartctl_exit_status.value 6 | |||
Shock_Count_Write_Opern.value 253 | |||
Seek_Time_Performance.value 250 | |||
Seek_Error_Rate.value 253 | |||
Soft_Read_Error_Rate.value 253 | |||
Spin_High_Current.value 252 | |||
Shock_Rate_Write_Opern.value 253 | |||
Multi_Zone_Error_Rate.value 253 | |||
Power_Off_Retract_Count.value 253 | |||
Current_Pending_Sector.value 253 | |||
Run_Out_Cancel.value 253 | |||
UDMA_CRC_Error_Count.value 199 | |||
Temperature_Celsius.value 253 | |||
Load_Cycle_Count.value 253 | |||
Hardware_ECC_Recovered.value 253 | |||
Power_Cycle_Count.value 252 | |||
Start_Stop_Count.value 253 | |||
Unknown_Attribute.value 253 | |||
Reallocated_Sector_Ct.value 253 | |||
Calibration_Retry_Count.value 252 | |||
TA_Increase_Count.value 253 | |||
Spin_Up_Time.value 252 | |||
Read_Channel_Margin.value 253 | |||
Offline_Seek_Performnce.value 187 | |||
Power_On_Minutes.value 225 | |||
</pre> | |||
Verificare che funzinoni anche con munin-run: | |||
<pre> | |||
sudo munin-run smart_hda | |||
Power_Cycle_Count.value 100 | |||
Current_Pending_Sector.value 200 | |||
Start_Stop_Count.value 100 | |||
... | |||
smartctl_exit_status.value 0 | |||
... | |||
sudo munin-run smart_hdc | |||
Spin_Retry_Count.value 252 | |||
Reallocated_Event_Count.value 253 | |||
Spin_Buzz.value 252 | |||
..Power_On_Minutes.value 225 | |||
</pre> | |||
Se non funziona, verificare: | |||
Esiste in /etc/munin/plugin-conf.d/munin-node: | |||
[smart_*] | |||
user root | |||
group disk | |||
I link dei nomi sono corretti ? Il link si deve chiamare '''smart'''_hda e NON smart''d''_hda. | |||
=== Plugin squid_* === | |||
Seguire le istruzioni generali. | |||
Assicurarsi che squi ascolti su 127.0.0.1:3128 | |||
<pre> | |||
sudo netstat -anp | grep 3128 | |||
tcp 0 0 127.0.0.1:3128 0.0.0.0:* LISTEN 25000/(squid) | |||
tcp 0 0 192.168.254.254:3128 0.0.0.0:* LISTEN 25000/(squid) | |||
</pre> | |||
Se non ascolta, il plugin non funziona. | |||
===Plugin hddtemp_smartctl=== | |||
Seguire le istruzioni generali. | |||
Non tutti gli hard disk mostrano come attributo smart la temperatura. | |||
Verificarlo con: | |||
sudo smartctl -a /dev/hda | grep 'Current Drive Temperature:\|Temperature_Celsius' | |||
===Plugin postfix_mailstats=== | |||
C'è un errore nel plugin. | |||
Correggere la riga 75 in: | |||
if (!$?) | |||
Seguire le istruzioni generali | |||
===Plugin sensors_=== | |||
* Installare i programmi di supporto: | |||
sudo apt-get install lm-sensors sensord | |||
* Lanciare | |||
sensors-detect | |||
Caricare i moduli suggerti, ad esempio: | |||
<pre> | |||
sudo modprobe i2c-sensor | |||
sudo modprobe i2c-piix4 | |||
sudo modprobe w83781d | |||
</pre> | |||
??? ATTENZIONE: ricostruire l'immanie initrd, altrimenrti si perderanno i moduli all'avvio ??? | |||
Riavviare sensord | |||
/etc/init.d/sensord restart | |||
Verificare che il plugin funzioni: | |||
<pre> | |||
sudo /usr/share/munin/plugins/sensors_ autoconf | |||
yes | |||
</pre> | |||
Se così non fosse, non si è configurato bene il supporto lm-sensors | |||
Verificare quali sensori sono misurabili: | |||
<pre> | |||
sudo /usr/share/munin/plugins/sensors_ suggest | |||
fan | |||
volt | |||
temp | |||
</pre> | |||
Provarli: | |||
<pre> | |||
sudo ln -s /usr/share/munin/plugins/sensors_ /etc/munin/plugins/sensors_st | |||
sudo /etc/munin/plugins/sensors_st | |||
Use of uninitialized value in regexp compilation at ./sensors_st line 141. | |||
</pre> | |||
Questo plugin non va, eliminarlo: | |||
sudo rm /etc/munin/plugins/sensors_st | |||
Creare il link e verificare gli altri secondo le istruzioni generali. | |||
== Abilitazione degli alert via email == | == Abilitazione degli alert via email == | ||
Revision as of 17:26, 2 December 2006
Installazione Server
Sulla macchina che farà da server web per la monitorizzazione delle altre, e che verrà a sua volta monitorizzata, installare i pacchetti client e server:
sudo apt-get install munin munin-node
Sistemare la configurazione di apache, in modo da accedere a /var/www/munin
Sopo 5 minuti, si avrò il grafico iniziale (tempo per eseguire i cron job).
Installazione altri Client
Il server ha indirizzo ip 192.168.0.9
Il client ha insirizzo ip 192.168.0.250
Sulla macchina client installare:
sudo apt-get install munin-node
Editare qui /etc/munin-node.conf aggiungendo:
allow ^192\.168\.0\.9$ allow ^192\.168\.0\.250$
Sul Server, creare il profilo inserendo in /etc/munin/munin.conf
[client1]
address 192.168.0.250
.....
Sul server aggiungere in /etc/munin/munin-node.conf:
allow ^192\.168\.0\.250$
Su entrambe le macchine riavviare munin-node:
sudo /etc/init.d/munin-node restart
Dopo 5 minuti si avrà il nuovo sistema online.
Abilitazione di un plugin
- I plugin disponibili sono in
/usr/share/munin/plugins
- Comandi generici per i plugin:
- autoconf: dice se il plugin può funzionare
- config: mostra i parametri configurabili
- suggest: mostra come può essere usato il plugin (ad esempio per i plugin che finiscono in "_" dice come è possibile richiamarli)
Ipotizziamo di voler installare il plugin "squid_cache"
- Verificare che il plugin possa essere installato:
sudo /usr/share/munin/plugins/squid_cache autoconf
Se la risposta è
yes
allora il plugin è installabile.
Se invece si ottiene un errore, allora occorre indagare.
Per esempio, è possibile leggere il sorgente del plugin, che di solito contiene istruzioni sul suo utilizzo.
- Verificare se il plugin funziona, cioè se si ottengono dei dati:
sudo /usr/share/munin/plugins/squid_cache Maximum.value 5120000 Current.value 3071472
Abilitare il plugin creando un link in /etc/munin/plugins:
cd /etc/munin/plugins ln -s /usr/share/munin/plugins/squid_cache squid_cache
Verificare anche che il plugin funzioni quando richiamato da munin:
sudo munin-run squid_cache Maximum.value 5120000 Current.value 3071472
Riavviare munin-node per rendere attivo il nuovo plugin:
sudo /etc/init.d/munin-node restart
Forzare una lettura dei dati iniziale, per creare il grafico:
sudo -u munin munin-cron
Il nuovo grafico, magari vuoto, apparirà.
ATTENZIONE: se il link al grafico in testa pagina è in ROSSO, significa che il plugin associato ha dei problemi.
Modifica dei parametri soglia o di configurazione di un plugin
Identificare quale è il parametro da impostare:
sudo /etc/munin/plugins/nomeplugin config
Inserire in /etc/munin/muni.conf nella sezione dell'host considerato:
... nomeplugin.parametro.cosa xx ...
Esempio:
sudo /usr/share/munin/plugins/df config graph_title Filesystem usage (in %) graph_args --upper-limit 100 -l 0 graph_vlabel % graph_category disk graph_info This graph shows disk usage on the machine. _dev_md0.label / _dev_md0.info / (ext3) -> /dev/md0 _dev_md0.warning 92 _dev_md0.critical 98 tmpfs_dev_shm.label /dev/shm tmpfs_dev_shm.info /dev/shm (tmpfs) -> tmpfs tmpfs_dev_shm.warning 92 tmpfs_dev_shm.critical 98
Per cambiare il livello di warning per lo spazio libero, inserire
df._dev_md0.warning 97
Plugin smart_
Il plugin smart fornisce il grafico dei parametri di salute del disco.
Installare smartmontools e configurarlo (vedi wiki)
sudo apt-get install smartmontools
Verificare quali dischi è in grado di gestire:
sudo /usr/share/munin/plugins/smart_ suggest hdc hda
Creare i rispettivi link:
cd /etc/munin/plugins ln -s /usr/share/munin/plugins/smart_ smart_hda ln -s /usr/share/munin/plugins/smart_ smart_hdc '''Attenzione''': non sbagliare nome, altrimenti il plugin non funziona ! Vedere se funzionano: <pre> sudo ./smart_hda Power_Cycle_Count.value 100 Current_Pending_Sector.value 200 Start_Stop_Count.value 100 Offline_Uncorrectable.value 200 Seek_Error_Rate.value 200 Reallocated_Event_Count.value 200 UDMA_CRC_Error_Count.value 200 Reallocated_Sector_Ct.value 200 Power_On_Hours.value 088 Calibration_Retry_Count.value 100 Spin_Up_Time.value 092 Spin_Retry_Count.value 100 Multi_Zone_Error_Rate.value 200 Raw_Read_Error_Rate.value 200 smartctl_exit_status.value 0 sudo ./smart_hdc Spin_Retry_Count.value 252 Reallocated_Event_Count.value 253 Spin_Buzz.value 252 smartctl_exit_status.value 6 Shock_Count_Write_Opern.value 253 Seek_Time_Performance.value 250 Seek_Error_Rate.value 253 Soft_Read_Error_Rate.value 253 Spin_High_Current.value 252 Shock_Rate_Write_Opern.value 253 Multi_Zone_Error_Rate.value 253 Power_Off_Retract_Count.value 253 Current_Pending_Sector.value 253 Run_Out_Cancel.value 253 UDMA_CRC_Error_Count.value 199 Temperature_Celsius.value 253 Load_Cycle_Count.value 253 Hardware_ECC_Recovered.value 253 Power_Cycle_Count.value 252 Start_Stop_Count.value 253 Unknown_Attribute.value 253 Reallocated_Sector_Ct.value 253 Calibration_Retry_Count.value 252 TA_Increase_Count.value 253 Spin_Up_Time.value 252 Read_Channel_Margin.value 253 Offline_Seek_Performnce.value 187 Power_On_Minutes.value 225
Verificare che funzinoni anche con munin-run:
sudo munin-run smart_hda Power_Cycle_Count.value 100 Current_Pending_Sector.value 200 Start_Stop_Count.value 100 ... smartctl_exit_status.value 0 ... sudo munin-run smart_hdc Spin_Retry_Count.value 252 Reallocated_Event_Count.value 253 Spin_Buzz.value 252 ..Power_On_Minutes.value 225
Se non funziona, verificare:
Esiste in /etc/munin/plugin-conf.d/munin-node:
[smart_*] user root group disk
I link dei nomi sono corretti ? Il link si deve chiamare smart_hda e NON smartd_hda.
Plugin squid_*
Seguire le istruzioni generali.
Assicurarsi che squi ascolti su 127.0.0.1:3128
sudo netstat -anp | grep 3128 tcp 0 0 127.0.0.1:3128 0.0.0.0:* LISTEN 25000/(squid) tcp 0 0 192.168.254.254:3128 0.0.0.0:* LISTEN 25000/(squid)
Se non ascolta, il plugin non funziona.
Plugin hddtemp_smartctl
Seguire le istruzioni generali.
Non tutti gli hard disk mostrano come attributo smart la temperatura.
Verificarlo con: sudo smartctl -a /dev/hda | grep 'Current Drive Temperature:\|Temperature_Celsius'
Plugin postfix_mailstats
C'è un errore nel plugin.
Correggere la riga 75 in:
if (!$?)
Seguire le istruzioni generali
Plugin sensors_
- Installare i programmi di supporto:
sudo apt-get install lm-sensors sensord
- Lanciare
sensors-detect
Caricare i moduli suggerti, ad esempio:
sudo modprobe i2c-sensor sudo modprobe i2c-piix4 sudo modprobe w83781d
??? ATTENZIONE: ricostruire l'immanie initrd, altrimenrti si perderanno i moduli all'avvio ???
Riavviare sensord
/etc/init.d/sensord restart
Verificare che il plugin funzioni:
sudo /usr/share/munin/plugins/sensors_ autoconf yes
Se così non fosse, non si è configurato bene il supporto lm-sensors
Verificare quali sensori sono misurabili:
sudo /usr/share/munin/plugins/sensors_ suggest fan volt temp
Provarli:
sudo ln -s /usr/share/munin/plugins/sensors_ /etc/munin/plugins/sensors_st sudo /etc/munin/plugins/sensors_st Use of uninitialized value in regexp compilation at ./sensors_st line 141.
Questo plugin non va, eliminarlo:
sudo rm /etc/munin/plugins/sensors_st
Creare il link e verificare gli altri secondo le istruzioni generali.
Abilitazione degli alert via email
Qualora un plugin abbia dei valori di warning e critical settati, può avvertire via email.
Inserire in /etc/munin/munin.conf
contacts me
contact.me.command mail -s "Munin notification ${var:host}" user@host.tld
contact.me.always_send warning critical
Riavviare munin-node