Informacje takie bardzo przydają się do analizy działania całego systemu z perspektywy czasu. Dzięki temu możemy przewidzieć zapotrzebowanie na zasoby sprzętowe, oszacować przyrost danych w ostatnim czasie.

Wraz z upływem czasu, dzięki zebranym informacjom, będziemy w stanie oszacować ile jeszcze w stanie jesteśmy wycisnąć z naszego serwera oraz obejrzeć jak rozkładało się obciążenie w minionym czasie.

Munin - wykres

Jedną z aplikacji, która ułatwi nam to zadanie jest Munin. Munin jest to narzędzie, które pozwala na monitorowanie wielu usług systemowych. Zawiera ponad 500 pluginów, które potrafią zbierać dane z różnych parametrów. Ogromną zaletą tej aplikacji jest generowanie wykresów oraz dostęp do nich przez interfejs webowy.

Munin wykorzystuje RRDtool jako silnik do przechowywania danych. Cała aplikacja została napisana w języku Perl, natomiast pluginy mogą być tworzone w dowolnym języku. Cała architektura opiera się o serwer master, który odpowiada za zbieranie danych i generowanie wykresów oraz serwery node, które wysyłają dane z monitorowanych maszyn do serwera głównego.

  • munin-node – daemon, który wystawia dane dla podpiętych do monitorowania usług.
  • munin-cron – proces, który zbiera dane co 5 minut.
  • munin – główna aplikacja, która zbiera dane i generuje wykresy.

Konfiguracja

Całą aplikację możemy zainstalować korzystając ze źródeł lub wykorzystać do tego gotowe paczki przygotowane dla dystrybucji. W przypadku Ubuntu wystarczy wydać polecenie:

[bash]apt-get install munin[/bash]

Przygotowane paczki z aplikacją skonfigurują do działania całą aplikację, przygotują nawet serwer Apache do wyświetlania statystyk zebranych przez Munina. Dla systemów typu Red Hat, CentOS czy Fedora gotowe paczki znajdziemy w repozytoriach RPMForge i EPEL.

Konfigurację serwera zaczynamy od edycji pliku /etc/munin/munin.conf. Definiujemy tam listę hostów z jakich będą generowane wykresy. Serwery możemy segregować w grupach dla łatwiejszego przeglądania. Przykład konfiguracji:

[bash][osworld]
address 127.0.0.1
use_node_name yes

[muszelka]
address 192.168.0.2
use_node_name yes

[LAN;gargamel]
address 10.0.0.1
use_node_name yes

[LAN;maruda]
address 10.0.0.2
use_node_name yes

[LAN;ciamajda]
address 10.0.0.3
use_node_name yes[/bash]

Tak przygotowany plik konfiguracyjny zawierać będzie 5 serwerów, z czego 3 zostały przypisane do grupy LAN. Wygenerowane menu przez Munina będzie prezentowało się następująco:

Munin - grupy

Następnie edytujemy plik /etc/munin/munin-node.conf i dodajemy adresy IP serwerów z jakich będziemy zbierać dane:

[bash]allow ^127\.0\.0\.1$
allow ^192\.168\.0\.2\.1$
allow ^10\.0\.0\.1\.1$
allow ^10\.0\.0\.2\.1$
allow ^10\.0\.0\.3\.1$[/bash]

Restartujemy usługę za pomocą polecenia service munin-node restart. Aby dane zaczęły zbierać się z innych maszyn, należy na nich zainstalować munin-node dla każdego serwera z osobna. Jeżeli wszystko dobrze skonfigurowaliśmy, mamy otwarty ruch na firewallach to w logach powinniśmy zobaczyć:

[bash]2011/04/11-16:22:17 CONNECT TCP Peer: "192.168.0.146:44650" Local: "192.168.0.2:4949"[/bash]

Ostatnią rzeczą jaką musimy zrobić jest cykliczne uruchamianie procesu munin-cron, który generuje wykresy. Najlepiej dodać go do CRONa dla użytkownika munin:

[bash]*/5 * * * * /usr/bin/munin-cron[/bash]

Aplikacja wygeneruje nam pliki HTML oraz obrazki ze statystykami serwera. Ścieżkę w jakiej się one pojawią definiuje zmienna htmldir w pliku /etc/munin/munin.conf. Tak wygenerowane dane możemy wyświetlić za pomocą serwera Apache.

Pluginy

Munin zawiera ogromną ilość pluginów, którą możemy wykorzystać do zbierania statystyk. Wszystkie dostępne pluginy znajdują się w katalogu /usr/share/munin/plugins/. Jeżeli chcemy wzbogacić nasze wykresy o dodatkowe funkcje monitorujące należy dowiązać odpowiedni plugin do katalogu /etc/munin/plugins i zrestartować munin-node.

Munin - Google

Przykładowo aby monitorować ping do google.pl wydajemy polecenie:

[bash]ln -s /usr/share/munin/plugins/ping_ /etc/munin/plugins/ping_google.pl[/bash]

Każdy plugin zakończony znakiem _ na końcu wymaga dodatkowego parametru, który podajemy tak jak w przykładzie powyżej.

Munina można bardzo szybko zainstalować na każdym serwerze i niemal od zaraz zacząć zbierać statystyki z systemu operacyjnego.

Poprzedni artykułKongoni GNU/Linux 2011 RC2
Następny artykułaria2 1.11.2

6 KOMENTARZE

  1. Korzystałem kiedyś na swoim lokalnym komputerze z tego Munina. Bardzo prosty i fajny serwer do zbierania danych. Bardzo prosto generuje wykresy.

    Jak ktoś ma Ubuntu to apt-get wszystko zrobi za niego. Instalujesz i cieszysz się wykresami.

    Zastanawia mnie tylko jeden fakt. Z jakiego silnika Munin korzysta do generowania wykresów?

ZOSTAW ODPOWIEDŹ

Proszę wpisać swój komentarz!
Proszę podać swoje imię tutaj