zabbix discovery / 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 也就是我們在任何一個腳本里面都可以將這個變量加傳遞進去!

 

然後我們點擊監控項原型,將我們要執行的腳本添加進去,裏面傳遞進來的就是我們的宏(變量),注意,我要強調一下,這是在模板的自動發現規則裏面的監控項原型定義的監控項 並不是 模板裏面的監控項 兩者是不同的,當你把監控項原型定義之後,他會自動發現裏面的規則,然後幫助我們自動在監控項裏面添加

 

 

 

下一步,我們將觸發器類型也要定義一下

 

 

然後我們的要求是既能報警也要將圖形的彙總趨勢展現出來 這時候 我們需要點擊圖形原型 將兩個監控項傳遞進來

 

 

 

 

然後點擊更新,這時候我們的自動發現規則就完成了,如何確認已經成功了呢?,大家知道我只在模板的自動發現規則創建了監控項原型 並沒有在主機上創建監控項,當我們成功地時候 會在主機的監控項自動給我們創建監控項,圖形也會展現出來,下面請看圖

 

 

 

 個人博客: https://igolang.cn

這個就是自動發現給我們創建的監控項 其中 6個監控項 分別對應 移動聯通電信,兩個腳本 所以出現2*3 圖形也是給我們展現出3線的圖形丟包rtt情況 以上就是這些 有問題歡迎諮詢  QQ分享羣340164542

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章