关于Zabbix监控服务器硬的件信息,Zabbix官方网站没有提到这方面的监控思路和方法。之前我写的博文中写过关于HP服务器硬件监控的文 章,大致的思路是借助HP管理工具通过脚本的方式取出硬件的信息,然后以trapper的方式通过进行监控,得到好多博友的支持,在此特别感谢。
通过脚本的方式监控服务器硬件信息,有以下三个缺点:
1) 通过agent的方式监控会超时,取不到值。
2)通过trapper的方式需要每台机器添加crontab,部署起来麻烦。
3)脚本通用性差,只适合Windows机器。
4)G8的服务器执行管理命令非常慢。
由于通过脚本监控硬件有以上几个缺点,因此后来研究了HP代理。通过HP代理和SNMP监控HP服务器的硬件,需要安装snmp服务和HP代理工具。
#需要安装的软件包 yum install -y net-snmp net-snmp-util hpacucli-9.40-12.0.x86_64.rpm hp-snmp-agents-9.40-2506.37.rhel6.x86_64.rpm hp-health-9.40-1602.44.rhel6.x86_64.rpm #SNMP安装完成后需要修改snmpd.conf的配置文件。 dlmod cmaX /usr/lib/libcmaX.so rwcommunity sfzhang 127.0.0.1 #可读可写 rocommunity public 127.0.0.1 #只读 syscontact Root <root@localhost> syslocation Shanghai China view all included .1 80 access notConfigGroup "" any noauth exact all none none #启动相关的服务 /etc/init.d/hp-snmp-agents start /etc/init.d/hp-health start /etc/init.d/snmpd start
然后通过snmpwalk命令测试是否可以获取数据,下面获取的是HP服务器各部件的实际温度值。
创建监控模板,通过Zabbix Low-level discovery 可以自动创建监控项,触发器和图像。Zabbix官方文档中LLD支持以下三种监控自动发现:
1)文件系统自动发现
2)服务器网卡的自动发现
3)SNMP OID的自动发现
下面通过第三种方法来监控HP服务器硬件信息,以SNMP监控HP服务器阵列卡为例子来说明一下实现原理。
1)首先创建监控模板和Applications。
2)点击模板的discovery->Create discovery rule。
3)创建监控项目Create item prototype。HP代理中的MIB信息没有被解析成具体的设备名称,因此Name中的#SNMPVALUE就是为了区分多个设备名称,如 HardDisk_0_status,HardDisk_1_status表示第一个硬盘和第二个硬盘的状态。
4)创建触发器Create trigger prototype。HP服务器硬盘,阵列卡,逻辑磁盘等的状态正常返回值都是2,如果不是2,说明有问题,触发报警。
5)用同样的方法可以监控HP硬盘的状态,逻辑磁盘的状态,风扇的状态,HP各部件的温度等。
6)下面通过DDL自动发现服务器的物理硬盘的监控项和触发器,有多少个硬盘就会有多少个监控项和触发器。
7)Link模板到监控主机上面,当主机整列卡有问题的时候会报警。
本文转自 15816815732 51CTO博客,原文链接:http://blog.51cto.com/68686789/1705043