Zabbix
Sisukord
Sissejuhatus
TODO
Üks eelis mis zabbixiga kohe silma torkab on tema item-trigger arhidektuur, mis tundub nagiosilt tulles harjumatu aga lubab samas kiirelt ise erinevaid uusi jälgimisaluseid objekte ehk itemeid tekitada (defineerides nt lihtsalt shelli või sql käske konfifaili ja defineerides nad ümber itemite väärtusteks ja sealt juba sündmusteks). Ehk zabbixil pole vaja keerukaid pluginaid ehitada vaid saab nö jooksvalt ning kiirelt mingeid asju jälgimise alla lisada ning neist graafikuid joonistada
Serveri paigaldus Debianis
TODO
Peale installi saab zabbixisse logida kasutajaga Admin ja parooliga zabbix
Zabbixi häirete (alerts) emailiga saatmiseks tuleb menüüst Administration avada Media types ning valida meedium "Email"
Serveri paigaldus centosis
Paigaldame zabbixi repo
yum -y install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
Installime vajalikud paketid ning mariadb-serveri
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server zabbix-get
Stardime andmebaasi
systemctl start mariadb systemctl status mariadb
Kliendi paigaldus
Debianis
apt-get install zabbix-agent service zabbix-agent start
Seejärel tuleb meil failis /etc/zabbix/zabbix_agentd.conf muuta zabbixi serveri ip aadress sobivaks
sed -i 's/192.168.0.100/127.0.0.1/g' zabbix_agentd.conf
Selleks, et klient midagi hakkaks jälgima tuleb sellega siduda sobivaid itemeid ja triggereid sisaldav template. Näiteks linuxi serveri puhul võiks olla esmaseks templateks Linux Server template.
Templated
Tegemist on failiga, kus on defineeritud itemite nimed ning neile seadistatud triggerid. Templatesid saab tõmmata nii valmiskujul internetist, kui luua ise. Näiteks sisaldab Zabbixiga kaasa tulev template nimega "Operating System Linux" tervet hulka ketaste, cpu, mälu ja swapiga seotud itemeid ning nendega seotud triggereid.
Itemid
Item on jälgimise all olev parameeter näiteks võrguliiklus, päringutele vastamise keskmine aeg, cpu koormus jne
Go to: Configuration ? Hosts Click on Items in the row of the host Click on Create item in the upper right corner of the screen Enter parameters of the item in the form
Iseloodud itemitega on võimalik kontrollida ka mingi IP peal olevate teenuste portide toimimist, nt
net.tcp.service[http,192.168.0.4,80] net.tcp.service[http,192.168.0,4,443] net.tcp.service[http,192.168.0,4,81]
Soovides käivitada süsteemis käske ja luua nende väljundi baasil itemeid
# instance version UserParameter=pgsql.version,psql -U zabbix zabbix -Atc 'select version()'
Kontrollimiseks on hea töövahend zabbix_get
$ zabbix_get -s 127.0.0.1 -k pgsql.version PostgreSQL 8.3.3 on i486-pc-linux-gnu, compiled by GCC cc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
Päästikud ehk triggerid
Trigger on mingile itemile omistatud tingimus, mille peale trigger rakendub. Näiteks võib itemiks olla cpu koormus ja triggeri ülesandeks on rakenduda ja raporteerida kui see jõuab 80% juurde.
Trigger rakendub, kui crash.running väärtus on midagi muud kui runnning
{crashplan_1:crash.running.str("running")}=0´
crashplan_1 on siis siin template nimeks ning crash.running on muutujaks
Trigger mis rakendub mitme itemi koosmõjul
({server2:system.cpu.util[].nodata(755)}=1)&({server1inger[cl.verio].last(0)}=1)
Alerdid
Alerdid on sündmused mis genereeritakse triggerite rakendumise peale ja tavaliselt on selleks administraatori postkasti emaili saatmine
Zabbixi vaikimisi teavituste template ei lisa emaili subjekti serveri nime millega oli prolbeem, selle parandamiseks tuleb minnaConfiguration > actions
Ja seadistada Default subject ümber selliseks
{TRIGGER.STATUS}: {HOSTNAME} {TRIGGER.NAME}
Zabbixi teadete (alerts) meiliga saatmiseks tuleb menüüst Administration avada Media types ning seadistada meedium „Email“.
Web screnario
Zabbix lubab koostada ka keerukamaid veebilehtede sisu pihta toimuvaid kontrolle, kus ta jälgib veebilehe vastamiskiirust, veakoode ning üritab ka vajadusel etteantud urlile logida ja seal mingeid kindlaksmääratuid toiminguid sooritada.
Go to Configuration → Hosts, pick a host and click on Web in the row of that host. Then click on Create scenario.
Trigger tuleb ise sellele luua ning seda saab teha järgneva näite alusel
{hostinimi:web.test.fail[Scenario nimi].last()}<>0
Samamoodi saame testida ka seda, et vastuskood on õige, seehulgas tasub tähele panna, et selle checki jaoks oleks hea kui screnario nimes poleks tühikuid
{<HOSTNAME>:web.test.rspcode[<SCENARIO NAME>,<STEP NAME>].last()}<>200
Aga triggeri saab luua ka näiteks selle peale kui veebilehe vastamiskiirus on liiga aeglane
https://sysadminwork.com/monitoring-website-with-zabbix/
https://www.zabbix.com/documentation/3.4/manual/web_monitoring/example
https://www.zabbix.com/documentation/3.4/manual/web_monitoring/items
Passive või Active check
Zabbixil on kliendilt info pärimiseks(checkide) kaks reziimi
- Passive check : Zabbix server saadab kliendi IP aadressile päringu (nt CPU loadi kohta) ning agent edastab vajaliku info serverile
- Active check : Agent võtab serveriga ise ühendust, küsib talt nimekirja asjadest mida ta peab tegema ning edastab infot perioodiliselt serverile tagasi
Active check sobib seega hästi olukorras, kus monitooritavad serverid asuvad tulemüüri taga ning zabbix server ei oma neile otsest ligipääsu.
Active checki kasutavas serveris tuleks esiteks /etc/zabbix/zabbix_agentd.conf failis kirjeldada järgnevad asjad
ServerActive=Zabbix serveri IP Hostname=Kliendi hostname # see peab olema kindlasti sama mis defineeritud zabbixi veebiliideses StartAgents=0
Selleks, et active checki kasutada on vaja zabbixi mallides (template) vahetada objektide (itemite) juures Zabbix agent ümber Zabbix agent activeks. Näiteks ühe enamlevinud Zabbixiga kaasa tuleva Linuxi põhiparameetrite monitooringuks mõeldud template ümberseadistamiseks tuleb teha järgnevad sammud.
- Vali Configuration, templates, Template OS Linux ning kliki Full Clone nupule
- Anna uuele kloonile nimi, nt Template OS Linux Active ning vajuta add
- Vali sama template mille just lõime uuesti ning kliki Items nupule
- Vali kõik avanevad objektid ning vajuta Mass Update ning go.
- Vali Type ning muuda see Zabbix agendi pealt ümber Zabbix agent (active)
Seejärel võib värske template active checkiga monitooritavale masinale külge lisada.