zabbix/自動發現規則


 

 

對於zabbix 我們並不陌生 他是開源的監控系統,現在的一部分企業都在用zabbix,今天給大家分享的是企業級監控zabbix的自動發現規則,有了它我們自定義健康的時候根據宏值可以讓他自動發現對應的value 從而省去我們一部分的重復代碼 .

現需求 需要自定義一個監控腳本,目的是取各服務器三線ip地址 進行向另一端源服務器進行ping rtt和loss的請求進行判斷是否存在丟包行為。


1:不同業務,對應不同的模板,我們需要現創建一個模板,用於我們這個特殊的業務


2:創建完成后,點擊我們創建好的模板的右邊自動發現規則,右上角創建發現規則:

其中的鍵值就是我們自定義的腳本,這個腳本會在下面給大家呈現,這個腳本的目的就是取到三線的ip傳遞到另一個腳本進行ping rtt值和loss率,注意:這個腳本數出來的格式必須是json格式,用於zabbix去識別發現,而且里面的鍵要是data,下面會給大家看實例

 

3:到被監控主機的其中一台的script下定義剛才自動發現規則定義的鍵值的腳本:

其中UserParamter就是我zabbix 定義腳本位置的地方,最上面chk_kuaishou_delay[*] 就是我上面創建規則的對應鍵值,下面就是我腳本輸出的結果,大家可以看到

這是一個字典,最外面是data,data對面的value是每一個相同的key{#IPADDRES} 對面不同的value 當然蓋上的就是我的三線ip,這就是zabbix能自動發現的格式,而

key{#IPADDRES}也是固定的格式 這個格式需要待會我們在zabbix頁面上指定,這樣的話 就會為我們省去不少的功夫 他會判斷出 ipaddres是對面3個ip地址,從而達到我們要求的I效果

4:編寫腳本,將zabbix自動發現的value傳進去從而達到自動發現value去get值:

腳本如下第二個腳本就是我們的正式監控項以及觸發器,我們需要把上面的{#IPADDRES}的valu(ip) 傳遞到下面的腳本進行測試,當然這個整個過程我們只需要把第二個腳本寫出來至於參數怎么辦 完全不需要我們去考慮,因為后面我們會在頁面上定義,定義{#IPADDRES}的宏值他會自動去找着這個宏對應的三個ip然后我們再把腳本填進去就可以了

5:定義宏值,添加監控項原型,觸發器類型,以及額外的圖形:

點擊自動發現規則里面的過濾器,注意,這時候我們上面定義的{#PADDRES}就起到作用了,有的朋友會有疑問,他怎么去自動發現的,這就體現出來了,當我們定義玩這個腳本之后,將key寫到過濾器里面,這樣他就會把對應過濾器對應的value值取出來,最后的結果也就是 zabbix 定義了一個變量 {#PADDRES} = ip 也就是我們在任何一個腳本里面都可以將這個變量加傳遞進去!
 
然后我們點擊監控項原型,將我們要執行的腳本添加進去,里面傳遞進來的就是我們的宏(變量),注意,我要強調一下,這是在模板的自動發現規則里面的監控項原型定義的監控項 並不是 模板里面的監控項 兩者是不同的,當你把監控項原型定義之后,他會自動發現里面的規則,然后幫助我們自動在監控項里面添加
 
 
 
下一步,我們將觸發器類型也要定義一下
 
 
然后我們的要求是既能報警也要將圖形的匯總趨勢展現出來 這時候 我們需要點擊圖形原型 將兩個監控項傳遞進來
 
 
 
 
然后點擊更新,這時候我們的自動發現規則就完成了,如何確認已經成功了呢?,大家知道我只在模板的自動發現規則創建了監控項原型 並沒有在主機上創建監控項,當我們成功地時候 會在主機的監控項自動給我們創建監控項,圖形也會展現出來,下面請看圖
 
 
 
 
這個就是自動發現給我們創建的監控項 其中 6個監控項 分別對應 移動聯通電信,兩個腳本 所以出現2*3 圖形也是給我們展現出3線的圖形丟包rtt情況 以上就是這些 有問題歡迎咨詢 
 


免責聲明!

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



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