1、總覽linux
SNMP是監控服務器之外設備的很是好的方式,好比能夠用於監控打印機、交換機、路由器等,只要是有SNMP功能,Zabbix均可以監控。git
SNMP檢查是經過UDP協議,從Zabbix 2.2.3開始,一次SNMP請求能夠查詢設備的多個值,覆蓋到SNMP的全部項目值,這樣是SNMP進程變得更加高效,從Zabbix 2.4開始,在建立SNMP接口的地方有一個"Use bulk requests"的選項,能夠禁用對它不適用的設備。github
iDRAC又稱爲Integrated Dell Remote Access Controller,也就是集成戴爾遠程控制卡,iDRAC卡至關因而附加在服務器上的一臺小電腦,經過與服務器主板上的管理芯片BMC進行通訊,監控與管理服務器的硬件狀態信息。它擁有本身的系統和IP地址,與服務器上的OS無關。是管理員進行遠程訪問和管理的利器bash
2、安裝配置Zabbix server
服務器
一、編譯zabbix server支持
網絡
要想支持經過SNMP監控服務器信息,須要在編譯的時候加上參數--with-net-snmp,解決依賴須要安裝以下軟件包。app
yum -y install net-snmp-devel
二、配置DELL管理卡
ide
登陸遠程管理卡,以下。工具
登陸以後單擊 —> iDRAC設置 —> 網絡 —> 服務 —> SNMP代理,如下幾個參數zabbix會用到。spa
已啓用 √ SNMP團體名稱 wzlinux SNMP協議 全部(SNMP v1/2/3) SNMP查找端口號 161
三、zabbix 服務端經過snmp驗證
咱們使用的工具是snmpget,須要安裝以下軟件包支持。
yum -y install net-snmp-utils
使用以下指令簡單驗證一下,咱們使用SNMPv2版本。
snmpget -v 2c -c <Community> <iDRAC IP> .1.3.6.1.4.1.674.10892.2.1.1.2.0
# snmpget -v 2c -c wzlinux 10.0.0.99 .1.3.6.1.4.1.674.10892.2.1.1.2.0 SNMPv2-SMI::enterprises.674.10892.2.1.1.2.0 = STRING: "iDRAC8"
3、配置Zabbix WEB端
一、建立值映射
一般須要建立如下值映射,zabbix 3.0以上版本使用我附件的模板能夠自動建立。
Menu: Administration->General->Value mapping->Create value map
DellDracDiskState
1 -> Unknown 2 -> Ready 3 -> Online 4 -> Foreign 5 -> Offline 6 -> Blocked 7 -> Failed 8 -> Non-RAID 9 -> Removed
Dell iDRAC Network Device Connection Status
1 -> Connected 2 -> Disconnected Dell Open Manage System Status 1 -> Other 2 -> Unknown 3 -> OK 4 -> NonCritical 5 -> Critical 6 -> NonRecoverable
DellPowerState
1 -> Other 2 -> Unknown 3 -> Off 4 -> On
Dell PSU State Settings
1 -> Unknown 2 -> Online (state disabled) 4 -> not Ready 8 -> Fan Failure 10 -> Online and Fan Failure 16 -> On 242 -> Online and OK
DellRaidLevel
1 -> Unknown 2 -> RAID-0 3 -> RAID-1 4 -> RAID-5 5 -> RAID-6 6 -> RAID-10 7 -> RAID-50 8 -> RAID-60 9 -> Concatenated RAID 1 10 -> Concatenated RAID 5
DellRaidVolumeState
1 -> Unknown 2 -> Online 3 -> Failed 4 -> Degraded
Dell_PSU_SensorState
1 -> Presence Detected 2 -> PS Failure 4 -> Predictuve Failure 8 -> PS AC lost 16 -> AC lost or out of range 32 -> AC out of range but still present
二、配置全局變量{$SNMP_COMMUNITY_IDRAC}
Menu:Administration->General->Macros
Value處填寫iDRAC的WEB上配置的SNMP團體名(Community)
三、導入模板
模板見本文附件,「Template Dell iDrac SNMPV2 zbx2.2.xml」支持zabbix2.2版本,「Template Dell iDrac SNMPV2 zbx3.xml」支持zabbix3版本。
Menu:Configuration->Templates->Import,導入「Template Dell iDrac SNMPV2」模板。
也能夠去下載模板:https://share.zabbix.com/cat-server-hardware/dell/dell-idrac-chinese
四、建立主機
Menu:Configuration->Hosts->Create host
4、驗證
通過一段時間,咱們能夠看到SNMP正常監控了,自帶模板沒有Graphs,能夠本身建立須要監控的項目查看。
參考文檔:https://www.zabbix.com/documentation/3.2/manual/config/items/itemtypes/snmp
https://github.com/endersonmaia/zabbix-templates/tree/master/dell/idrac
附錄:自定義Item
若是你足夠的瞭解SNMP以及OID,能夠本身建立須要監控的Item。
一、獲取設備支持OID
咱們能夠經過工具snmpwalk來獲取設備支持的OID,命令使用方法以下:
snmpwalk -v 2c -c public <host IP> .
其中"-v"參數表示SNMP的版本,這裏使用的是SNMPv2,"public"是通常使用SNMP的字段,這個值在你設定SNMP的時候能夠修改,咱們這裏的是wzlinux,咱們能夠運行指令查看一下。
二、使用snmpget獲取數據
若是須要獲取服務器的端口1進來的網絡流量,應該使用IF-MIB::ifInOctets.1
# snmpget -v 2c -c wzlinux -On 10.0.0.99 IF-MIB::ifInOctets.1 .1.3.6.1.2.1.2.2.1.10.1 = Counter32: 8709650
能夠看到獲取到.1.3.6.1.2.1.2.2.1.10.1 = Counter32: 8783770,前面的數字就是OID
三、配置Item
既然已經獲取到OID,咱們就能夠本身配置Item了。