< Linux

Monitorozás Muninnal

Szerző: Sallai András

Copyright © Sallai András, 2016

Licenc: GNU Free Documentation License 1.3

Web: http://szit.hu

A Muninról

A Munin számítógépek monitorozását megvalósító szoftver. A monitorozást webes felületen megjelenített grafikonon tehetjük meg.

A webes felületet a munin program állítja elő 5 percenként. A számítógépeket az úgynevezett kliens programok térképezik fel, ennek neve munin-node.

Feltételezések

Debian GNU/Linux rendszereken dolgozunk. Nálam a 8.6 verzió van telepítve. Telepítve van az mc csomag, amiből használjuk majd az mcedit parancsot.

Két gép van:

tanya.zold.and 192.168.5.100

terem.zold.and 192.168.5.101

Telepítés

Webszerver telepítése

Először telepítsük a webszervert fast-cgi modullal együtt:

apt install apache2 libcgi-fast-perl libapache2-mod-fcgid

Engedélyezzük a fast-cgi modult:

a2enmod fcgid
service apache2 restart

Munin telepítése

apt install munin munin-node munin-plugins-extra

A Munin beállítása

Szerkesszük a munin.conf állományt:

mcedit /etc/munin/munin.conf

A következő beállításokról gondoskodjunk:

# 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/cache/munin/www
logdir /var/log/munin
rundir /var/run/munin
# Where to look for the HTML templates
#
tmpldir /etc/munin/templates
# Where to look for the static www files
#
#staticdir /etc/munin/static
# temporary cgi files are here. note that it has to be writable by
# the cgi user (usually nobody or httpd).
#
# cgitmpdir /var/lib/munin/cgi-tmp
# (Exactly one) directory to include all files from.
includedir /etc/munin/munin-conf.d
[...]
# a simple host tree
[tanya.zold.and]
address 127.0.0.1
use_node_name yes
[...]

A Munin elérése

A telepítő a Debian GNU/Linux 8.6-ban már beállította az apache konfigurációt. A localhoston el is érhető. Hogy távolról is elérhető legyen, konfiguráljuk az /etc/munin/apache24.conf állományt:

mcedit /etc/munin/apache24.conf

Állítsuk be, hogy távolról is elérhető legyen a Require direktívával:

Alias /munin /var/cache/munin/www
<Directory /var/cache/munin/www>
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
Options None
</Directory>
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
<Location /munin-cgi/munin-cgi-graph>
# Require local
Require all granted
Options FollowSymLinks SymLinksIfOwnerMatch
<IfModule mod_fcgid.c>
SetHandler fcgid-script
</IfModule>
<IfModule !mod_fcgid.c>
SetHandler cgi-script
</IfModule>
</Location>

Indítsuk újra az apache és munin szolgáltatásokat:

service apache2 restart
service munin-node restart

Ezek után elérhető a Munin a következő helyen:

http://zold.and/munin

A kimeneti felület védelme

Állítsunk be egy apache jelszót:

htpasswd -c /etc/munin/munin-htpasswd admin

Beírjuk a jelszót, majd konfiguráljuk újra az apache-ot.

mcedit /etc/munin/apache24.conf

Írjuk bele az apache azonosításra vonatkozó sorokat:

Alias /munin /var/cache/munin/www
<Directory /var/cache/munin/www>
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
Options None
</Directory>
ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
<Location /munin-cgi/munin-cgi-graph>
# Require local
# Require all granted
AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
Require valid-user
<IfModule mod_fcgid.c>
SetHandler fcgid-script
</IfModule>
<IfModule !mod_fcgid.c>
SetHandler cgi-script
</IfModule>
</Location>

Indítsuk újra az apache-ot:

service apache2 restart

Modulok használata

A munin-plugins-extra csomag kibővíti a használható modulok számát.

Az ajánlott csomagokat a következő paranccsal tudjuk megnézni:

munin-node-configure --suggest

Ez a parancs azt is megmutatja mi van telepítve és mi nincs.

Állítsunk be MariaDB szerver számára monitorozást.

cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/mysql_ mysql_
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes
ln -s /usr/share/munin/plugins/mysql_innodb mysql_innodb
ln -s /usr/share/munin/plugins/mysql_isam_space_ mysql_isam_space_
ln -s /usr/share/munin/plugins/mysql_queries mysql_queries
ln -s /usr/share/munin/plugins/mysql_slowqueries mysql_slowqueries
ln -s /usr/share/munin/plugins/mysql_threads mysql_threads

Természetesen MySQL számára is ezekre van szükség.

Indítsuk újra a Munint:

service munin-node restart

Vagy az apache monitorozása:

cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/apache_accesses
ln -s /usr/share/munin/plugins/apache_processes
ln -s /usr/share/munin/plugins/apache_volume

Indítsuk újra a munint:

service munin-node restart

Távoli gépekről információszerzés

A távoli gépen a munin-node nevű csomagot kell magában telepíteni.

apt install munin-node

Azokat a gépeket, ahol csak a munin-node csomag van telepítve, a Munin szempontjából kliens gépeknek hívjuk.

Ellenőrizzék a működést:

telnet localhost 4949
Trying 192.168.5.101...
Connected to 192.168.5.101.
Escape character is '^]'.
# munin node at gépnév
quit

A munin-node beállításaiban engedélyezni kell a szerver IP címét. A szerver kapcsolódik a kliensekhez 5 percenként. Szerkesszük a /etc/munin/munin-node.conf állományt:

mcedit /etc/munin/munin-node.conf

Keressük meg a „allow” kezdető sorokat:

allow ^127\.0\.0\.1$
allow ^::1$

Vegyünk fel egy újabb sort, a szerver IP címét szabályos kifejezésként beállítva:

allow ^192\.168\.5\.100$

A fenti beállítás szerint a szerver IP címe 192.168.5.100.

Indítsuk újra a kliensen a munin-node szolgáltatást:

service munin-node restart

Most ellenőrizzük a klienst a szerverről. Tegyük fel, hogy a kliens címe 192.168.5.101. Akkor az ellenőrzés a következő:

telnet 192.168.5.101 4949
Trying 192.168.5.101...
Connected to 192.168.5.101.
Escape character is '^]'.
# munin node at gépnév
quit

A szerveren állítsuk be a kliens lekérését.

[terem.zold.and]
address 192.168.5.101

Indítsuk újra a szerveren a munin-node szolgáltatást:

service munin-node restart

5 perc múlva nézzük meg a webfelületet. A csoportok (grop) résznél meg kell jelenjen a kliens program.

Források

http://munin-monitoring.org/

https://www.howtoforge.com/tutorial/server-monitoring-with-munin-and-monit-on-debian/

Ajánlott

http://munin-monitoring.org/wiki/HowToMonitorWindows

https://github.com/munin-monitoring/munin-node-win32