Dohledový systém Zabbix V. - pokročilé metody dohledu II.

V minulém díle seriálu o dohledovém systému Zabbix jsme se seznámili s tvorbou akcí. Dnes se podívejme na další metody monitoringu jako jsou tvorba komplexního dohledového scénáře nebo-li proaktivní monitoring a na možnost automatického sledování celé síťové infrastruktury (Network discovery). V neposlední řadě se podíváme na základní monžosti použití protokolů SNMP a IPMI v dohledovém systému Zabbix.

22.6.2013 00:00 | Antonín Kolísek | přečteno 15103×

U nasazení dohledového systému v reálném prostředí je nutné často přikročit k pokročilejším metodám dohledu a pokud to jde, tak podstatnou část kroků automatizovat. K tomu slouží jak bylo naznačeno v minulém dílem funkce Akce pro tvorbu dohledových scénárů. Výhodou je možnost provádět některé základní vzdálené akce na straně hosta (restart aplikace, restart hosta, ...) automaticky. Dohledový systém v takovém případě může nahradit něktěré základní kroky, které by musel řešit IT specialista. Základním pořadavkem je samozdřejmě konektivita mezi hostem a Zabbix serverem. V minulém díle jsme si ukázali tvorbu základních akcí jako je notifikace na email v případě problému. Další z možností vedle notifikace je provedení vzdálené akce s čímž se nyní seznámíme.

Vzdálené akce

Provedení vzdálené akce je velmi zajímavá funkce, která má však jisté omezení. je nutné brát v úvahu že nejde provádět pomocí vzdáleného spouštění příkazů úplně vše. Dále záleží na platformě, na které je zabbix_agentd provozovaný. V neposlední řadě je nutné vždy dbát na bezpečnost a každou vzdálenou akci vždy pečlivě zvážit. Je bezpředmětné v případě nedostupnosti služeb server nebo služby restartovat, když je problém na příklad v nulovém místě na disku. Proto je vždy před vykonáním zvdálené akce potřeba brát ohled na příčiny vzniklého problému.

Příprava systému pro vzdálené akce

Aby bylo možné provádět vzdálené akce je nutné dodržet několik požadavků a nakonfigurovat agenta, který má podporu vzdálených akci ve výchozím stavu vypnutou. Aktivaci podpory vzdálených akcí nastavíme v konfiguračním souboru agenta.

Vzdálené akce jsou vhodné především k restartu konkrétních služeb nebo celého hosta. Mohou s výhodou posloužit také k základním správcovským úkonům jako je mazání / přesun souborů. Uvolnění místa na disku v případě že dochází místo. V neposlední řadě je velmi zajímavou možností použít vzdálené akce ve Virtuálním prostředí, kdy Zabbix může sledovat stav a vytížení Nodů a dle potřeb automaticky migrovat VM z jednoho Nodu na jiný. Použití vzdálených příkazů si ukážeme na praktickém příkladu při tvorbě scénáře.

Tvorba scénářů

Monitorovací scénáře jsou základním prvkem proaktivního monitoringu. Každý scénář je založen na eskalaci čímž rozumíme rozložení akcí v případě problému do několika kroků až do úplného vyřešení nebo neustálého přetrvávání problému. Jednotlivé fáze po sobě jdoucích akcí jsou od sebe odděleny časovým intervalem, který je minimálně 60 vteřin. Reakce na problém může být omamžitá, nebo po uplynutí stanoveného časovém intervalu. Může se opakovat až do vyřešení problému. Na následujícím příkladu můžeme vidět jednoduchý scénář.


Jednotlivé kroky u akcí jsou označeny číslem. Počet prováděných akcí není omezen. S problematikou akcí souvisí také možnost sledovat řešení problému s hlediska uživatele. V případě, že vznikne problém je možné tuto událost sledovat v nabídce Monitoring -> Events pomocí možnosti Ack čili reagováním na vzniklou událost. Jedná se o možnost komentovat vzniklý problém a navrhnout řešení. Do reakcí se může zapojít více uživatelů čímž vzniká koordinované řešení danného problému. Můžeme také u konkrétní akce nastavit, že bude provedena pouze tehdy není-li na případ reagováno, nebo naopak. Např. email o řešení problému v případě vzniklé události bude odeslán pouze pokud nebylo na událost zatím reagováno. Nastavení se provádí v položce Condition a každé požadované akce.

Hromadný test dostupnosti (Network discovery)

Zabbix umožňuje velmi efektivně sledovat hromadnou dostupnost zařízení v konkrétní počítačové síti. Můžeme v takovém případě mít k dispozici alespoň základní informace o stavu sítě v daném časovém okamžiku. Princip spočívá v neustálém kontrolování rozsahu počítačové sítě ve stanoveném časovém intervalu. Nejedná se pouze o kontrolu dostupnosti zařízení pomocí ICMP Ping, ale také dostupnost služeb (FTP, SSH, WWW, ...) a nebo hromadné zjišťování informací ze Zabbix agenta nebo SNMP agenta. Základní test dostupnosti nastavíme v Configuration -> Discovery viz následující příklad.

Hromadné sledování dostupnosti zařízení v síti je možné doplnit o automatické akce v případě (ne)dostupnosti hosta. Takový princip je vhodný například u wifi sítí kde můžeme sledovat aktuální stav připojených klientů a generovat tak mapu zařízení. Není však možné generovat topologii sítě, nicméně to je do budoucna velmi zajímavá otázka na novou funkcionalitu. Zabbix umožňuje vykonávat následující akce / operace automaticky.

