This is a translation of the original English documentation page. Help us make it better.

3 Dependència dels triggers

Vista general

De vegades, la disponibilitat d'un equip depèn d'un altre. Un servidor darrere d'un encaminador es tornarà inaccessible si l'encaminador falla. Amb els triggers configurats per a tots dos, és possible que rebeu notificacions sobre dos equips caiguts, quan només l'encaminador era el culpable.

Aquí és on una certa dependència entre els equips pot ser útil. Amb el conjunt de dependències, les notificacions dels dependents es poden retindre i només es poden enviar notificacions de problemes d'arrel.

Tot i que Zabbix no admet directament dependències entre equips, es poden configurar amb un altre mètode més flexible: dependències de triggers. Un trigger pot tindre un o més triggers dels quals en depèn.

Per tant, en el nostre exemple senzill, obrim el formulari de configuració del trigger del servidor i el configurem perquè depengui del trigger de l'encaminador respectiu. Amb aquesta dependència, el trigger del servidor no canviarà d'estat mentre el trigger del qual depèn sigui a l'estat 'PROBLEMA' i, per tant, no es farà cap acció dependent i no s'enviarà cap notificació.

Si el servidor i l'encaminador són inactius i hi ha una dependència, Zabbix no realitzarà accions per al trigger dependent.

Mentre el trigger principal es trobi en l'estat PROBLEMA, els seus dependents poden informar de valors no fiables. Per tant, els triggers dependents no es tornaran a avaluar fins que el trigger principal (l'encaminador de l'exemple anterior):

  • canvia el seu estat de 'PROBLEMA' a 'DESCONEGUT';
  • es tanca manualment, per correlació o emprant funcions de data i hora i/o nodata();
  • es resol amb un valor d'un element no implicat al trigger dependent;
  • és desactivat, té un element desactivat o un equip d'elements desactivat.

Tingueu en compte que el trigger "secundari" (depenent) en els casos esmentats anteriorment no s'actualitzarà immediatament. Quan el trigger principal sigui en estat PROBLEMA, els seus dependents poden informar de valors dels quals no podem confiar. Per tant, el trigger dependent només es tornarà a avaluar i canviarà d'estat després que el trigger principal sigui en estat correcte i rebem mètriques fiables.

També:

  • La dependència del trigger es pot afegir des de qualsevol trigger de l'equip a qualsevol altre trigger de l'equip, sempre que no doni lloc a una dependència circular.
  • La dependència del trigger es pot afegir de plantilla a plantilla. Si un trigger de plantilla A depèn d'un trigger de plantilla B, aleshores la plantilla A només es pot vincular a un equip (o una altra plantilla) amb la plantilla B, però la plantilla B es pot vincular només a un equip (o a un altre model).
  • Es pot afegir una dependència de trigger des d'un trigger de plantilla a un trigger d'equip. En aquest cas, l'enllaç d'aquesta plantilla a un equip crearà un trigger de l'equip que depèn del mateix trigger de la plantilla del trigger del qual depenia el trigger. Això permet, per exemple, tindre un model on alguns triggers depenguin dels triggers de l'encaminador (equip). Tots els equips vinculats a aquest model dependran d'aquest encaminador específic.
  • No es pot afegir la dependència del trigger d'un trigger d'equip a un trigger de plantilla.
  • La dependència del trigger es pot afegir d'un prototip de trigger a un altre prototip de trigger (dins de la mateixa regla de descoberta de baix nivell) o a un trigger real. Un prototip de trigger no pot dependre d'un prototip de trigger d'una regla LLD diferent o d'un trigger creat a partir d'un prototip de trigger. El prototip de trigger de l'equip no pot dependre d'un trigger de plantilla.

Configuració

Per definir una dependència, obriu la pestanya Dependències a un trigger formulari de configuració. Feu clic a Afegir al bloc 'Dependències' i trieu un o més triggers dels quals dependrà el nostre trigger.

Feu clic a Actualitzar. Ara el trigger té una indicació de la seva dependència a la llista.

Exemple de dependències múltiples

Per exemple, un equip (equip) és darrere d'un encaminador (encaminador2) i l'encaminador2 és darrere d'un altre encaminador (encaminador1).

 Zabbix - Router1 - Router2 - Equip

Si l'encaminador 1 és caigut, òbviament, l'equip i l'encaminador 2 també no són accessibles, però no volem rebre les tres notificacions de que l'equip, l'encaminador 1 i l'encaminador 2 estan caigudes.

Per tant, en aquest cas, definim dues dependències:

 El trigger "L'equip és caigut" depèn del trigger "L'encaminador 2 és apagat".
        El trigger "L'encaminador 2 és caigut" depèn del trigger "L'encaminador 1 és caigut".

Abans de canviar l'estat del trigger "L'equip és caigut", Zabbix comprovarà les dependències de trigger corresponents. Si en troba i un d'aquests triggers és en estat "Problema", l'estat del trigger no canviarà i, per tant, no s'executaran accions i no s'enviaran notificacions.

Zabbix realitza aquesta comprovació de forma recursiva. Si l'encaminador1 o l'encaminador2 no és accessible, el trigger de l'equip no s'actualitzarà.