Nagios
Namenjen:Spremljanju in nadzorovanju znanega omrežja
Za:Najboljše med brezplačnimi orodji
Proti:Ponekod zapleten za urejanje
Cena:Brezplačno
Spletni naslov proizvajalca:www.nagios.org/

Pregled in upravljanje računalniških omrežij kakor tudi analiza stanja omrežnih virov so večne nadloge. Na milijone programov je narejenih na to temo. Vsi pa imajo veliko napako: so ozko specializirani za določen del sistema in se jih ne da prilagoditi za svojevrstne potrebe. Potem pa naletiš na Nagios...

Ime izvira iz grške besede »agios« (svetnik) in dodatka »n«, ki pomeni omrežje (networks), in ti na začetku nič ne pove. Vendar se po branju dokumentacije zasvetijo oči, saj omogoča točno to, kar smo na začetku iskali.
Nagios je brezplačen programski paket. Zasnovan je na odprtokodni licenci (GNU GPL, različice 2), ki daje dovoljenje za neomejeno kopiranje, distribuiranje in popravljanje izvorne kode. Žal deluje le pod Linuxom in sorodnimi sistemi.

PREDNOSTI

Poglavitna prednost programskega paketa Nagios je pregled omrežnih storitev (ping, SMTP, POP3, HTTP ...) in lokalnih virov sistemov (obremenjenost pomnilnika, procesorja, trdih diskov, omrežnih sredstev ...). Vse storitve se nadzirajo vzporedno. In kar je najpomembnejše, program je zasnovan na spletnem strežniku, prek katerega je mogoče tako upravljati kot pregledovati oddaljene vire. No, še vedno boste morali osnovno konfiguracijo opraviti prek besedilne datoteke. Nikjer ni čarovnika, ki bi vse naredil namesto vas.

KAKO DELUJE

Nagios deluje s preprostimi vtičniki, ki si jih lahko uporabniki sami programirajo oziroma si prilagodijo obstoječe. S tem si pridobite pregled nad katero koli storitvijo in opremo v oddaljenih in lokalnih omrežnih delih. Mimogrede, brez teh vtičnikov je Nagios neuporaben paket, saj je arhitektura zasnovana tako, da osnovno jedro le sprejema signale od vtičnikov. Seveda so vsi vtičniki s tem ločeni od jedra, s čimer pridobimo neslutene zmožnosti pregledovanja in nadziranja. Osnovnemu jedru Nagiosa bi lahko rekli tudi ogrodje (framework).

Koncept Nagiosovega delovanja bi lahko opisali takole: Ko pride do zahteve za časovnim pregledom določenega dela, jedro pokliče vtičnik. Ta ve, kaj mora storiti. Pokliče oddaljeno storitev, jo preveri in jedru vrne rezultate. Na podlagi teh jedro izvede določena opravila, če so ta opredeljena v konfiguraciji. Z osnovno konfiguracijo programskega paketa dobite določeno število teh vtičnikov. Med njimi so vsi, ki jih boste potrebovali v začetni fazi, za več ali manj vse omrežne vire. Vse druge si jih boste morali sami programirati ali pregledati po spletnih straneh.

Da ni vse belo, mora obstajati tudi črna plat. Nagios se namreč ne zaveda težav, ki jih zaznajo paketi. Zato tudi ne zna voditi posebne grafične statistike. Edini, ki se »zavedajo«, kaj se dogaja, so vtičniki. Ti pa seveda znajo vse, kar ste jih naučili. Prav tako se jih da urediti tako, da vam statistiko in delovanje vračajo v dodatne dele zunanjih programov, kjer se potem urejajo.

Nagios »drži« svoje podatke v internih datotekah ali podatkovnem skladišču.MySQL Konfiguracija in namestitev sta dobro dokumentirana, tako da s tem ne bi smelo biti težav. Drugo so dodatki, kjer se boste včasih morali znajti sami. Prav tako boste potrebovali nekaj znanja o konfiguraciji spletnega strežnika Apache. Slednjega Nagios uporablja za prikaz vseh podatkov v trenutku in od koderkoli. Načeloma se ga da prepričati, da deluje tudi z drugimi spletnimi strežniki.

NADZOR IN PREGLED ODDALJENIH SISTEMOV

Poglavitna naloga Nagiosa (jedra) je nadzor in pregled oddaljenih sistemov. Jasno je, da z zrušitvijo določene opreme (stanje Down) odpovedo tudi vse od nje odvisne storitve. Če postane komunikacija med seboj odvisnimi deli neizvršljiva, dobite obvestilo Unreachable. S tem obvestilom vam da Nagios vedeti, da določenih odvisnih sistemov pač ne more pregledati. Jedro je dovolj pametno, da v takih primerih izvrši določena posredna dela in še dodatno preveri, ali je padel celoten sistem ali je narobe kaj v odvisnih sistemih. Običajno se to izvaja s pingom. Če dobi negativen odgovor, zaustavlja vse odvisne pregledovalnike in sporoča, da je sistem »mrtev«. V drugem primeru pa pregleduje dele, ki so odvisni, dokler ne ugotovi napake v sistemu. Za konfiguracijo in pregled odvisnih delov vam lahko rabi tudi odlično dodelan sistem hierarhije. Nagios v osnovi pregleduje samo storitve, in če te sporočijo, da je del sistema nedostopen, gre preverit tudi osnovni sistem. Prav tako zna zaznavati oddaljene vire, ki so nedostopni, od tistih, ki so samo onemogočeni. To mu uspeva s pregledom omrežne hierarhije in koncepta starševskih sistemov. Vsi pregledovani deli imajo svojo dnevniško datoteko – zgodovino. Tu se da odkriti še marsikatero podrobnost, ki vam trenutno ni dostopna prek spletnega pregleda. Omogočena pa vam je tudi samodejna rotacija dnevniških datotek.