Nastavení akce u hromadného sledování nalezneme v Configuration -> Actions jako Event source zvolíme Discovery a postupujeme podobně jako při tvorbě akcí, které jsme probrali v minulém příkladu. Je nutné vytvořit zvlášť akci pro nalezení hosta, která bude reagovat přirazením hosta do skupiny a akci pro odebrání hosta ze skupiny v případě, že je host nedostupný.




SNMP testy

Protokol SNMP je jedna z efektivních možností, jak monitorovat zařízení. Nutným předpokladem je podpora SNMP na straně serveru a na straně dohlíženého zařízení. Při použití SNMP je možné použít buď SNMP agenta nebo SNMP traps. Podívejme se alespoň v základu na obě možnosti. Z hlediska monitoringu serverů a stanic nenabízí SNMP nic co by neposkytoval Zabbix agent. Mnohem zajímavějším řešením je to u situace, kdy chceme zjišťovat informace o zařízeních jako jsou modemy, tiskárny, UPS, z krátka všude kde není možné provozovat Zabbix agenta.

SNMP obecně

SNMP (Simple network management protocol) je široce používaný protokol pro nastavování a čtení hodnot z aktivních síťových prvků a zařízení. Princip spočívá v poslání dotazu na konkrétní hodnotu a následně očekává odpověď. Každá hodnota je identifikována jedinečným číselným identifikátorem OID (Object Identifier), který je tvořen posloupností čísel oddělených tečkou. OID jsou uloženy v databázi která obsahuje slovní popis každé OID hodnotzy tzy MIB databázi. Na příklad hodnota 1.3.6.1.2.1.2.2.1.6.1 je popsáná textovou podobou iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifPhysAddress

SNMP agent

Agent pracuje na principu zaslání dotazu na hodnotu danému zařízení a tuto hodnotu očekává. Pro otestování můžeme použít konzolového klienta snmpwalk. Jak vše funguje bude nejlepší ukázat konkrétním příkladem.

SNMP traps

V případě použití tzv trapů je situace o něco složitější. Je nutné najprve Zabbix server připravit pro používání protokolu SNMP v tomoto režimu. Je nutné dodržet a splnit následující požadavky.

Nyní můžeme přikročit k otestování. Službu snmptrapd můžeme spustit pro ladění s parametry -f -Le kdy máme možnost sledovat komunikaci klienta snmpwalk s démonem. Náledujícím příkladem otestujeme komunikaci.

IPMI

IPMI (Intelligent Platform Management Interface) je standard umožňující vzdáleně monitorovat a administrovat servery z hlediska hardware. O vše se stará BMC (baseboard management controller), který je spojený s ostatním hardware pomocí seriové sběrnice. Umožňuje tak sledovat základní parametry hardware (napájení, teplota, otáčky ventilátorů,...). Tento protokol je dostupný u většiný serverů velkých výrobců jako je Dell, IBM, HP, Fujitsu, a další. Výhoda použití BMC je ta, že se jedná o samotný hardware, který pracuje bez ohledu na to zda je server v činnosti. Pro použití IPMI v dohledovém systému Zabbix je nutné malých úprav, které jsou následující.

V tutu dobu je situace taková, že nativní podpora IPMI v Zabbixu je pouze pro karty Intel SR1530,SR1630. Pro spolupráci s ostatním IPMI hardware je nutné sáhnout po nástroji ipmitool z projektu OpenIPMI

. Informace je možné vyčítat pomocí Zabbix agenta přidáním uživatelskékho parametru, viz následující příklad.

Další ale poměrně náročnou možností jak používat IPMI je pomocí externích parserů. Existují již hotové řešení, na které v tomto seriálu odkazuji, vzhledem k tomu, že se jedná o otestované řešení. V případě zájmu viz následující odkazy IPMI on Dell Servers, Ipmitool Summary.

Rekapitulace

V tomto díle jsme se podívali na základy některých pokročilejších metod dohledu. Zkusili jsme si vytvořit scénář a provádět vzdálené akce, které posuvají možnosti dohledového systému zase o kousek dál. Hromadné sledování sítě je také velmi zajímavou možností sledování hostů, díky čemuž máme ucelený přehled o konkrétní síti. V příštím díle se podíváme na možnosti jak Zabbix výkonově ladit a uzpůsobit pro monitoring v reálném nasazení.

Odkazy

1. Zabbix domovské stránky : http://www.zabbix.com

2. Zabbix dokumentace : http://www.zabbix.com/documentation.php

3. Zabbix - SNMP agent : https://www.zabbix.com/documentation/2.0/manual/config/items/itemtypes/snmp

4. Zabbix - SNMP trap : https://www.zabbix.com/documentation/2.0/manual/config/items/itemtypes/snmptrap

5. Zabbix - IPMI : https://www.zabbix.com/documentation/2.0/manual/config/items/itemtypes/ipmi

6. Zabbix - Network discovery : https://www.zabbix.com/documentation/2.0/manual/discovery/network_discovery

7. Zabbix wiki - IPMI on Dell servers : https://www.zabbix.com/wiki/howto/monitor/ipmi/dell

8. Zabbix wiki - Ipmitool Summary : https://www.zabbix.com/wiki/howto/monitor/ipmi/ipmitool-summary

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=1981