Munin – monitorowanie serwera

Stare administracyjne powiedzenie mówi:

„Miej logi i patrz w logi”

Problem z logami jest jednak taki, że jest ich bardzo dużo i nawet w przypadku analizatora logów typu logwatch, jest to dość pracochłonne zajęcie, choć i tak powinno się to robić. W tym wpisie postanowiłem się skupić na trochę innym typie monitorowania niż syslog.

Należę do tych osób, które uwielbiają patrzeć w wykresiki i sprawdzać co się dzieje. Jest to trochę sposób w jaki internista leczy – sprawdza anomalie w systemie. Rzeczy które możemy monitorować w systemie jest multum i zależy od tego jaką funkcję spełnia dany serwer. Do każdej z nich można doczepić standardowe monitowanie CPU, RAM, dysku oraz sieci i wbrew pozorom jest do dość proste do wykonania.

Kiedyś do tego używałem MRTG, teraz jest dużo lepsze narzędzie – Munin. Składa się on z 2 części – klienta (node) i serwera. Node (klient) konfigurujemy na każdym serwerze, który chcemy monitorować. Serwer zbiera z nodów (klientów) dane. To co ma zebrać dane konfigurujemy po stronie klienta. Na serwerze jedynie konfigurujemy serwer www pluginem munina. W przypadku debiana ogranicza się to do prostego:

apt-get install apache2

a potem:

apt-get install munin

Następnie musimy edytować plik:

/etc/munin/munin.conf

Dopisujemy w nim linijkę odpowiednio dopasowaną:

[superserver]
address tajneip
use_node_name yes

Jeżeli serwer i klient są na tym samym serwerze domyślnie jest to dodane.

Następnie musimy skonfigurować klienta. Instalujemy pakiet:

apt-get install munin-node

Tutaj automatycznie przy instalacji powinno nam się odpalić magiczne polecenie

munin-node-configure

Bada on nas system i automatycznie konfiguruje co można monitorować bez dodatkowych akcji.

Na to polecenie i debuging poświęcę jednak osobny artykuł. Żeby klient udostępniał swoje dane do serwera monitoringu musimy zmienić jedną linijkę w pliku:

/etc/munin/munin-node.conf

Jest to dyrektywa która mówi które IP mają prawo odpytywać naszego noda. Stosujemy tutaj wyrażenie regularne. Ale nawet nie znając tego czegoś łatwo się domyślić jak dopasować swoje IP.

Nasze IP A.B.C.D przekłada się na wpis:

allow ^A\.B\.C\.D$

Można też wpisać IPv6 jak ktoś chce. Wtedy tylko zaczynamy od ^,a kończymy na $ – nie ma tu modyfikacji po drodze.

Teraz jak i po każdej zmianie wymagany jest restart noda:

systemctl restart munin-node

Pamiętać należy, że klient używa portu 4949, także musimy mieć go odblokowanego na firewallu (jeżeli taki posiadamy oczywiście)

Dane są zbierane co 5 minut. Powinny być dostępne pod adresem serwera monitorującego http://serwer/munin

Scroll to top