Zabbix SNMP LLD實(shí)踐(自動發(fā)現(xiàn))

                    基于場景進(jìn)行學(xué)習(xí),脫離場景談技術(shù)都是耍流氓。

在使用Zabbix監(jiān)控網(wǎng)絡(luò)設(shè)備的時候,經(jīng)常會遇到這樣的工作場景:
需要監(jiān)控一個某個OID下的所有的對象,如下圖監(jiān)控華三交換機(jī)的電源模塊的狀態(tài)。 要監(jiān)控的OID都有擁有同一個父OID,只是最后一位的數(shù)字不同。

image.png

這時候我們最好使用LLD功能,讓Zabbix自動創(chuàng)建監(jiān)控的item。

下面我們就說說怎么用LLD來做這個事兒。
目的:通過LLD能夠自動創(chuàng)建item,避免繁瑣對手動一個一個創(chuàng)建item。同時帶來的一個好處是,即使被監(jiān)控對對象發(fā)生變化(比如上圖對4個子OID某一天變成了10個),ZBX也能夠自動匹配出變化后對數(shù)據(jù)。

第一步,在Zabbix中創(chuàng)建LLD規(guī)則


image.png

各個字段解釋:
名稱:就是這個LLD規(guī)則的名字,無需多說
類型:根據(jù)SNMP版本進(jìn)行選擇,我用的V2
鍵值:因?yàn)閦abbix要求每一個監(jiān)控項都要有唯一對key,所以我們此處填寫一個,有意義即可。注意:這個值和我們最終想要自動創(chuàng)建對對item不是一回事,所以不需要太注意,自己看懂就行。
主機(jī)接口:一般是默認(rèn)的,設(shè)備對IP和接口信息。
SNMP community: 團(tuán)體名

SNMP OID:最重要的其實(shí)就是這個字段
Zabbix在系統(tǒng)內(nèi)部已經(jīng)內(nèi)置了一個自動發(fā)現(xiàn)函數(shù)discovery,這個函數(shù)有兩個 參數(shù),參數(shù)一是{#SNMPVALUE},通過在輪訓(xùn)參數(shù)二這個 OID之后獲得的數(shù)據(jù),參數(shù)二是OID(父級 別OID)。
按照圖片進(jìn)行配置之后,實(shí)現(xiàn)了一個什么效果呢?
Zabbix會通過調(diào)用discovery函數(shù),輪訓(xùn)參數(shù)二的OID(理解為用命令snmpwalk 參數(shù)二OID就可以),將獲取到的結(jié)果,賦值給{#SNMPVALUE}。
所以這個步驟配置完成之后,{#SNMPVALUE}的結(jié)果就類似于一個數(shù)組,里面存有所有子OID和對應(yīng)數(shù)據(jù)。

現(xiàn)在我們已經(jīng)通過步驟一拿到了類似于snmpwalk的結(jié)果并賦值給了{(lán)#SNMPVALUE}。那怎么把這個結(jié)果進(jìn)行處理,讓系統(tǒng)獲得子OID命名對item,這就進(jìn)入到item原型配置界面了。如下:

image.png

在咱們創(chuàng)建對LLD規(guī)則中新建 “監(jiān)控項原型”。這是就會有人問,啥叫監(jiān)控項原型?我語文不好,給解釋下唄。好,你可以這樣理解,我們不是通過LLD自動創(chuàng)建item嗎,那item按照什么格式創(chuàng)建啊?比如,創(chuàng)建出來對item名稱是啥, key又是啥 , item分組分到哪里???這些信息就叫做,監(jiān)控項原型。

各個字段說明:
名稱:就是LLD要創(chuàng)建對item的name
類型:根據(jù)版本選擇,不多說了
鍵值:就是創(chuàng)建對item對key咋定義的
SNMP OID:這個oid和上個圖片中的oid有啥區(qū)別?
這樣理解,步驟一需要填寫的是父OID,因?yàn)樵谏蠄D中我們需要根據(jù)規(guī)則輪訓(xùn)父oid的所有數(shù)據(jù),得到了所有子oid和對應(yīng)對值。
而在這個界面我們需要定義 “父oid. index” 這樣一個東西,{#SNMPINDEX}是zabbix內(nèi)置變量,就是咱們snmpwalk 父oid之后結(jié)果的最后一位。
所以到這里就知道了,“父oid. index” 其實(shí)就是咱們定義的子OID的表達(dá)式

稍等片刻,最后得到如下的效果:


image.png

所以總結(jié)一下就是,通過步驟一獲得所有父節(jié)點(diǎn)下的數(shù)據(jù)(所以步驟一填寫父節(jié)點(diǎn)OID),通過步驟二定義item原型,對步驟一拿到對數(shù)據(jù)進(jìn)行切分處理。(所以步驟二是子節(jié)點(diǎn)對OID),這里稍微注意一下Zabbix對內(nèi)置函數(shù)和變量(disvovery,{#SNMPVALUE},{#SNMPINDEX})就可以輕松理解使用LLD這個功能了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容