這個變頻器是怎么樣一個概念呢?
我們知道Zabbix里每次監控間隔時間都是固定的,變頻器所做的事情就是改變監控頻率。
變頻器有什么好處?
在某些場景,我們會擔心因網絡抖動引起的誤報,有些告警閾值是兩次出現問題才觸發。這樣的配置有個缺點:問題發現時間是監控頻率 x 2,變頻器所做的事情就是:第一次發現閾值有問題,手動觸發一次,并將結果存庫,這樣問題發現時間是監控頻率 + 數據采集時間,極大縮短了問題發現時間。
方案
聽完這個有趣的監控思路,自己也想嘗試一番。
想在監控站點可用性上加快故障發現時間,普通的監控項變頻器可以采用zabbix_get 與zabbix_sender配合使用,實現變頻器功能;但經過一番測試,ZabbixWeb是特殊類型,需要采用其他方案。
經過一番簡單的思考,大致方案如下
需要額外開發一個仿ZabbixWebMonitor的腳本。
請求完將相關數據直接存庫。
實現
初步思考方案是簡單而美好的,但是在后續實踐過程中碰到一些問題
存入數據庫,Trigger不生效問題
還是太過年輕了,查了官網發現:ZabbixServer Trigger讀內存緩存值而非直接讀取數據庫 。
數據庫插值行不通,如何插入WebMonitor值
抓包分析zabbix_sender主動傳值,發現tcp協議request只支持agent data 跟 trapper data ,分別對應主動模式的item與自動捕獲數據的item,WebMonitor是屬于特殊item,無法直接插入值。
經過幾番測試跟思考,最終方案如下:
#1 每個Web額外添加一個Trapper類型item.
#2 原先觸發器進行改造,改為判斷兩項的總和。
效果
原來的Trigger
最后三次中加起來超過兩次異常觸發告警
看最新數據11分40秒第一次發現故障
在12分41秒的時候發出告警,也就是從故障發生到發現時間經過了1分多鐘時間
加入變頻器后
Trigger改造
可以看到在第一次發現故障后4秒就觸發了告警器
47秒發現故障,51秒將請求結果插入庫,以及發送到Zabbix trapper縮短了告警器觸發時間
-
變頻器
+關注
關注
251文章
6504瀏覽量
144247
發布評論請先 登錄
相關推薦
評論