使用Zabbix的SNMP trap監(jiān)控類型監(jiān)控設(shè)備的一個例子
本文以監(jiān)控綠盟設(shè)備為例。
1.登錄被監(jiān)控的設(shè)備的管理系統(tǒng),配置snmptrap地址指向zabbix服務(wù)器或代理服務(wù)器荧库。
snmptrap地址也叫陷阱吼肥。
2.驗證是否能在zabbix服務(wù)器或代理服務(wù)器上收到設(shè)備的trap信息黎休。(可跳過晓勇,遇到問題后再檢查)
查看設(shè)備的網(wǎng)卡名稱
tcpdump -i ens160 src 192.166.16.8
查看ens160 網(wǎng)卡收到的IP為192.166.16.8的設(shè)備的數(shù)據(jù)包
效果如下圖:
沒有tcpdump命令的話毙籽,可以使用命令yum -y install tcpdump 進行安裝役首。
3.配置zabbix_trap_receiver.pl腳本
在zabbix 服務(wù)器或者代理服務(wù)器上步绸,復(fù)制源碼目錄中的Perl腳本到 /usr/bin目錄下并賦予執(zhí)行權(quán)限
再安裝net-snmp掺逼,命令如下:
yum -y install net-snmp*
效果如下圖:
注意:如果最后snmptrapd啟動失敗,提示缺少/usr/share/snmp/snmp_perl_trapd.pl文件瓤介,原因是net-snmp相關(guān)的安裝包安裝太少吕喘,建議更換yum安裝源。
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.1/zabbix-2.2.1.tar.gz
4.找到snmptrapd的配置文件并修改
vi /etc/snmp/snmptrapd.conf
添加代碼
disableAuthorization yes
perl do "/usr/bin/zabbix_trap_receiver.pl"
disableAuthorization yes 表示不認證刑桑,接收所有團體名(community)的 trap信息
authCommunity execute public 表示只接收團體名(community)為 public 的 trap信息氯质,可以寫多行
修改完成后重啟snmptrapd服務(wù)
service snmptrapd restart
或
systemctl restart snmptrapd
注意一段時間后觀察snmptrapd狀態(tài)是否正常,時間久的話可以看到收到了設(shè)備發(fā)出的trap包
service snmptrapd status
或
systemctl status snmptrapd
5.在zabbix服務(wù)器上修改zabbix_server.conf文件以下兩處:
StartSNMPTrapper=1
SNMPTrapperFile=/tmp/zabbix_traps.tmp
(注: /usr/bin/zabbix_trap_receiver.pl腳本中設(shè)置trap信息路徑為/tmp/zabbix_traps.tmp ;所有zabbix-server的路徑應(yīng)設(shè)置一樣的.)
修改完成后重啟zabbix_server服務(wù)
service zabbix_server restart
或
systemctl restart zabbix_server
6.在zabbix服務(wù)器上配置監(jiān)控主機祠斧,添加監(jiān)控項闻察。
效果如圖所示:
監(jiān)控項:
名稱:snmptrap.fallback
類型:SNMP trap
鍵值:snmptrap.fallback
信息類型:日志
日志時間格式:hh:mm:sszyyyy/MM/dd
解析:
鍵值為snmptrap.fallback,可以接受所有未配置的trap監(jiān)控項琢锋。
7.查看監(jiān)控主機的最新數(shù)據(jù)蜓陌。
在最新數(shù)據(jù)里選擇被監(jiān)控的主機,點擊snmptrap.fallback的歷史記錄
如下圖吩蔑,在此處可以看到被監(jiān)控設(shè)備發(fā)出的trap信息钮热,但是從OID上不能明顯看出對應(yīng)的信息,因此需要為net-snmp添加mib文件烛芬。
8.在zabbix服務(wù)器或代理服務(wù)器上添加mib文件隧期。
net-snmp-config --default-mibdirs 命令可以看到mib文件位置,如下:
[root@mgmtmonitorweb02 ~]# net-snmp-config --default-mibdirs /root/.snmp/mibs:/usr/share/snmp/mibs
cd /usr/share/snmp/mibs 打開存儲mib文件的目錄
ls 可以看到自帶的mib文件赘娄,此處WAFV6-MIB.txt是我找廠商售后索取的mib文件
9.在zabbix服務(wù)器或代理服務(wù)器上應(yīng)用mib文件仆潮。
vi /etc/snmp/snmp.conf 修改此配置文件
mibs +ALL 在文件中添加此行,意思是應(yīng)用mib文件目錄下的所有mib文件
解析:
mibs +后面可以填寫mib文件的名字遣臼,如mibs +WAFV6-MIB性置,需要注意的是“+”號后直接加文件名,不可出現(xiàn)空格揍堰,否則會有錯誤鹏浅。
修改完成后重啟snmptrapd服務(wù)
service snmptrapd restart
或
systemctl restart snmptrapd
重啟注意后觀察snmptrapd狀態(tài)是否正常,時間久的話可以看到收到了設(shè)備發(fā)出的trap包屏歹。
service snmptrapd status
或
systemctl status snmptrapd
此時可以看到隐砸,OID的名字已經(jīng)發(fā)生改變。
10.在zabbix服務(wù)上驗證最新數(shù)據(jù)是否發(fā)生改變蝙眶。
此時可以看到OID不再是數(shù)字季希,而是比較容易識別的英文名字,此名字可在mib文件中修改,但不能以中文命名式塌。
11.如果需要分類trap信息博敬,可以如下圖配置監(jiān)控項。
注意:此時鍵值snmptrap[]的[]內(nèi)不再是填寫數(shù)字OID峰尝,而是監(jiān)控項snmptrap.fallback獲取到的mib文件里定義的名字偏窝,
如:snmptrap[WAFV6-MIB::alert-level]
測試snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.4' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.4 s "eth0"
參考資料:
http://www.lwops.cn/forum.php?mod=viewthread&tid=74&extra=&_dsign=8bd9d823&tdsourcetag=s_pctim_aiomsg
http://blog.chinaunix.net/uid-20469830-id-1943491.html
https://www.zabbix.com/documentation/3.4/zh/manual/config/items/itemtypes/snmptrap