zabbix企业应用之服务器硬件信息监控

本文转自:http://dl528888.blog.51cto.com/2382721/1403893


之前介绍的zabbix监控都是属于监控服务方面,现在介绍一下zabbix监控服务器硬件信息的。

    由于我公司服务器都是使用dell(我公司是手游方面,服务器全部是dell),服务器型号有r410、r420、r710、r720,系统有centos 5.x、centos 6.x 、redhat 5.x、redhat 6.x、ubuntu 12.04、ubuntu 12.04.4等版本,对于硬件监控,我测试过ipmi、megacli、smart等,但这些监控软件的监控内容都比较少,没有通用的那种,最后找到了dell专门的omsa,满足了我的需求,下面就介绍一下使用omsa来监控dell服务器的硬件信息。

目前我监控以下的硬件信息:

1、cpu处理器状态

2、cpu省电模式状态(如果开启了省电模式,在压力大的时候,会很卡的)

3、raid状态(比如做了哪个raid模式,raid状态是否正常)

4、内存状态(可以查看当前服务器最大支持多少内存,当前多少内存,如果内存有问题,可以显示哪个位置内存故障)

5、机器温度状态(监控机器的温度是否超过阀值)

6、物理硬盘状态(监控物理硬盘是否有故障)

7、电源状态(是单电还是双电,是否有故障)

8、系统面板CMOS电池(cmos电池是否有故障)

9、网卡状态(当前的网卡数量,以及网卡是否有问题)

10、风扇(当前的风扇数量,以及是否有故障)

默认是cpu省电模式监控关闭报警,其他的监控都是15分钟监控一次,如果连续2次都有问题则报警通知。

下面是监控图

1、硬件正常的服务器监控截图


2、部分硬件不正常的监控图

可以看到此服务器的cpu开启了省电模式,并且内存条有问题

经过命令行查看,发现有问题的内存条是第一个插槽


下面是安装方法:

一、客户端

A.在redhat或者centos系统里安装

1、安装dell的yum源

1
wget -q -O - http: //linux .dell.com /repo/hardware/latest/bootstrap .cgi |  bash

2、安装omsa

1
yum  install  srvadmin-all

3、做软连接

1
2
ln -s /opt/dell/srvadmin/sbin/omreport /usr/bin/omreport
ln -s /opt/dell/srvadmin/sbin/omconfig /usr/bin/omconfig

4、关闭web模式(仅允许运行cli)

1
echo  "/usr/bin/omconfig system webserver action=stop"  >> /opt/dell/srvadmin/sbin/srvadmin-services .sh

5、启动omsa

1
/opt/dell/srvadmin/sbin/srvadmin-services.sh start

6、把omsa加入到开机启动里

1
echo  "/opt/dell/srvadmin/sbin/srvadmin-services.sh start" >> /etc/rc . local

以上是在centos或者redhat系统里安装omsa。

B.下面是在ubuntu下的安装

1、增加源

1
echo  'deb http://linux.dell.com/repo/community/ubuntu precise openmanage'  sudo  tee  -a  /etc/apt/sources .list.d /linux .dell.com.sources.list

2、检测与增加key

1
2
gpg --keyserver pool.sks-keyservers.net --recv-key 1285491434D8786F
gpg -a -- export  1285491434D8786F |  sudo  apt-key add -

3、更新源

1
apt-get update -y

4、安装omsa

1
apt-get  install  srvadmin-all -y

5、做软连接

1
2
ln -s /opt/dell/srvadmin/sbin/omreport /usr/bin/omreport
ln -s /opt/dell/srvadmin/sbin/omconfig /usr/bin/omconfig

6、启动cli模式omsa

1
service dataeng start

C.zabbix客户端的配置

1、下面是在zabbix_agentd.conf里配置

1
2
3
4
5
6
7
8
9
10
11
#follow is monitor hardware
UserParameter=hardware_battery,omreport chassis batteries| awk '/^Status/{if($NF=="Ok") {print 1} else {print 0}}'
UserParameter=hardware_cpu_model, awk -vhardware_cpu_crontol=`sudoomreport chassis biossetup| awk '/C State/{if($NF=="Enabled") {print 0} else {print 1}}' ` -vhardware_cpu_c1=`sudoomreport chassis biossetup| awk '/C1[-|E]/{if($NF=="Enabled") {print 0} else {print 1}}' 'BEGIN{if(hardware_cpu_crontol==0 && hardware_cpu_c1==0) {print 0} else {print 1}}'
UserParameter=hardware_fan_health, awk -vhardware_fan_number=`omreport chassis fans| grep -c  "^Index" ` -vhardware_fan=`omreport chassis fans| awk '/^Status/{if($NF=="Ok") count+=1}END{print count}' 'BEGIN{if(hardware_fan_number==hardware_fan) {print 1} else {print 0}}'
UserParameter=hardware_memory_health, awk -vhardware_memory=`omreport chassis memory| awk '/^Health/{print $NF}' 'BEGIN{if(hardware_memory=="Ok") {print 1} else {print 0}}'
UserParameter=hardware_nic_health, awk -vhardware_nic_number=`omreport chassis nics | grep -c  "Interface Name" ` -vhardware_nic=`omreport chassis nics | awk '/^Connection Status/{print $NF}' | wc -l`  'BEGIN{if(hardware_nic_number==hardware_nic) {print 1} else {print 0}}'
UserParameter=hardware_cpu,omreport chassis processors| awk '/^Health/{if($NF=="Ok") {print 1} else {print 0}}'
UserParameter=hardware_power_health, awk -vhardware_power_number=`omreport chassis pwrsupplies| grep -c  "Index" ` -vhardware_power=`omreport chassis pwrsupplies| awk '/^Status/{if($NF=="Ok") count+=1}END{print count}' 'BEGIN{if(hardware_power_number==hardware_power) {print 1} else {print 0}}'
UserParameter=hardware_temp,omreport chassis temps| awk '/^Status/{if($NF=="Ok") {print 1} else {print 0}}' | head -n 1
UserParameter=hardware_physics_health, awk -vhardware_physics_disk_number=`omreport storage pdisk controller=0| grep -c  "^ID" ` -vhardware_physics_disk=`omreport storage pdisk controller=0| awk '/^Status/{if($NF=="Ok") count+=1}END{print count}' 'BEGIN{if(hardware_physics_disk_number==hardware_physics_disk) {print 1} else {print 0}}'
UserParameter=hardware_virtual_health, awk -vhardware_virtual_disk_number=`omreport storage vdisk controller=0| grep -c  "^ID" ` -vhardware_virtual_disk=`omreport storage vdisk controller=0| awk '/^Status/{if($NF=="Ok") count+=1}END{print count}' 'BEGIN{if(hardware_virtual_disk_number==hardware_virtual_disk) {print 1} else {print 0}}'

2、重启zabbix_agentd服务

1
2
ps -ef|grepzabbix| grep -vgrep| awk '{print $2}' |xargskill-9
/usr/local/zabbix/sbin/zabbix_agentd-c  /usr/local/zabbix/conf/zabbix_agentd .conf

如果需要在其他系统里安装,请参看官方wiki,地址是http://linux.dell.com/wiki/index.php/Repository/hardware

二、服务端

1、模板导入

把Template Hardware Monitor导入到zabbix里(模板在附件),具体操作不介绍。

2、主机关联模板

把需要监控的硬件服务器关联此模板即可


本文转自:http://dl528888.blog.51cto.com/2382721/1403893


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值