W porównaniu z pierwszym postem o podstawowych komendach do sprawdzania co się dzieje na naszym serwerze Munin jest kombajnem służącym do monitorowania serwera polegającym na rysowaniu ładnych wykresów. Munin został napisany w Perlu, wykorzystuje RRDtool jako silnik do przechowywania danych, służy do sprawdzenia przyrostu ruchu na stronach, zmian obciążenia serwera w określonym przedziale czasowym.

Oferuje generowanie statystyk oraz podgląd obciążenia z poziomu strony internetowej, wykresy przedstawiają aktualny i historyczny stan naszego serwera VPS lub serwera dedykowanego. Dodatkowym atutem jest możliwość pisania swoich wtyczek w najpopularniejszym języku jakim jest PHP, oczywiście dla bardziej zaawansowanych użytkowników wtyczki do munina można napisać w Perlu, Pythonie, Shellu i Bash-u.

Na podstawie wykresów możemy określić czy serwer pracuje stabilnie, możemy również obserwować jak wprowadzane zmiany wpływają na działanie naszego serwera w określonym przedziale czasowym.

Instalacja Munin

Munina możemy zainstalować ze źródeł lub prostszym sposobem czyli skorzystać z gotowych pakietów. Z poziomu użytkownika root należy wykonać polecenia:

Debian

aptitude install munin

Konfiguracja Munin

Konfigurację Munina zaczynamy od edycji pliku

vim /etc/munin/munin.conf

Opcjonalnie zmieniamy nazwę hosta, która będzie widoczna na raportach. W przypadku posiadania kilku serwerów możemy stworzyć grypy, wpisując [GRUPA1; serwer1] [GRUPA1; serwer2] [GRUPA1; serwer3]

# Lista monitorowanych serwerów
[komp.serwer1.pl]
    address 127.0.0.1
    use_node_name yes
[komp.serwer2.pl]
    address 192.168.0.8
    use_node_name yes

Tak przygotowany plik konfiguracyjny zawiera 2 serwery. Z poziomu strony internetowej wygenerowanej przez Munina widok będzie prezentował się następująco:

Zmieniamy interfejs na którym uruchomiony jest munin z domyślnego ustawionego na wszystkie interfejsy sieciowe na lokalny interfejs.

vim /etc/munin/munin-node.conf
# Lokalny adres sieciowy;
#host *
host 127.0.0.1

Jeśli dane zbieramy z kilku serwerów musimy jeszcze dodać adresy IP tych serwerów:

vim /etc/munin/munin-node.conf
# adresy IP serwerów do monitorowania;
allow ^127\.0\.0\.1$
allow ^192\.168\.0\.8\.1$

Jednak aby dane zaczęły zbierać się z innych serwerów, należy na nich zainstalować munin-node dla każdego serwera z osobna.

Po wprowadzeniu zmian w konfiguracji munina restartujemy proces munin-node:

/etc/init.d/munin-node restart

Pluginy munina

Munin zawiera ogromną ilość pluginów, którą możemy wykorzystać do zbierania statystyk z naszego serwera.

Konfiguracja wtyczek

Sprawdzamy aktywne wtyczki:

munin-node-configure

W wyniku powyższego polecenia otrzymujemy listę zainstalowanych wtyczek wraz z informacją czy wtyczka jest aktywna.

Plugin                     | Used | Extra information
------                     | ---- | -----------------
...
apache_volume              | no   |
cps_                       | no   |
cpu                        | yes  |
...

Aby sprawdzić jakie są wymagania dla nieaktywnych wtyczek wykonujemy polecenie:

munin-node-configure --suggest

Wynikiem jest informacja jakie zmiany są wymagane w konfiguracji serwera aby wtyczka zaczęła działać.

Plugin                     | Used | Suggestions
------                     | ---- | -----------
...
acpi                       | no   | [ACPI program not found]
sendmail_mailstats         | no   | [no mailstats command]
...

Po wprowadzeniu sugerowanych zmian w konfiguracji generujemy polecenia, które włączą dodatkowe wtyczki:

munin-node-configure --shell

W wyniku otrzymujemy polecenia, których wykonanie włączy nowe wtyczki:

ln -s /usr/share/munin/plugins/acpi /etc/munin/plugins/acpi
ln -s /usr/share/munin/plugins/sendmail_mailstats /etc/munin/plugins/sendmail_mailstats

Szybszym sposobem na włączenie nowych wtyczek jest wykonanie polecenia:

munin-node-configure --shell | sh

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

*/5 * * * * /usr/bin/munin-cron

Pojedyncze dodawanie nowych wtyczek

Wszystkie dostępne pluginy znajdują się w katalogu /usr/share/munin/plugins/. Standardowo podczas instalacji munina jest aktywnych kilka wtyczek, jeżeli chcemy wzbogacić nasze wykresy o dodatkowe wtyczki należy dowiązać odpowiedni plugin do katalogu /etc/munin/pluginsi zrestartować munin-node.

ln -s /usr/share/munin/plugins/acpi /etc/munin/plugins/acpi
/etc/init.d/munin-node restart

Przeglądanie statystyk

Statystyki generowane przez munina domyślnie tworzone są w katalogu /var/www/munin. Aby uzyskać dostęp do statystyk przez przeglądarkę, należy ustawić ścieżkę w jakiej się one pojawią definiując zmienną w pliku /etc/munin/munin.conf.

htmldir /var/www/strony/www/statmunin.serwer1.pl

Statystyki mamy dostępne pod adresem http://statmunin.serwer1.pl

Przykład wygenerowanych statystyk przez munina

Munin Multimemorymunin multiio munin Squidmunin www