Munin
Sissejuhatus
Munin on monitoorimise tarkvara, millega on võimalik näha graafiliselt arvuti ressursi kasutamist. Munin kasutamisega on võimalik lihtsalt monitoorida arvuti jõudlust, võrgundust ja rakendusi. Lisaks on võimalik juurde kirjutada mitmeid erinevaid pluginaid. Munin kasutab master/node arhidektuuri, mis tähendab seda, et master (server) ühendab mingi kindla intervalli järgi kõikide node'dega(klientidega). Seejärel salvestab andmed RRD faili ja vajadusel uuendab graafikuid.
Paigaldus
Kasutan Munin 1.4.5 versiooni ja ubuntu 10.10 operatsioonisüsteemi ning paigaldan tarkvara ühte arvutisse. Artikli lugejalt eeldatakse käsurea tundmist.
Enne installeerimist tuleb uuendada tarkavara nimekirja
sudo apt-get update
Ühe arvuti monitoorimiseks tuleb installeerida server ja klient
sudo apt-get install munin munin-node
Konfigureerimine
Konfigureerimis failid asuvad kataloogis /etc/munin. Tuleb avada fail munin.conf
gedit /etc/munin/munin.conf
munin.conf failis tuleb ära võtta kommenteerimis märgid järgnevatelt ridadelt:
dbdir /var/lib/munin htmldir /var/cache/munin/www logdir /var/log/munin rundir /var/run/munin
Kui muudatused on tehtud, siis saab monitoorimis tarkvara käsurealt käivitada:
firefox /var/cache/munin/www/index.html
või veebibrauseri aadressiribale kirjutada:
/var/cache/munin/www/index.html
Avanevas veebibrauseris tuleb ette monitoorimis tarkvara Munin avaleht
Vaikimis joonistatake graafikud järgmistest teenustest:
- disk
- munin
- networ
- printing
- proccesses
- sensors
- system
Vaikimisi muudetakse graafikuid 5 minutilise intarvalliga. Graafikute uuendamise intervalli on võimalik muuta cron.d kataloogis asuvas munin failis.
sudo gedit /etc/cron.d/munin
munin faili sisu:
# # cron-jobs for munin # MAILTO=root */5 * * * * munin if [ -x /usr/bin/munin-cron ]; then /usr/bin/munin-cron; fi 14 10 * * * munin if [ -x /usr/share/munin/munin-limits ]; then /usr/share/munin/munin-limits --force --contact nagios --contact old-nagios; fi
*/5 muutmisel saadakse uus intervalli aeg. Näiteks */20 korral on intervall 20 minutit.
Pluginad
Munin tarkvaral on kaasas palju erinevaid pluginaid. Need asuvad kaustas /usr/share/munin/plugins ja mõned neist on lingitud kausta /etc/munin/plugins. Hetkel kasutatavate pluginate vaatamiseks tuleb kirjutada:
ls /etc/munin/plugins
ja kõikide saadaval olevate pluginate vaatamiseks
ls /usr/share/munin/plugins
Munin-node'il on pluginate kontollimiseks ka teine võimalus:
munin-node-configure
Tulemuseks on nimekiri, kus on näha, kas plugin on kasutusel või mitte. Et teada saada, kas mingi kindel plugin on kasutatav, tuleb sisestada käsk
NB!! Enne käsu sisestamist tuleb minna plugina kataloogi! /usr/share/munin/plugins$ ja siis sisestada ./plugina_nimi autoconf
Tulemuseks on yes - kui on võimalik plugin paigaldada või no - veateade, pluginat ei ole võimalik paigalada.
Näide:
/usr/share/munin/plugins$ ./apache_volume autoconf yes või /usr/share/munin/plugins$ ./courier_mta_mailvolume autoconf no (could not find executable)
muin-node-configure võib käima panna --suggest parameetriga. Sel juhul on tulemuseks tabel, kus on näha, millised pluginad ei ole paigaldatud, millised saab paigaldada ja millised on veateated.
munin-node-configure --suggest
Plugina paigaldus
Plugina, mis ei ole veel paigaldatud aga mida on võimalik paigaldada, installerimiseks tuleb lisada link /etc/munin/plugins kataloogi.
sudo ln -s /usr/share/munin/plugins/plugina_nimi /etc/munin/plugins/plugina_nimi
Plugina lisamiseks graafikule tuleb kataloogis /etc/munin/plugin-conf.d avada munin-node fail ja lisada sinna
[plugina_nimi] user root
js siis teha munin-nodeile restart
sudo /etc/init.d/munin-node restart
Näide:
Plugina apache_volume paigaldus 1) Peab veenduma, kas pluginat on võimalik paigaldada /usr/share/munin/plugins$ ./apache_volume autoconf yes 2) Lisada plugina link kataloogi /etc/munin/plugins sudo ln -s /usr/share/munin/plugins/apache_volume /etc/munin/plugins/apache_volume 3) Plugina graafikule lisamiseks tuleb avada munin-node fail ja sinna lisada plugina informatsioon sudo gedit/etc/munin/plugin-conf.d/munin-node [apache_volume] user root 4)tuleb teha munin-node'ile restart sudo /etc/init.d/munin-node restart
Tulemus peaks olema järgmine:
Pluginate hoidla
Pluginaid on võimalik otsida ka Munin Exchange ametlikust hoidlast. Sobiva plugina paigaldamiseks tuleb kõigepealt plugin allalaadida ja kopeerida /etc/munin/plugins kataloogi ning seejärel lisada munin-node faili plugina nimi ja kasutaja:
[plugina_nimi] user kasutaja_nimi
Peale faili muutmist tuleb munin-node'ile teha restart:
sudo /etc/init.d/munin-node restart
Tulemusena on lisatud monitoorimise tarkvarale uus plugin.
Plugina kirjutamine
Lihtne plugin, mis loeb kokku protsesside arvu ja joonistab sellest graafiku.
Plugina nimeks on Protsess
#!/bin/sh if [ "$1" = "config" ]; then echo "graph_title Protsessi graafik" echo "graph_category Protsessid" echo "graph_info Graafik joonistatakse protsesside arvu jƤrgi" echo "protsess.label protsesside arv" echo "protsess.type GAUGE" exit 0 fi echo -n "protsess.value " ps -ef | wc -l
- graph_title - graafiku pealkiri
- graph_category - graafiku kategooria nimi
- graph_info - graafiku kirjeldus
- protsess.label - muutuja nimi
- protsess.type - andmeallika tüüp
- Protsesside tabeli väljastab ps -ef ja kõik read loeb kokku wc -l
Täielik nimekiri config atribuutidest.
Kui plugin on valmis, siis tuleb see kopeerida plugins kataloogi, lisada munin-node faili plugina andmed ja teha munin-node'ile restart.
Tulemus võiks olla selline:
Kokkuvõte
Munin monitoorimise tarkvara kasutamine nõuab käsurea tundmist ning seega ei ole see tavakasutajale mõeldud. Kogenud kasutajal on võimalik väga lihtsalt juurde kirjutada pluginaid. Monitoorimise tarkvarasid on veel: Nagios, Zabbix. Täielik nimekiri.
Kasutatud kirjandus
- http://munin-monitoring.org/
- http://munin-monitoring.org/wiki/Documentation
- http://munin-monitoring.org/wiki/HowToWritePlugins
- http://munin-monitoring.org/wiki/protocol-config
- http://waste.mandragor.org/munin_tutorial/munin.html#protocol
- http://exchange.munin-monitoring.org/
- http://en.wikipedia.org/wiki/Comparison_of_network_monitoring_systems
Lingid
Autor
Ivar Ambos A22