Zabbix 3.2.6 经过SNMP和iDRAC监控DELL服务器

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

    登陆远程管理卡,以下。工具

wKiom1l65QLTQFaoAABU6VtrVE0469.jpg

登陆以后单击 —> iDRAC设置 —> 网络 —> 服务 —> SNMP代理,如下几个参数zabbix会用到。spa

已启用              √ 
SNMP团体名称       wzlinux 
SNMP协议          全部(SNMP v1/2/3) 
SNMP查找端口号     161

wKiom1l65WqSTDDWAAFnB5Azgb4764.jpg

三、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)

wKiom1l66YuSStN4AAArIqClWds246.jpg

三、导入模板

    模板见本文附件,“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

wKioL1l66kPTVsbzAACrvTv-boQ692.jpg

四、建立主机

Menu:Configuration->Hosts->Create host

wKiom1l66ufgz9rUAADbZ8t5e8M795.jpg


wKiom1l66ufAy90RAACDReHtX-o394.jpg

4、验证

    通过一段时间,咱们能够看到SNMP正常监控了,自带模板没有Graphs,能够本身建立须要监控的项目查看。

wKiom1l66-2yQzm7AAFgZZDvELU067.jpg


wKioL1l66-6wbwI4AAIQGB31UEA337.jpg

参考文档: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,咱们能够运行指令查看一下。

wKioL1l68ufBcgWyAAFliLS2XGM124.jpg

二、使用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了。

wKioL1l69UmyDZIoAACWwDQ7uKI433.jpg



                            wKiom1l69WSiLSRUAACmb4CVfN4122.jpg