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