監控DELL服務器硬件通常有兩種方式:
一、操做系統上安裝OMSA,編寫腳本調用omreport命令進行監控,可是它有個問題就是semaphore 超過限制致使 omsa 沒法正常運行,這個時候會發現OMSA不工做取不到任何值;
二、使用iDRAC(Integrated Dell Remote Access Controller,是一款dell專門用於遠程訪問控制接口),能夠不用在操做系統上安裝OMSA,只須要在iDRAC上開啓SNMP,而後zabbix經過SNMP進行監控。對於不支持OMSA的操做系統和要求不能安裝額外軟件的狀況下,推薦使用SNMP監控,配置簡單方便。mysql
設備硬件:DELL PowerEdge R820 主機系統:RHEL rhel6.5 X86_64 主機配置:64C/256G/16*1.2T zabbix server版本:3.4.1 zabbix server編譯參數:./configure --prefix=/usr/local/zabbix-3.4.1 --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-l ibxml2
在這以前,須要有兩個操做,若是你已經完成下列兩項,則直接開始監控操做便可web
安裝zabbix server,而且編譯安裝的時候須要帶上—with-net-snmp參數,同時net-snmp net-snmp-utils都須要事先安裝好算法
在dell服務器BIOS中開啓iDRAC功能sql
DELL服務器出廠的時候默認密碼是root/calvinbash
下列幾點須要注意(待會zabbix中會用到):
已啓用 √
SNMP團體名稱 public (默認是這個團體名稱)
SNMP協議 全部(SNMP v1/2/3)
SNMP查找端口號 161服務器
[root@zabbix-server zabbix-3.4.1]# snmpget -v 2c –c public 10.221.246.163 1.3.6.1.4.1.674.10892.5.5.1.20.130.1.1.37.1 SNMPv2-SMI::enterprises.674.10892.5.5.1.20.130.1.1.37.1 = INTEGER: 3 [root@zabbix-server zabbix-3.4.1]#
zabbix web界面 —> 管理 —> 通常 —> 值映射curl
將根據下列名稱進行值映射ide
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 Statusurl
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
這裏要說一句,網上不少文章在這裏都是輕描淡寫的一筆帶過,結果致使zabbix一直沒有監控數據出來,這裏強調兩點
一、使用SNMPv2來作監控,全局變量請使用{$SNMP_COMMUNITY},而且SNMPv2版本不須要設置好認證算法及密碼,加密算法及密碼,用戶名,zabbix界面上也不須要配置變量便可能獲取數據
二、使用SNMPv3來作監控,全局變量請使用{$SNMP_COMMUNITY_IDRAC},而且SNMPv2版本須要設置好認證算法及密碼,加密算法及密碼,用戶名,zabbix界面上也須要配置相關變量纔可獲取數據
我這裏使用的是SNMPv2來作DELL服務器的硬件監控,因此後面的步驟都是依據SNMPv2的來作,使用SNMPv3的請自行調試
zabbix web界面 —> 管理 —> 通常 —> 宏
模板我已經從官網下載,有須要的請從文章結尾處下載,我這裏使用Template_Dell_iDRAC_SNMPv2.zbx.xml
zabbix web界面 —> 配置 —> 模板 —> 導入
這裏也要說一句,模板文件路徑不要放置在有中文的路徑下,不然會出現會出現下面這莫名其妙的報錯
xml 文件導入出錯,提示 沒法讀取XML: (41) Specification mandate value for attribute data-pjax-transient [線: 43 | 列: 40]
配置--->主機--->建立主機
在SNMP接口處填寫iDRAC的IP地址,端口選擇默認的161端口,我這臺主機以前已經使用agent代理程序進行系統監控了,直接在原主機上新增SNMP
連接模板加上DELL SNMPv2模板
主機宏裏看已經繼承了全局值
模板文件下載網址:http://down.51cto.com/data/2459020