3 Trigeru atkarības

Pārskats

Dažkārt viena hosta pieejamība ir atkarīga no cita hosta. Serveris, kas atrodas aiz maršrutētāja, kļūs nepieejams, ja maršrutētājs pārstās darboties. Ja abiem ir konfigurēti trigeri, varat saņemt paziņojumus par diviem nepieejamiem hostiem, lai gan problēmas cēlonis bija tikai maršrutētājs.

Šādā gadījumā var būt noderīga noteikta atkarība starp hostiem. Ja atkarība ir iestatīta, atkarīgā hosta paziņojumi var tikt aizturēti un nosūtīts tikai paziņojums par pamatproblēmu.

Lai gan Zabbix tieši neatbalsta atkarības starp hostiem, tās var definēt, izmantojot citu, elastīgāku metodi - trigeru atkarības. Trigeris var būt atkarīgs no viena vai vairākiem citiem trigeriem.

Tātad mūsu vienkāršajā piemērā mēs atveram servera trigera konfigurācijas veidlapu un iestatām, ka tas ir atkarīgs no attiecīgā maršrutētāja trigera. Ja šāda atkarība ir iestatīta, servera trigeris nemainīs savu stāvokli, kamēr trigeris, no kura tas ir atkarīgs, atrodas stāvoklī 'PROBLEM' - tādējādi netiks izpildītas atkarīgās darbības un netiks nosūtīti paziņojumi.

Ja gan serveris, gan maršrutētājs nedarbojas un starp trigeri "serveris nedarbojas" un trigeri "maršrutētājs nedarbojas" ir iestatīta atkarība, Zabbix neizpildīs darbības atkarīgajam trigerim.

Kamēr vecāktrigeris atrodas stāvoklī PROBLEM, tā atkarīgie trigeri var ziņot par vērtībām, kurām nevar uzticēties. Tāpēc atkarīgie trigeri netiks atkārtoti novērtēti, kamēr vecāktrigeris (iepriekš minētajā piemērā - maršrutētājs):

  • nepāriet no stāvokļa 'PROBLEM' atpakaļ uz stāvokli 'OK';
  • nemaina savu stāvokli no 'PROBLEM' uz 'UNKNOWN';
  • netiek manuāli aizvērts, izmantojot korelāciju vai ar date and time un/vai nodata() funkciju palīdzību;
  • netiek atrisināts ar tāda vienuma vērtību, kas nav iesaistīts atkarīgajā trigerī;
  • netiek atspējots, tam nav atspējota vienuma vai atspējota vienuma hosta

Visos iepriekš minētajos gadījumos atkarīgais trigeris (serveris) tiks atkārtoti novērtēts tikai tad, kad par to tiks saņemta jauna metrika. Tas nozīmē, ka atkarīgais trigeris var netikt atjaunināts nekavējoties.

Turklāt:

  • Trigera atkarību var pievienot no jebkura hosta trigera jebkuram citam hosta trigerim, ja vien tā nerada cirkulāru atkarību.
  • Trigera atkarību var pievienot no vienas veidnes citai. Ja kāds trigeris no veidnes A ir atkarīgs no kāda trigera no veidnes B, veidni A var piesaistīt hostam (vai citai veidnei) tikai kopā ar veidni B, taču veidni B var piesaistīt hostam (vai citai veidnei) atsevišķi.
  • Trigera atkarību var pievienot no veidnes trigera hosta trigerim. Šādā gadījumā, piesaistot šādu veidni hostam, tiks izveidots hosta trigeris, kas būs atkarīgs no tā paša veidnes trigera, no kura bija atkarīgs sākotnējais trigeris. Tas ļauj, piemēram, izveidot veidni, kurā daži trigeri ir atkarīgi no maršrutētāja (hosta) trigeriem. Visi ar šo veidni saistītie hosti būs atkarīgi no konkrētā maršrutētāja.
  • Trigera atkarību nevar pievienot no hosta trigera veidnes trigerim.
  • Trigera atkarību var pievienot no trigera prototipa citam trigera prototipam (tā paša zema līmeņa atklāšanas noteikuma ietvaros) vai reālam trigerim. Trigera prototips nevar būt atkarīgs no trigera prototipa citā ZLL noteikumā vai no trigera, kas izveidots no trigera prototipa. H ost a trigera prototips nevar būt atkarīgs no veidnes trigera.

Konfigurēšana

Lai definētu atkarību:

  1. Atveriet cilni Atkarības trigera konfigurācijas veidlapā.

  2. Sadaļā Atkarības noklikšķiniet uz Pievienot un atlasiet vienu vai vairākus trigerus, no kuriem trigeris būs atkarīgs.

  3. Noklikšķiniet uz Atjaunināt.

Tagad trigeru sarakstā ir redzama tā atkarība.

Vairāku atkarību piemērs

Piemēram, hosts atrodas aiz Router2, bet Router2 atrodas aiz Router1.

Zabbix - Router1 - Router2 - Host

Ja Router1 nedarbojas, tad acīmredzami arī hosts un Router2 nav sasniedzami, taču trīs paziņojumu saņemšana par to, ka hosts, Router1 un Router2 visi ir nedarbojošies, ir pārmērīga.

Tāpēc šajā gadījumā mēs definējam divas atkarības:

trigeris 'Host is down' ir atkarīgs no trigera 'Router2 is down'
trigeris 'Router2 is down' ir atkarīgs no trigera 'Router1 is down'

Pirms mainīt trigera 'Host is down' statusu, Zabbix pārbaudīs atbilstošās trigera atkarības. Ja tādas tiek atrastas un viens no šiem trigeriem ir stāvoklī 'Problem', trigera statuss netiks mainīts, darbības netiks izpildītas un paziņojumi netiks nosūtīti.

Zabbix veic šo pārbaudi rekursīvi. Ja Router1 vai Router2 nav sasniedzams, Host trigeris netiks atjaunināts.