LINUXSOFT.cz
Nazwa użytkownika: Hasło:     
    CZ UK PL

> 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 | czytane 15110×

RELATED ARTICLES KOMENTARZE   

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.

  • editujeme /etc/zabbix/zabbix_agentd.conf a nastavíme
  • EnableRemoteCommands=1

  • restartujeme agenta
  • shell> /etc/init.d/zabbix_agent restart

  • dále je nutné vyřešit problém s oprávněním pro uživatele zabbix, editací souboru /etc/sudoers nebo použitím programu visudo přidáme následující řádky
  • povolíme uživateli zabbix spouštění všech příkazu bez hesla
  • zabbix ALL=NOPASSWD: ALL

  • a nebo povolíme uživateli zabbix restart jen konkrétních služeb (zde webový server Apache) bez hesla
  • zabbix ALL=(ALL) NOPASSWD: /etc/init.d/apache restart

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ář.

  • scénář znázorňuje sledování dostupnosti služby http : problém nastane pokud není host v Maintenance režimu (režim údržby) a hodnota triggeru dostupnost_http vykazuje problém

  • nejprve pošleme email o problému všem uživatelům ve skupině Zabbix administrators
  • pokud problém přetrvává déle než 1 hodinu, pošleme zprávu o problému uživateli root
  • v případě že problém stále přetrvává, posledním krokem je restart služby http

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.

  • spuštění vzdáleného příkazu
  • přidání / odebrání hosta
  • aktivace / deaktivace hosta
  • přidání / odebrání hosta ze skupiny
  • přiřazení / odebrání hostu šablonu

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ý.

  • v záložce Condition nastavíme pravidla pro vykonání akce. Pravidlo v příkladu říká, že budeme sledovat zařízení v rozsahu 192.168.0.1 - 192.168.0.254 a testovat, která z adres je dostupná


  • samotná akce se definuje v záložce Operations. V příkladu máme pravidlo pro přidání hosta do skupiny. Stejným postupem vytvoříme akce pro odstranění hosta.

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.

  • následující příklad vyčte počet tisků ze síťové tiskárny
  • shell> snmpwalk -t 1 -O qv -v 1 -c public 192.168.0.2 1.3.6.1.2.1.43.10.2.1.4.1.1
    shell> 3869
  • založíme odpovídající Item dle následujícího příkladu

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.

  • v systému je nutné mít nástroj snmptrapd (součást balíčku net-snmp)
  • ze zdrojových kodů Zabbixu potřebujeme skript snmptrap.sh, který v případě nutnosti editujeme
  • shell> cp zabbix/misc/snmptrap/snmptrap.sh /etc/zabbix/externalscripts/

  • je nutné mít aktivní podporu SNMP v Zabbix serveru, editujeme souboru /etc/zabbix/zabbix_server.conf a nastavíme:
  • StartSNMPTrapper=1
    SNMPTrapperFile=/tmp/my_zabbix_traps.tmp

  • nakonfigurujeme snmptrapd editujeme /etc/snmp/snmptrapd.conf
  • authCommunity log,execute public
    traphandle default /etc/zabbix/externalscripts/snmptrap.sh

  • zajistíme spuštění služby
  • shell> chkconfig --level 12345 snmptrapd on
    shell> service snmptrapd start

  • v posledním kroku založíme Item dle následujícího příkladu

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.

    snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.3' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.3 s “teststring000”

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í.

  • upravíme /etc/zabbix/zabbix_server.conf a nastavíme
  • StartIPMIPollers=3

  • je nutné mít v systému podporu OpenIPMI
  • shell> yum install OpenIPMI-tools

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.
  • nastavíme práva uživateli zabbix, editací souboru /etc/sudoers nebo použitím programu visudo
  • zabbix ALL=(ALL) NOPASSWD: /usr/bin/ipmitool sdr

  • editujeme /etc/zabbix/zabbix_agentd.conf a přidáme vlastní testy dle následujícího příkladu, který vyčítá teploty
  • UserParameter=ipmi.temp_ambient,sudo ipmitool sdr | grep "Ambient Temp" | awk '{print $4}'
    UserParameter=ipmi.temp_planar,sudo ipmitool sdr | grep "Planar Temp" | awk '{print $4}'
    UserParameter=ipmi.temp_riser,sudo ipmitool sdr | grep "Riser Temp" | awk '{print $4}'

  • dále již stačí použít test v odpovídajícím Itemu jak bylo probráno v minulých dílech

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


KOMENTARZE

Nie ma komentarzy dla tej pozycji.

Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
> Szukanie oprogramowania
1. Pacman linux
Download: 4878x
2. FreeBSD
Download: 9066x
3. PCLinuxOS-2010
Download: 8564x
4. alcolix
Download: 10947x
5. Onebase Linux
Download: 9661x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 6242x

1. xinetd
Download: 2413x
2. RDGS
Download: 937x
3. spkg
Download: 4760x
4. LinPacker
Download: 9966x
5. VFU File Manager
Download: 3198x
6. LeftHand Mała Księgowość
Download: 7203x
7. MISU pyFotoResize
Download: 2808x
8. Lefthand CRM
Download: 3563x
9. MetadataExtractor
Download: 0x
10. RCP100
Download: 3120x
11. Predaj softveru
Download: 0x
12. MSH Free Autoresponder
Download: 0x
©Pavel Kysilka - 2003-2024 | mailatlinuxsoft.cz | Design: www.megadesign.cz