如何解決zabbix proxy 無法訪問zabbix server時產生的大量zabbix agent不可達告警


zabbix proxy通過公網訪問zabbix server,有時會出現公網不穩定的情況,導致zabbix proxy無法訪問zabbix server。

這時會產生大量zabbix agent不可達告警。如何解決這個問題?

 

我們可以在zabbix proxy上添加一個監控項及觸發器zp2zs,探測zabbix server的網絡連通性。

zabbix proxy下的所有的zabbix agent不可達觸發器都依賴這個zp2zs觸發器即可。

這設計到跨主機告警依賴。目前似乎只能在每個zabbix agent上分別添加告警依賴。無法在模板中使用跨主機告警依賴。

 

zp2zs這個觸發器應該遵循“快速失敗,延遲恢復”的原則。如連續2分鍾都失敗則告警,連續10分鍾正常才恢復。

觸發器表達式如下:

({TRIGGER.VALUE}=0 and {Template xxxx:net.tcp.port[xxxx,xxxx].count(#2,0,eq)}=2) or ({TRIGGER.VALUE}=1 and {Template xxxx:net.tcp.port[xxxx,xxxx].count(#10,0,eq)}>0)

 

但是還有一種情況可能導致整個告警風暴。proxy 和 agent之間出現問題。

針對整個問題,我們可以在其中一台主機上添加一個觸發器。整個觸發器涉及到幾台主機,只要其中一台agent.ping沒有數據即告警,時間應該搶在常規的5分鍾沒數據即告警之前,比如設置為4分鍾。

然后所有主機的主機不可達觸發器再依賴這個觸發器,就可以達到收斂告警的效果。

這個觸發器表達式如下:

({TRIGGER.VALUE}=0 and ({xxxx:agent.ping.nodata(4m)}=1 or {xxxx:agent.ping.nodata(4m)}=1)) or ({TRIGGER.VALUE}=1 and ({xxxx:agent.ping.count(15m,1)}<15 or {xxxx:agent.ping.count(15m,1)}<15))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM