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了。