Tartalom
- oldal: Munin szerver monitor rendszer telepítése és áttekintése
- oldal: Munin plugin-ok telepítése, eltávolítása, és jelszavas védelem beállítása
A 2. oldal tartalma
Folytatás
Az első oldalon feltelepítettük a Munin szerver-monitorozó szoftvert, ezen az oldalon folytatjuk a plugin-ok telepítésével, beállításával, amik segítségével még hatékonyabbá tehetjük rendszerünk megfigyelését.
Munin plugin-ok telepítése (opcionális)
A Munin plugin-ok telepítése nem kötelező, a rendszer már így is monitorozza a szerver több aspektusát is, de ha már nekiálltunk, akkor készítsük el rendesen Munin rendszerünket.
Rendszer által ajánlott plugin-ok bekapcsolása
A Munin programcsomag tartalmaz egy rendszerelemző részt is, ami felméri a gépben lévő hardverek és a gépen futó szoftveres szolgáltatások alapján az opcionálisan bekapcsolható bővítményeket, amiket egy gyors futási tesztet követően ajánl, vagy hibás működés esetén kiírja hogy az adott rendszer környezetben a kérdéses plugin nem működik.
A Munin telepítésekor már alapból elvégezte ezt az elemzést, és a szerverkörnyezet lehetőségeinek megfelelően be is kapcsolt minden használható bővítményt a saját tárából. Azonban ha később bővítjük a szervert újabb szolgáltatásokkal, érdemes utána kézzel is lefuttatni ezt az elemzést, hátha talál újabb működőképes bővítményt, ami az új szolgáltatásainkat monitorozza.
Kézi indításhoz futtassuk az alábbi parancsot:
munin-node-configure --suggest
Kicsit várni kell, amíg lefut az elemzés, majd kiadja az eredményeket.
A Debian 9-es tökéletes szerveren a kimenet:
Plugin | Used | Suggestions ------ | ---- | ----------- acpi | no | no [[[ plugin has errors, see below ]]] amavis | no | no [command logtail or file /var/log/mail.info not found] apache_accesses | yes | yes apache_processes | yes | yes apache_volume | yes | yes apc_envunit_ | no | no [no units to monitor] bonding_err_ | no | no [No /proc/net/bonding] courier_mta_mailqueue | no | no [spooldir not found] courier_mta_mailstats | no | no [could not find executable] courier_mta_mailvolume | no | no [could not find executable] cps_ | no | no [ipvsadm not found] cpu | yes | yes cpuspeed | no | no [neither /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state nor /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq is readable] cupsys_pages | no | no [could not find logdir] df | yes | yes df_inode | yes | yes digitemp_ | no | no [failed to find executable starting with 'digitemp_'] diskstats | yes | yes entropy | yes | yes exim_mailqueue | no | no [command exiqgrep not found] exim_mailstats | no | no [logdir '/var/log/exim4/' does not exist] fail2ban | yes | yes forks | yes | yes fw_conntrack | no | no [command /usr/sbin/conntrack or file /proc/net/nf_conntrack or file /proc/net/ip_conntrack not found] fw_forwarded_local | no | no [command /usr/sbin/conntrack or file /proc/net/nf_conntrack or file /proc/net/ip_conntrack not found] fw_packets | yes | yes hddtemp_smartctl | no | no ['smartctl' executable not found] http_loadtime | yes | yes if_ | yes | yes (enp0s3) if_err_ | yes | yes (enp0s3) interrupts | yes | yes ip_ | no | yes ipmi_ | no | no [missing ipmitool command] irqstats | yes | yes load | yes | yes lpstat | no | no [lpstat not found] memory | yes | yes munin_stats | yes | yes mysql_ | no | no [Missing dependency Cache::Cache] netstat | yes | yes nfs4_client | no | no [no /proc/net/rpc/nfs] nfs_client | no | no [[[ plugin gave no reason why ]]] nfsd | no | no [no /proc/net/rpc/nfsd] nfsd4 | no | no [no /proc/net/rpc/nfsd] nginx_request | no | no [no nginx status on http://localhost/nginx_status] nginx_status | no | no [no nginx status on http://localhost/nginx_status] ntp_ | yes | yes (193.225.118.163 193.6.222.47 195.228.75.149 62.112.193.9 84.2.44.19 92.249.148.253 +162.159.200.123 +193.225.118.162 +212.24.187.220 +212.92.16.193 +62.112.194.60 -162.159.200.1 -193.225.190.4 -193.227.197.2 -195.199.245.170 -213.157.100.71 -62.112.193.129 -62.112.195.26 -62.112.195.55 -84.2.46.19) ntp_kernel_err | yes | yes ntp_kernel_pll_freq | yes | yes ntp_kernel_pll_off | yes | yes ntp_offset | yes | yes ntp_states | yes | yes nvidia_ | no | no [no nvclock executable at /usr/bin/nvclock, please configure] open_files | yes | yes open_inodes | yes | yes pgbouncer_connections | no | no [DBD::Pg not found, and cannot do psql yet] pgbouncer_requests | no | no [DBD::Pg not found, and cannot do psql yet] postfix_mailqueue | yes | yes postfix_mailvolume | yes | yes postgres_autovacuum | no | no [[[ plugin has errors, see below ]]] postgres_bgwriter | no | no [[[ plugin has errors, see below ]]] postgres_cache_ | no | no [[[ plugin has errors, see below ]]] postgres_checkpoints | no | no [[[ plugin has errors, see below ]]] postgres_connections_ | no | no [[[ plugin has errors, see below ]]] postgres_connections_db | no | no [[[ plugin has errors, see below ]]] postgres_locks_ | no | no [[[ plugin has errors, see below ]]] postgres_oldest_prepared_xact_ | no | no [[[ plugin has errors, see below ]]] postgres_prepared_xacts_ | no | no [[[ plugin has errors, see below ]]] postgres_querylength_ | no | no [[[ plugin has errors, see below ]]] postgres_scans_ | no | no [[[ plugin has errors, see below ]]] postgres_size_ | no | no [[[ plugin has errors, see below ]]] postgres_transactions_ | no | no [[[ plugin has errors, see below ]]] postgres_tuples_ | no | no [[[ plugin has errors, see below ]]] postgres_users | no | no [[[ plugin has errors, see below ]]] postgres_xlog | no | no [[[ plugin has errors, see below ]]] proc | no | no [[[ plugin has neither autoconf not suggest support ]]] proc_pri | yes | yes processes | yes | yes qmailqstat | no | no [file /var/qmail/bin/qmail-qstat not found] selinux_avcstat | no | no [missing /sys/fs/selinux/avc/cache_stats file] sendmail_mailqueue | no | no [[[ plugin has errors, see below ]]] sendmail_mailstats | no | no [[[ plugin has errors, see below ]]] sendmail_mailtraffic | no | no [[[ plugin has errors, see below ]]] sensors_ | no | no [program sensors died] slapd_ | no | no [Connection refused] slapd_bdb_cache_ | no | no [Can't execute db_stat file '/usr/bin/db4.6_stat'] slony_lag_ | no | no [DBD::Pg not found, and cannot do psql yet] smart_ | no | no [smartmontools not found] snort_alerts | no | no [/var/snort/snort.stats not readable] snort_bytes_pkt | no | no [/var/snort/snort.stats not readable] snort_drop_rate | no | no [/var/snort/snort.stats not readable] snort_pattern_match | no | no [/var/snort/snort.stats not readable] snort_pkts | no | no [/var/snort/snort.stats not readable] snort_traffic | no | no [/var/snort/snort.stats not readable] squeezebox_ | no | no [no connection on localhost port 9090] squid_cache | no | no [could not connect: Connection refused] squid_objectsize | no | no [could not connect: Connection refused] squid_requests | no | no [could not connect: Connection refused] squid_traffic | no | no [could not connect: Connection refused] swap | yes | yes threads | yes | yes tomcat_ | no | no [could not connect to 127.0.0.1/manager/status?XML=true on port 8080] uptime | yes | yes users | yes | yes varnish_ | no | no [[[ plugin has errors, see below ]]] vmstat | yes | yes vserver_cpu_ | no | no [/proc/virtual/info not found] vserver_loadavg | no | no [/proc/virtual/info not found] vserver_resources | no | no [/proc/virtual/info not found] yum | no | no [Could not run yum] # The following plugins caused errors: # acpi: # Junk printed to stderr # postgres_autovacuum: # Non-zero exit during autoconf (255) # postgres_bgwriter: # Non-zero exit during autoconf (255) # postgres_cache_: # Non-zero exit during autoconf (255) # postgres_checkpoints: # Non-zero exit during autoconf (255) # postgres_connections_: # Non-zero exit during autoconf (255) # postgres_connections_db: # Non-zero exit during autoconf (255) # postgres_locks_: # Non-zero exit during autoconf (255) # postgres_oldest_prepared_xact_: # Non-zero exit during autoconf (255) # postgres_prepared_xacts_: # Non-zero exit during autoconf (255) # postgres_querylength_: # Non-zero exit during autoconf (255) # postgres_scans_: # Non-zero exit during autoconf (255) # postgres_size_: # Non-zero exit during autoconf (255) # postgres_transactions_: # Non-zero exit during autoconf (255) # postgres_tuples_: # Non-zero exit during autoconf (255) # postgres_users: # Non-zero exit during autoconf (255) # postgres_xlog: # Non-zero exit during autoconf (255) # proc: # In family 'auto' but doesn't have 'autoconf' capability # sendmail_mailqueue: # Non-zero exit during autoconf (255) # sendmail_mailstats: # Non-zero exit during autoconf (255) # sendmail_mailtraffic: # Non-zero exit during autoconf (255) # varnish_: # Non-zero exit during autoconf (2)
Az első hasábban a plugin neve látható, a második hasábban, hogy használatban van-e, és a 3. hasábban pedig hogy ajánlja-e a rendszer a használatát. A lista alatt pedig a hibás teszteredményeket produkált bővítmények láthatók. Jelen szituációban a postgres_ kezdetű bővítmények jeleztek hibát, ami érthető is, mivel ez a rendszer nem tartalmazza a PostgreSQL adatbáziskezelő motort. Hasonlóan a sendmail bővítmények sem működnek, mivel a Sendmail rendszer sincs telepítve (helyette ugye a Postfix-et használjuk a szerveren).
A lista harmadik hasábjában tájékozódhatunk a nem bekapcsolható bővítményekkel kapcsolatos hibákról is. Például nem tudnak olvasni egy adott naplófájlt, vagy különböző függőségi problémáik vannak, stb. Ezeket a hibákat külön szükséges orvosolni, majd ezután bekapcsolható a plugin.
Plugin-ok kézi bekapcsolása:
Ha a listánkban találunk olyan bővítményt, ami nincs bekapcsolva, viszont ajánlja a rendszer, azt a következőképpen kapcsolhatjuk be: az elérhető bővítmények könyvtárából (/usr/share/munin/plugins) kell átlinkelni a bekapcsolt plugin-ok könyvtárába (/etc/munin/plugins) az adott fájlt:
ln -s /usr/share/munin/plugins/<plugin_pontos_neve> /etc/munin/plugins/<plugin_pontos_neve>
Plugin-ok automatikus bekapcsolása:
Vannak azonban olyan bővítmények is, amik "_" karakterrel végződnek, ezeknél nem elég a pontos fájlnév alapján történő belinkelés, hanem még valamilyen utótagot is hozzá kell fűzni a szimbolikus link nevéhez, ami az adott grafikonra vonatkozik. Ezért célszerűbb az automatikus link összeállítást lekérni, ami kiadja nekünk a szükséges shell parancssorokat. Ehhez futtassuk az alábbi parancsot:
munin-node-configure --suggest --shell
Itt a --shell opcióval állítjuk át a programot, hogy ne az előző táblázatos formában adja ki nekünk a bővítmények listáját, hanem a futtatható ln parancsokat állítsa nekünk össze a pontos fájlneveket tartalmazó paraméterekkel. Ha pedig ennek a kimenetét egyből le is szeretnénk futtatni, azaz automatikusan bekapcsolni az összes ajánlott bővítményt, akkor irányítsuk át ennek a kimenetét egy csővezetéken egy shell-be:
munin-node-configure --suggest --shell | sh
Ekkor végrehajtásra kerül a kiadott "ln -s" kezdetű parancsok teljes listája.
A plugin-ok bekapcsolása után pedig mindig újra kell indítani a Munin node-ot:
systemctl restart munin-node
IP
Az "IP_" plugin segítségével figyelhetjük a szerverünk és egy vagy több IP-cím között lebonyolított adatforgalmat. Használatára akkor lehet szükség, ha például több számítógépből álló szerverkörnyezettel rendelkezünk, és a szerverek közötti adatforgalmat kívánjuk figyelni. Például ha az adatbázis kiszolgálónk egy másik szerverről működik, vagy például egy másik gépen másodlagos névszerver szolgáltatást üzemeltetünk, stb. Normál esetben, egy gépes környezetben nincs sok értelme használni.
A bővítmény egy "wildcard" bővítmény, ami azt jelenti, hogy segítségével több grafikont is létrehozhatunk (alapból ezért nem kerül aktiválásra). Bekapcsolása úgy történik, hogy a link nevébe bele kell tenni a figyelni kívánt IP-címet is. Például:
ln -s /usr/share/munin/plugins/ip_ /etc/munin/plugins/ip_192.168.1.100
ln -s /usr/share/munin/plugins/ip_ /etc/munin/plugins/ip_192.168.1.101
ln -s /usr/share/munin/plugins/ip_ /etc/munin/plugins/ip_192.168.1.102
Tehát ezzel a logikával bármennyi linket létrehozhatunk a szerverünk és egy-egy IP-cím közötti forgalom figyelésére. Mindegyik link ugyanarra az "ip_" nevű plugin fájlra kell hogy mutasson.
A plugin-ok bekapcsolása után indítsuk újra a Munin node-ot:
systemctl restart munin-node
MySQL
Ha a szerveren futtatunk MySQL kiszolgálót, akkor érdemes bekapcsolni ezt a bővítmény csoportot. Ezen a szerveren fut a MySQL, viszont a fenti listában függőségi hibát jelez. Ennek javításához telepítenünk kell két csomagot:
apt-get -y install libcache-{perl,cache-perl}
Az egyszerűsített parancs két csomagot telepít (libcache-perl és libcache-cache-perl), amiknek persze még vannak további függőségeik, így összesen 5 csomag kerül telepítésre. Ha ezek felkerültek, be is kapcsolhatjuk a MySQL bővítmény összes grafikonját a fentebb már leírt módszerrel:
munin-node-configure --suggest --shell | sh
Valamint még van néhány plugin, amit az automatika nem kapcsol be, de kézi linkeléssel még hozzájuthatunk néhány hasznos MySQL grafikonhoz:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/mysql_bytes mysql_bytes
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
Ezután még szükség lesz a /etc/mysql/debian.cnf defaults fájl beállítására is, mert a bővítmény ebből a fájlból olvassa ki a hozzáférést az adatbázis szerverünkhöz, amitől aztán le tudja kérdezni a statisztika készítéséhez szükséges adatokat. Ennek a fájlnak a beállításáról itt tájékozódhatunk.
Majd indítsuk újra a Munin node-ot:
systemctl restart munin-node
Ezután ha újra ellenőrizzük az elemző részben a bővítményt:
munin-node-configure --suggest
Akkor már láthatjuk, hogy a mysql_ kezdetű grafikonok mind be vannak kapcsolva.
Itt előfordulhat, hogy a MySQL grafikonok közül néhány nem jelenik meg adatot, valamint a Munin naplófájljában is dobálhatnak hibákat, akkor ezeket a bővítményeket ki lehet kapcsolni. Ez teljesen a szerverkörnyezettől függ, hogy egyes plugin-ok/grafikonok nem gyűjtenek adatokat. De erről majd később...
Ezek a MySQL grafikonok nagyon hasznosak, főleg amikor egy nagyobb szerver terhelés történik, mert ezek segítségével könnyen kielemezhetjük szerverünk, illetve a rajta futtatott weboldalak gyenge pontjait, amin aztán javíthatunk.
IPMI
Az IPMI (Intelligent Platform Management Interface) plugin segítségével mérhetjük a rendszer és a különböző perifériák, mint például a RAM-ok hőmérsékletét. A bővítmény a fenti lista alapján hiányolja az ipmitool csomagot. Ha be szeretnénk kapcsolni ezt a bővítményt, akkor telepítsük:
apt-get -y install ipmitool
(VirtualBoxban nem működik)
Ezután kapcsoljuk be a bővítmény grafikonjait:
ln -s /usr/share/munin/plugins/ipmi_ /etc/munin/plugins/ipmi_temp
ln -s /usr/share/munin/plugins/ipmi_ /etc/munin/plugins/ipmi_fans
ln -s /usr/share/munin/plugins/ipmi_ /etc/munin/plugins/ipmi_power
És ne felejtsük el újraindítani a Munin node-ot...
systemctl restart munin-node
Hddtemp és sensors
A hddtemp és sensors plugin-ok segítségével szintén hőmérsékleteket tudunk monitorozni. Korábban már készítettem egy leírást, amiben a számítógépünk különböző hardvereinek a hőmérsékleteit olvashattuk ki, most itt is szükség lesz ezekre a programcsomagokra. Tehát a linkelt oldalon leírtakhoz hasonlóan telepítsük az ehhez szükséges csomagokat:
apt-get -y install lm-sensors hddtemp smartmontools
Ezután futtassuk a szenzor detektáló programot:
sensors-detect
Itt mindenre válaszoljunk Yes-t.
Ezután indítsuk el a kmod szolgáltatást:
systemctl start kmod
Majd kapcsoljuk be a hőmérsékleteket monitorozó plugin-okat:
cd /etc/munin/plugins
ln -s /usr/share/munin/plugins/sensors_ sensors_
ln -s /usr/share/munin/plugins/hddtemp hddtemp
ln -s /usr/share/munin/plugins/hddtemp2 hddtemp2
ln -s /usr/share/munin/plugins/hddtemp_smartctl hddtemp_smartctl
Természetesen előfordulhat hogy virtuális gépen ezek közül nem működik mindegyik.
Végül indítsuk újra a Munin node-ot:
systemctl restart munin-node
Harmadik féltől származó plugin-ok telepítése
Lehetőség van további Munin bővítmények telepítésére is, amiket külső weboldalakról tölthetünk le, vagy akár magunk is elkészíthetjük őket. Az itt felsorolásra kerülő plugin-okat én már hosszú ideje használom több szerver óta, így telepítésüket és beállításukat bátran ajánlom mindenkinek.
PHP-FPM 1.
A GitHubon találtam egy PHP-FPM-et monitorozó plugin-t, ami ad néhány használható grafikont. Letöltéséhez a git programot használjuk. Először tehát telepítsük a git-et (amennyiben még nincs a renszerünkön):
apt-get install git
Lépjünk be az elérhető plugin-okat tároló könyvtárba (ahol fizikailag vannak):
cd /usr/share/munin/plugins
Majd klónozzuk le a git könyvtár tartalmát ebbe a könyvtárba:
git clone https://github.com/leprechau/php-fpm-munin-plugins.git
Ez létrehozott egy alkönyvtárat, amiben megtalálható a teljes git könyvtár tartalma: ./php-fpm-munin-plugins/.
Kapcsoljuk be a bővítményt. Mivel ez egy külső bővítmény, ennél nem működik az automatikus linkelés, tehát kézzel hozzuk létre a bővítményhez tartozó grafikonok linkjeit, majd indítsuk újra a Munint:
ln -s /usr/share/munin/plugins/php-fpm-munin-plugins/phpfpm_check /etc/munin/plugins/phpfpm_average
ln -s /usr/share/munin/plugins/php-fpm-munin-plugins/phpfpm_check /etc/munin/plugins/phpfpm_connection
ln -s /usr/share/munin/plugins/php-fpm-munin-plugins/phpfpm_check /etc/munin/plugins/phpfpm_memory
ln -s /usr/share/munin/plugins/php-fpm-munin-plugins/phpfpm_check /etc/munin/plugins/phpfpm_process
ln -s /usr/share/munin/plugins/php-fpm-munin-plugins/phpfpm_check /etc/munin/plugins/phpfpm_status
service munin-node restart
A bővítmény grafikonjai következő Munin futáskor létrejövő "php" kategóriában érhetők el. Mivel ezt a plugin-t már 2013 óta nem fejlesztik, előfordulhat, hogy egy-két grafikon ezek közül nem gyűjt adatokat. Ezeket nyugodtan törölhetjük.
PHP-FPM 2.
Van még egy nagyon hasznos PHP-FPM grafikonokat megjelenítő bővítmény is, amit szintén a GitHubról tölthetünk le. Letöltéséhez és telepítéséhez futtassuk az alábbi parancsokat:
cd /usr/share/munin/plugins/
wget -O php-fpm https://raw.github.com/MorbZ/munin-php-fpm/master/php-fpm.php
chmod +x php-fpm
ln -s /usr/share/munin/plugins/php-fpm /etc/munin/plugins/php-fpm-memory
ln -s /usr/share/munin/plugins/php-fpm /etc/munin/plugins/php-fpm-cpu
ln -s /usr/share/munin/plugins/php-fpm /etc/munin/plugins/php-fpm-count
ln -s /usr/share/munin/plugins/php-fpm /etc/munin/plugins/php-fpm-time
service munin-node restart
Ez a plugin létrehoz egy "php-fpm" nevű kategóriát, amiben megtalálhatjuk a grafikonokat. Ezekben a grafikonokban külön PHP-FPM pool-okra bontva láthatjuk a különböző adatok gyűjtését.
PureFTPd
Ha a szerveren futtatjuk a PureFTPd FTP kiszolgálót, akkor ehhez is érdemes feltelepíteni a megfelelő bővítményt.
Először telepítsük a logtail programot, amellyel a bővítmény kezeli a megfelelő naplófájlt:
apt-get install logtail
Ezután lépjünk be a plugin-okat tároló könyvtárba:
cd /usr/share/munin/plugins
Majd hozzunk létre egy új fájlt:
nano pure-ftpd
És másoljuk bele innen a pontos tartalmat:
https://github.com/munin-monitoring/contrib/blob/master/plugins/ftp/pure-ftpd-logs
Mentsük le, és tegyük futtathatóvá:
chmod +x pure-ftpd
És linkeljük át a bekapcsolt bővítmények könyvtárába:
ln -s /usr/share/munin/plugins/pure-ftpd /etc/munin/plugins/pure-ftpd
Ezután még be kell állítani, hogy a plugin root-ként fusson, mert csak a root tudja olvasni a /var/log/syslog fájlt, amiből ez a plugin dolgozik. Ehhez a plugin-ok konfigurációs könyvtárában létre kell hozni egy beállítást a pureftpd bővítmény számára. Ezt megtehetjük egy meglévő fájlba is, de létre is hozhatunk neki egy külön fájlt. Hozzunk létre egy új fájlt, így áttekinthetőbb marad a rendszer:
nano /etc/munin/plugin-conf.d/pure-ftpd
És tegyük bele az alábbiakat:
[pure-ftpd] user root
Mentsük le és indítsuk újra a Munint:
service munin-node restart
Ennek a grafikonját a "network" kategóriában a "Pure Ftpd Logs" címmel fogjuk megtalálni a következő grafikon frissítési ciklustól.
Felesleges, vagy hibás grafikonok eltávolítása
A Munin rendszert – bár még ma is fejlesztik – nagyon rég készítették, így előfordulhat, hogy egyes grafikonok egyszerűen nem gyűjtenek adatokat, vagy hibásan működnek. Ezek felderítésére több módszer is kínálkozik.
Munin naplófájlok áttekintése
Az egyik módja a hibás bővítmények megtalálásának, ha belenézünk a Munin node naplófájljába. A /var/log/munin könyvtár tartalmazza a központi rendszer és a node naplófájljait. Ezek közül nekünk most a munin-node.log fájl vizsgálatára lesz szükségünk. Tekintsünk is bele a végébe:
tail -n 20 /var/log/munin/munin-node.log
A Debian 9-es virtuális gépen ezt a kimenetet adja:
Itt tehát láthatunk néhány hibát. Ezek közül a "hddtemp_smartctl" valamint a "sensors_" nevű bővítmények a merevlemezek hőmérsékleteit hivatottak monitorozni, azonban virtuális gépen ez a szolgáltatás nem működik, így ezen a gépen ez érthető is. Az "ntp_" kezdetű hibáknál pedig az áll a háttérben, hogy a Munin által előre beállított NTP kiszolgálók egy része már vagy nem létezik, vagy éppen nem érhetők el, stb.
Ezeket a bővítményeket érdemes kikapcsolni, hogy feleslegesen ne fussanak, illetve ne szórják tele a naplófájlt hibaüzenetekkel.
Bővítmények tesztelése
A hibás bővítmények feltérképezésének másik módja, ha a gyanús plugin-t lefuttatjuk a Munin saját tesztelő rendszerével.
Erre a megfelelő parancs a munin-run -d <plugin_neve>. Vegyük például a "sensors_", vagy valamelyik hibás ntp_ bővítményt:
munin-run -d sensors_
munin-run -d ntp_193.227.197.2
Az elsőnél látszólag nincs hiba, de ha lekérdezzük a "?" hiba változót, ott látszik, hogy 2-es hibakóddal lépett ki. A másodiknál pedig 255-ös kóddal, itt ráadásul még hibaüzenet is van.
Így tehát ránézhetünk a gyanús plugin-okra, és megvizsgálhatjuk a működésüket.
Bővítmények kikapcsolása
A felesleges bővítményeket kikapcsolhatjuk a már ismert módon is, hogy töröljük a /etc/munin/plugins könyvtárból a linkjét, és újraindítjuk a node-ot. De van egy hatékonyabb módszer is, amivel a rendszer automatikusan leellenőrzi az összes bekapcsolt bővítményt, és a hibásakhoz elkészíti a link törlő parancsokat, amiket csak le kell futtatni. Ehhez adjuk ki a következő parancsot:
munin-node-configure --suggest --shell --remove-also
Ekkor a kimenetében kiadja az elkészített link törlő parancsokat, amikkel eltávolíthatjuk a felesleges bővítményeket.
Ha még ezt a parancsot átirányítjuk egy shell-be, akkor még végre is hajtja nekünk:
munin-node-configure --suggest --shell --remove-also | sh
Végezetül indítsuk újra a node-ot is:
systemctl restart munin-node
Jelszavas védelem beállítása a webes felületre
Ha mindennel megvagyunk, már csak egy dolog maradt hátra, hogy jelszóval védjük a Munin webes felületét, hogy elzártan tarthassuk a külvilág elől.
Hozzuk létre a jelszót tároló fájt a /etc/munin könyvtárban (ahol biztonságban lesz):
htpasswd -c /etc/munin/munin_password admin
Ekkor bekéri a megadott admin felhasználóhoz a jelszót, majd ismétlést kér. Ezután létrejön a jelszó fájl. Nyissuk meg a Munin Apache konfigurációs fájlját:
nano /etc/munin/apache24.conf
És a korábban már módosított részeken most ismét változtassunk az alábbiaknak megfelelően:
[...] <Directory /var/cache/munin/www> #Require local #Require all granted AuthUserFile /etc/munin/munin_password AuthName "Munin" AuthType Basic Require valid-user Options FollowSymLinks SymLinksIfOwnerMatch Options None </Directory> <Directory /usr/lib/munin/cgi> #Require local #Require all granted AuthUserFile /etc/munin/munin_password AuthName "Munin" AuthType Basic Require valid-user Options FollowSymLinks SymLinksIfOwnerMatch <IfModule mod_fcgid.c> SetHandler fcgid-script </IfModule> <IfModule !mod_fcgid.c> SetHandler cgi-script </IfModule> </Directory> [...]
Mindkét kódblokkban kommentezzük ki a "Require all granted" sorokat, valamint tegyük be az alattuk lévő 4-4 sort.
Végül indítsuk újra az Apache-ot:
systemctl restart apache2
Ellenőrzés
Ezután ha ráfrissítünk a Munin oldalára a böngészőben, akkor már a beléptető panel fogad:
Konklúzió
Mint láthatjuk, a Munin rendszer monitor program már nem mai darab, inkább a veterán kategóriába lehetne sorolni, viszont még ma is aktívan fejlesztik. És ha még a Debian csomagtárában is megtalálható, akkor biztosan sokan mások is hasznosnak tartják. Egy jó ideig nem volt hozzá frissítés, ezért nem is foglalkoztam a leírás készítésének gondolatával, de amikor megláttam a Debian 10 és a Debian 9 backports tárolóiban az újabb verziókat, gondoltam megér egy kis billentyűzet koptatást a dolog. Persze vannak ennél sokkal modernebb rendszerelemző szoftverek is, de én ezt már régóta használom, áttekinthetőnek és megbízhatónak tartom, így nyugodtan tudom ajánlani bárkinek.
- http://munin-monitoring.org/
- http://guide.munin-monitoring.org/en/latest/
- https://packages.debian.org/stretch-backports/munin
- https://packages.debian.org/buster/munin
- GitHub - Munin monitoring - plugins
- GitHub - Munin monitoring - plugins - pure-ftpd-logs
- Szerver monitorozása a Monit segítségével Debian és Ubuntu rendszereken
- Hogyan telepítsük a Matomo (korábban Piwik) webanalitikai szoftvert Apache rendszerű szerverünkre
- Tökéletes szerver: Debian 9 (stretch) V1.0
- Tökéletes szerver: Debian 10 (Buster) V1.0
- Tökéletes szerver: Debian 11 (Bullseye) v1.0
- Hogyan építhetjük meg és élesíthetjük ISPConfig3 szerverünket, valamint hogyan biztosíthatjuk a Let's Encrypt SSL-el kezelőpanelünket, főbb szolgáltatásainkat és weboldalainkat
Lapozó
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
- 214 megtekintés