Mažose, o kartais ir vidutinio dydžio įmonėse dažnai per mažai dėmesio skiriama IT sistemų būklės stebėjimui (monitoring). Norint pakilti aukščiau paties žemiausio laiptelio ir dirbti proaktyviai, o ne vien gaisrų gesinimo principu yra reikalinga patikima ir tinkamai sukonfigūruota sistemų būklės stebėjimo sistema.
Didelėms ir sudėtingoms infrastruktūroms istoriškai dažnai buvo naudojami tokie sprendimai kaip Microsoft “SCOM“, kurį dabar keičia ne ką mažiau komplikuotas sprendimas Azure Monitor. Tokioms sistemoms teisingai įdiegti ir prižiūrėti reikia turėti nemažai žmogiškųjų išteklių IT skyriuje. Kitos didelės kompanijos, turinčios didelius vidinius IT resursus, kartais rinkdavosi konstruoti savo monitoring sistemą iš keleto skirtingų atviro kodo komponentų (Nagios CORE, Cacti, Sensu, Grafana ir daugybė kitų, priklausomai nuo norų ir poreikių) — tai suteikia neribotą lankstumą ir galimybes prisitaikyti prie įmonės IT specifikos, tačiau taip pat reikalauja daug žmogiškųjų išteklių sistemos diegimui, konfigūravimui ir administravimui. Pats esu dirbęs kompanijoje, kurioje buvo aktyviai ir sparčiai migruojama nuo Microsoft SCOM prie Sensu+Grafana.
Šiame straipsnyje aš neanalizuosiu nei vieno iš aukščiau minėtų sprendimų — įmonės, jau naudojančios ar planuojančios naudoti kažką iš tokių metodų tikriausiai nebus mano tikslinė auditorija. Vietoje to pasidalinsiu savo rekomendacija monitoring sistemai, kuri, mano nuomone, yra optimali mažam ar vidutiniam verslui su palyginus paprasta IT infrastruktūra: Zabbix. Nesakau, kad Zabbix nėra tinkama didelėms įmonėms ar kompleksiškoms IT infrastruktūroms… tiesiog, mano nuomone, Zabbix yra optimalu palyginus paprastai infrastruktūrai bei mažoms ar vidutinio dydžio įmonėms dėl gero balanso tarp diegimo/priežiūros kompleksišumo ir suteikiamų galimybių/lankstumo.
Zabbix Serverio Diegimas
Zabbix yra atviro kodo sistema, veikianti ant Linux operacinės sistemos, dėl to diegimo būdų yra ganėtinai daug:
- Viską diegtis rankiniu būdu, pačiam pasiruošiant norimą Linux serverį.
- Parsisiųsti paruoštus atvaizdus “cloud” platformoms ir tiesiog užkrauti gatavą sistemą savo pasirinktame “debesyje”.
- Naudoti paruoštus atvaizdus įvairioms tradicinėms virtualizacijos platformoms
- Kompiliuoti viską iš išeities kodo (nes tai juk atviro kodo sistema)
Kadangi diegimo procesas visiems įmanomiems variantams jau yra sudokumentuotas sistemos kūrėjų svetainėje, čia jo kartoti nematau reikalo.
Naudojimas
Zabbix palaiko skirtingus sistemos stebėjimo būdus:
- “Agent-based” — stebimoje sistemoje įdiegiama Zabbix agento programa, kuri komunikuoja su Zabbix serveriu ir praneša apie stebimos sistemos būklę, jos veikimo parametrus ir problemas.
- “Agent-less” — kai sistemoje negalima arba nenorima diegti Zabbix agento programos, ją galima stebėti universaliais metodais, per tinklą, pvz. SNMP arba specifiškai aprašytais testais.
Windows ir Linux serveriams stengiuosi naudoti metodą su agento programa, kadangi tai suteikia daugiau galimybių ir lankstumo, o tokiems įrenginiams kaip tinklo maršrutizatoriai, diskų masyvai ir pan., kur nėra galimybės įdiegti agentą, naudoju SNMP bei paprastus tinklo testus.
Zabbix turi ir paruoštą naudoti grafikų/diagramų braižymo posistemę, kuri leidžia vizualiai labai greitai pastebėti neigiamas tendencijas ar problemas. Labai patogu susikūrus aktualią “lentą” išsivesti ją į didelį televizorių ant sienos, kur gali laikas nuo laiko “užmesti akį”:
Kiekvienas serveris, kiekviena stebima sistema gali turėti labai specifiškus, tik jam aprašytus testus. Tačiau dažniausiai nebūtina tokių testų rašyti savarankiškai, nes Zabbix turi daugybę jau paruoštų šablonų. Tiesiog susirandam reikiamos sistemos šabloną, parsisiunčiam, įsidiegiam ir turim konkrečiai sistemai skirtus testus:
Pranešimų siuntimas
Viena iš pagrindinių monitoring sistemos funkcijų yra siųsti pranešimus administratoriui/operatoriui kai aptinkama problema. Zabbix tai gali daryti el. paštu, SMS žinutėmis, “chat” žinutėmis ir daugybe kitų būdų, kurie jau yra aprašyti sistemoje. Mano atveju, aš gaunu pranešimus el. paštu bei “chat” žinutėmis tiesiai į Microsoft Teams:
Tokiu būdu galiu užsitikrinti, jog bet kokius svarbius pranešimus pamatysiu laiku, net jei nestebėsiu el. pašto — iššoks Teams žinutė ekrano kampe.