Monitorowanie systemów bardzo ważna rzecz  dla każdego bardziej ogarniętego administratora. Chciałem spróbowac i przetestować system Munin, który może monoitorować systemy i rysować z zebranych danych wykresy, które można przeanalizować i wykryć nadchodzące niespodzianki ;) Miałem pomysł na serie artykułów  na temat róznych programów do monitorowania i dzisiejszy wpis można potraktowac jako takie wprowadzenie do serii :) albo nawet prolog.

Testowałem sobie Munina do monitorowania i miałem problem z dodawaniem klientów, poprostu nie dodaje ich. Ale zacznijmy od początku. Instalacja z debianowych repozytoriów, debian stable.

aptitude install munin munin-node munin-common munin-plugins-extra

Plik konfiguracyjny /etc/munin/munin.conf :

 # Sciezki do plikow/katalogow
 dbdir           /var/lib/munin
 htmldir         /var/cache/munin/www
 logdir          /var/log/munin
 rundir          /var/run/munin
 tmpldir        /etc/munin/templates
 includedir      /etc/munin/munin-conf.d
 # Hosty monitorowane
 [localhost.cos]
    address 127.0.0.1
    use_node_name yes

 [proxy.cos]
    address 192.168.1.10
    use_node_name yes
 

Plik /etc/munin/munin-node.conf

 

log_level 4
log_file /var/log/munin/munin-node.log
pid_file /var/run/munin/munin-node.pid

background 1
setsid 1

user root
group root

ignore_file ~$
#ignore_file [#~]$  # FIX doesn't work. '#' starts a comment
ignore_file DEADJOE$
ignore_file \.bak$
ignore_file %$
ignore_file \.dpkg-(tmp|new|old|dist)$
ignore_file \.rpm(save|new)$
ignore_file \.pod$

allow ^127\.0\.0\.1$
allow ^192\.168\.1\.10\.1$

# Which address to bind to;
host *
host 192.168.1.254

# And which port
port 4949

 

Instalacja na kliencie pakietu munin-node by można było pobierać dane z "noda". W iptables przepuszczamy ruch na porcie 4949 tcp.

iptables -A INPUT -i eth0 -p tcp –dport 4949 -j ACCEPT

Jeszcze restart usługi munin-node :

/etc/init.d/munin-node restart
Stopping Munin-Node: done.
Starting Munin-Node: done.

Uruchamiam przeglądarkę wpisuje http://adres_ip/munin i wyświetla mi się strona, lecz tylko na stronie widnieje jedna maszyna i jest nią localhost. Zaczynają się poszukiwania. Loguje się na użytkownika munin i wydaje komende do aktualizacji :

su – munin –shell=/bind/bash

 

/usr/share/munin/munin-update –config_file=/etc/munin/munin.conf

 

W logach /var/log/munin/munin-node.log, brak jest wpisów, że  host 192.168.1.10 ( mój nod, który chce monitorowac zdalnie) łączy się czy nawet próbuje się połączyć :

Binding to TCP port 4949 on host *
2012/03/16-09:50:03 CONNECT TCP Peer: "127.0.0.1:57127" Local: "127.0.0.1:4949"
2012/03/16-09:55:02 CONNECT TCP Peer: "127.0.0.1:57134" Local: "127.0.0.1:4949"
2012/03/16-09:57:48 CONNECT TCP Peer: "127.0.0.1:57137" Local: "127.0.0.1:4949"
2012/03/16-10:00:02 CONNECT TCP Peer: "127.0.0.1:57141" Local: "127.0.0.1:4949"
2012/03/16-10:01:45 CONNECT TCP Peer: "127.0.0.1:57147" Local: "127.0.0.1:4949"
2012/03/16-10:05:03 CONNECT TCP Peer: "127.0.0.1:57154" Local: "127.0.0.1:4949"
2012/03/16-10:10:03 CONNECT TCP Peer: "127.0.0.1:57160" Local: "127.0.0.1:4949"
2012/03/16-10:15:02 CONNECT TCP Peer: "127.0.0.1:57167" Local: "127.0.0.1:4949"

Przegladam więc logi z aktualizacji jaką przeprowadziłem, plik /var/log/munin/munin-update.log :

 

2012/03/16 10:25:02 [INFO]: Starting munin-update
2012/03/16 10:25:02 Opened log file
2012/03/16 10:25:02 [FATAL ERROR] Lock already exists: /var/run/munin/munin-update.lock. Dying.
2012/03/16 10:25:02  at /usr/share/perl5/Munin/Master/Update.pm line 128
2012/03/16 10:25:02 [INFO] Process 25169 is dead, stealing lock, removing file
2012/03/16 10:25:02 [FATAL] Socket read from proxy.cos failed.  Terminating process. at /usr/share/perl5/Munin/Master/UpdateWorker.pm line 139
2012/03/16 10:25:02 [ERROR] Munin::Master::UpdateWorker died with '[FATAL] Socket read from proxy.cos failed.  Terminating process. at /usr/share/perl5/Munin/Master/UpdateWorker.pm line 139
    …propagated at /usr/share/perl5/Munin/Common/Timeout.pm line 66.
'
2012/03/16 10:25:11 [INFO] Reaping Munin::Master::UpdateWorker<cos;proxy.cos>.  Exit value/signal: 18/0
2012/03/16 10:25:21 [WARNING] Call to accept timed out.  Remaining workers: cos;proxy.cos
2012/03/16 10:25:21 [INFO] Reaping Munin::Master::UpdateWorker<cos;localhost.cos>.  Exit value/signal: 0/0
2012/03/16 10:25:21 [INFO] No old data available for failed worker cos;proxy.cos.  This node will disappear from the html web page hierarchy
2012/03/16 10:25:21 [INFO]: Munin-update finished (18.65 sec)

OOO jest jakiś błąd, więc z błedem udaje się do wuja Gie, który wypluwa mi to : http://munin-monitoring.org/ticket/766

Problem z wyświetlaniem na stronie http hostów, bo coś jest nie tak z pluginem od SNMP, a że zmiany tego buga są zbyt głęboko sięgające w aplikacje to zapowiedziano poprawienie w wersji 3.0. Mam wersje 1.4.5. Ech, a miało być tak pięknie …