Pregled lokalnega sistema je verjetno osnovno opravilo in je tudi najmanj zapleteno. Večje težave se pojavijo, ko dobite potrebo po nadzorovanju večjih in množice sistemov, ki so poleg vsega še na krajevno oddaljenih lokacijah. Vmes se seveda pojavljajo še usmerjevalniki in požarne pregrade. Glede konfiguracije boste že sami preštudirali, v glavnem − je izvedljivo. Nagios pa do teh oddaljenih sistemov dostopa tako, da pri neodzivnosti najprej preverja vstopno točko in šele nato, ali so od te točke odvisni deli ostali živi. Oziroma se pomika po drevesni strukturi in preverja del za delom, dokler ne ugotovi napake.

SPOROČILA O STANJIH

Stanje sistema je vedno samo troje: Up (vse je v redu) ali Down (prišlo je do napake) in Unreachable (nedoločeno oziroma sistem poskuša odkriti nadaljnje napake). Same storitve pa vrnejo štiri različne možnosti. OK, Warning (napaka, vendar še ni locirano), Critical (ne deluje), Unknown (iz neznanih razlogov storitev ni identificirana).

Vse storitve imajo seveda tudi svoje končno število kontrolnikov, da se ne bi v nedogled pregledovala ena in ista napaka. Ko program preide v to stanje, potem vrže pogled samo še na osnovne dele. Ko se ti »spravijo k sebi«, gre ponovno preverjat tudi vse vzajemno odvisne povezave. Prav tako se da nastaviti časovno ponovitev oziroma časovno odvisne kontrolnike določene storitve. Vdelan je tudi mehanizem, ki različne vire preverja samo ob nastavljenem času. Recimo, tiskalniki se verjetno »gledajo« samo v delovnem času, usmerjevalniki pa ves čas. Če ne obstaja vtičnik za pregledovanja določene storitve, zna Nagios to storiti tudi prek agentov SNMP. Ti so ponavadi že vdelani v vse pomembnejše dele strojne opreme.

ODPRAVLJANJE TEŽAV

Za skoraj vsako opravilo lahko določite tudi dogodke, ki sledijo, ko določena zadeva pade. Nagios potem poskuša odpraviti napako. Dva od pomembnejših zunanjih dodatkov sta NRPE (Nagios Remote Plug-in Executor), ki deluje na klonih Unixovih sistemov, in NCSA (Nagios Service Check Acceptor), ki deluje na platformah Windows. Oba za potrebujeta delovanje dodatno konfiguracijo. Vendar ko se enkrat nanje navadite, brez njih ne gre. Definirate lahko tudi navidezni sistem, kjer se združujejo podobni sistemi, vendar odvisni eden od drugega. S tem pridobite preglednost in predvsem hitrost pri nadzoru delovanja povezanih sistemov, ki so v odvisnosti eden od drugega.

DODATNO

Vso komunikacijo med Nagiosom in agenti je mogoče šifrirati po več standardih (DES, 3DES, LOKI97, xTEA ...). Nagios zna priti po informacije oziroma mu jih agenti pošljejo, odvisno od potrebe in zmožnosti določenega segmenta.
Vsi pregledovani deli imajo tudi svoj način obveščanja. Tega je moč urejati tudi s filtri, kjer odvisno od dogodkov predvidite, da se določena stvar ne ponavlja, kadar kontrolirate in zadeva ne deluje.

Sistem je res dodelan in omogoča konfiguracijo v točno določeni smeri, s čimer zmanjša obremenjenost in omogoča takojšnje pridobivanje natančnih informacij. Če odpove kritičen del, lahko pošlje e-poštna sporočila, SMS ali uporabi druge, pri nas manj pogoste načine obveščanja. Prav tako nas zna obvestiti, ko se »čudežno« vzpostavi prvotno stanje.

Nagios je programsko orodje, ki sistemskim skrbnikom omogoča nadzor celotnega omrežja z ene lokacije. Seveda obstajajo za ta namen v svetu tudi dražja, boljša, lepša in predvsem bolj zapletena orodja. Največja Nagiosova pomanjkljivost je, da nikoli ne uredite sistema do točke, ko boste z njim zadovoljni, saj z vsakim korakom odkrivate nove in nove zadeve. Toda če se kaj da nadzirati, Nagios to omogoča. Največje razočaranje pa je, da domači proizvajalci teh možnosti ne znajo izkoristiti.

Aleš Farkaš