Public:Phanousk/FRCesnet2011

Z HelpDesk

Stránka se zabývá výsledky projektu č. 371R1/2010 fondu rozvoje sdružení CESNET „Prezentace stavu IT služeb pro uživatele“.

Řešitelé a závěrečná zpráva

Poznatky vzniklé při řešení projektu

Metodika tvorby 3D sledování IT infrastruktury

Předpokládejme, že již máme v provozním stavu systém Nagios a v něm nadefinovaná sledování různých strojů a služeb. Postup vytváření nové služby:

  1. Vytipovat agregovanou službu, o které by měl mít HelpDesk (uživatel) přehled. Typicky telefonování, posílání pošty, síťový disk.
  2. Zajít za správcem dané služby a vyzpovídat ho ohledně závislostí. Tím se získá materiál pro další kolečko dotazů. V tomto kroku vzniká nutnost si začít tyto závislosti pro koncovou (agregovanou) službu kreslit.
  3. Zajít za správci všech podslužeb, na kterých je agregovaná služba závislá a vyzpovídat je ohledně dalších závislostí.
  4. Když máme nakreslený celý strom závislostí, je nutné udělat průřez grafu a co nejvíce ho zjednodušit, aby se závislosti daly v praxi použít.
  5. Po pruřezu grafu musíme vytvořené formální krabičky (například mail server, afs server, ...) namapovat na služby sledované v Nagiovi. Vyzkoušená cesta je přes plugin check_multi. Tím si vytvoříme v Nagiovi systém agregovaných služeb, který můžeme potom využít dále.
  6. Nově vytvořené služby můžeme použít pro zobrazení stavu přes NagVis.

Rozchození zobrazení v NagVisu

Potřebné věci:

  • Instalace NagVisu, můžeme se řídit i dokumentací.
  • Instalace mklivestatus
  • Zavedení NagVis uživatele readonly a ořezání jeho práv na nezbytné minimum.
  • Výroba mapy služeb v NagVisu – spárujeme ikonky s námi vytvořenými službami v Nagiovi. Veškerou grafiku (ikonky, obrázky, ...) je třeba dělat externě a pak nahrát do adresářové struktury NagVisu se správným jménem. Dokumentace zde.
  • Úprava Apache tak, aby se při použití linku na prohlížení naší mapy automaticky přihlásil uživatel readonly. Příklad zde.

Příklad služby vytvořené přes check_multi

Pro návratové hodnoty ze statusdat se vytvoří pseudoproměnná složená z <tag>_<host>_<sluzba>... např. lbnamed_HYPE2_LBNAMED. Pokud se při volání pluginu přidá parametr "-s add_tag_to_list_entries=0", pak pseudoproměnná neobsahuje "<tag>_":

cat balancer.cmd

statusdat [ lbnamed1 ] = HOST1:LBNAMED
statusdat [ lbnamed2 ] = HOST2:LBNAMED
statusdat [ poller1 ]  = HOST1:LB-POLLER
statusdat [ poller2 ]  = HOST2:LB-POLLER

state   [ OK ] = ( ( HOST1_LBNAMED == OK ) || ( HOST2_LBNAMED == OK ) ) && ( ( HOST1_LB-POLLER == OK ) || ( HOST2_LB-POLLER == OK ) )

state [ UNKNOWN  ] = (1==0)

state [ WARNING  ] = (1==0)

state   [ CRITICAL ] = ( ( HOST1_LBNAMED != OK ) && ( HOST2_LBNAMED != OK) ) || ( ( HOST1_LB-POLLER != OK ) && ( HOST2_LB-POLLER != OK ) )

volání:

nagios_server:~/multi-cmd# /usr/lib/nagios/plugins/check_multi -f ./balancer.cmd -s add_tag_to_list_entries=0 -s collapse=1 -r 1+2

Výstup do Wiki

V ideálním případě by měl být použitelný plugin NagVis. Jenže tento plugin už nějakou dobu nikdo nevyvíjí, takže se nedá použít pro nové verze NagVisu. My jsme to proto prozatím vyřešili wiki pluginem Anysite. Má to však tu nevýhodu, že mapa zůstala klikací a museli jsme pro ni globálně zrušit horní menu, takže se hůře upravuje.

Poznámky ke konfiguraci NagVis