Kontrola serwera – MUNIN

Dzisiaj pobawimy się na serwerze :) A konkretnie zainstalujemy oprogramowanie służące do kontroli parametrów serwera i wyświetlania ich na kolorowych wykresach. Program nazywa się Munin .

305x80xmunin.png

A wynikiem jego działania są np takie wykresy:

fw_conntrack-day.png

memory-day.png

load-day.png

Bierzemy się do pracy :)

Instalacja będzie odbywać się na Debianie, ale myślę, że nie ma przeszkody aby zainstalować go na systemie Ubuntu.

Pierwsze co musimy zrobić, to zaktualizować repozytoria, a po nich zainstalować Munin’a.

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install munin munin-node munin-plugins-extra

Ok. Mamy już go zainstalowanego. Teraz czas na konfigurację. Pierwsze co musimy zrobić to utworzyć folder w którym będzie zapisywał swoje wykresy a jednocześnie był dostęp do niego za pomocą domeny. Żeby był porządek wszystkie „strony” trzymam w domyślnym katalogu, czyli /var/www .

sudo mkdir /var/www/munin

Teraz musimy podpiąć domenę, subdomenę czy alias pod ten katalog. Ja utworzę sobie subdomenę, która wskaże na powyższy katalog. Poniżej mój virtualhost.

<VirtualHost *:80>
ServerAdmin webmaster@mojadomena.pl
ServerName munin.mojadomena.pl
ServerAlias www.munin.mojadomena.pl

DocumentRoot /var/www/munin
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/munin>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory „/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Mamy wirtualnego hosta, także musimy dodać go do site’ów a następnie przeładować apache.

sudo a2ensite nazwa_virtualneg0_hosta

sudo /etc/init.d/apache2 reload

Jeśli wszystko odbyło się bez błędów to dobrze. Teraz nadajmy prawa dla Munin’a dla katalogu.

sudo chown -R munin:munin /var/www/munin

Już prawie jesteśmy w domu :)

Ostatnim krokiem jest konfiguracja samego Munin’a. Edytujemy plik (ja edytuje programem nano):

sudo nano /etc/munin/munin.conf

Nas interesują 2 wpisy – ścieżka i serwer. Na początku pliku ustalamy ścieżkę, gdzie ma zapisywać wykresy:

# Example configuration file for Munin, generated by ‚make build’

# The next three variables specifies where the location of the RRD
# databases, the HTML output, logs and the lock/pid files.  They all
# must be writable by the user running munin-cron.  They are all
# defaulted to the values you see here.
#
dbdir  /var/lib/munin
htmldir /var/www/munin
logdir /var/log/munin
rundir  /var/run/munin
#
# Where to look for the HTML templates
tmpldir        /etc/munin/templates

Oraz dla jakiego serwera ma działać:

# a simple host tree
[mojadomena.pl]
address 127.0.0.1
use_node_name yes

Po powyższej konfiguracji należy zrestartować serwis munin:

sudo /etc/init.d/munin-node restart

Po tych wszystkich zabiegach należy poczekać kilkanaście minut aż zostaną zebrane dane, a następnie wejść pod podany wcześniej adres.

Gotowe, możemy teraz oglądać jak serwer zachowuje się po naszą nieobecność.

 

Problem jaki może wystąpić, to błąd 403. Aby go rozwiązać należy w pliku /etc/munin/apache.conf zmienić wpis

Allow from 127.0.0.1 ::1

na

Allow from all

Oraz zrestartować dla pewności Munin’a oraz Apache. Jeśli to nie pomoże, to można w pliku definiującego virtualnego hosta dodać wpis:

<Directory /var/www/munin>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

 

Jeśli chcemy wyłączyć jakiś wykres, to należy przejść do folderu /etc/munin/plugins a następnie zmienić nazwę pliku dodając końcówkę bak. Aby dowiedzieć który plugin odpowiada za dany wykres wystarczy najechać kursorem na wykres na następnie w przeglądarce odczytać adres do wykresu np.: http://munin.mojadomena.pl/df-day.png (plugin odpowiadający za ten wykres nazywa się df).

Po zmianach pluginów zalecam skasowanie całej zawartości katalogu /var/www/munin i zrestartowanie usługi Munin’a.