当前位置: > Linux服务器 > 监控工具 >

Nagios添加服务之check_raid(check_megaraid_sas)

时间:2014-12-26 21:49来源:www.it.net.cn 作者:张正
本文主要介绍nagios通过check_megaraid_sas添加对主机raid卡状态的监控。

欢迎转载,请注明作者、出处。
作者:张正
blog:http://space.itpub.net/26355921 
QQ:176036317
如有疑问,欢迎联系。

 

 

目录

 

1.前提说明

 

2.前提安装

 

3.脚本安装

 

4.被监控端配置

 

5.nagios配置

 

1.前提说明

对于使用了LSI MegaRAID卡搭建RAID的主机, 通过LSI公司提供的MegaCli工具, 就可以实现对RAID卡和硬盘的监控。

 

2.前提安装

在需要被监控主机上进行以下操作:

         a. 查看服务器类型:dmidecode -s system-product-name

         b. 检查RAID卡信息:dmesg | grep RAID

         c. 确认是否已经安装工具:

[root@localhost ~]# rpm -qa | egrep 'Lib_Utils|MegaCli'

Lib_Utils-1.00-09.noarch

MegaCli-8.02.21-1.noarch

如果还没有安装,建议下载安装使用最新的MegaCli, 这样就支持更多的SAS硬盘类型的监控。安装完成后,如何正确安装,执行MegaCli会有如下提示:

[root@localhost ~]# MegaCli

Fatal error - Command Tool invoked with wrong parameters

Exit Code: 0x01

d. 使用MegaCli查看相关信息(not necessary)

# MegaCli -help  (查看命令帮助)

# MegaCli -adpCount  (查看适配器个数)
#MegaCli -LdGetNum -aALL  (查看逻辑盘个数)
# MegaCli -LdInfo -LALL -aAll  (显示所有逻辑盘信息)

3.脚本安装

下载check_megaraid_sas脚本,该脚本通过MegaCli命令来获取监控信息的Nagios插件, 使用perl编写的。

下载地址: http://www.techno-obscura.com/~delgado/code/check_megaraid_sas
        修改该脚本内容:

# vi check_megaraid_sas

a.  查找第35行:

use lib qw(/usr/lib/nagios/plugins /usr/lib64/nagios/plugins); # possible pathes to your Nagios plugins and utils.pm

修改为:
use lib qw(/usr/local/nagios/libexec); # possible pathes to your Nagios plugins and utils.pm

说明:/usr/local/nagios/libexec 为nrpe 在监控端主机上的路径。 

 

b.  查找第52-53行:

my $megaclibin = '/usr/sbin/MegaCli';  # the full path to your MegaCli binary

my $megacli = "sudo $megaclibin";      # how we actually call MegaCli

修改为:

my $megaclibin = '/usr/sbin/MegaCli';  # the full path to your MegaCli binary

my $megacli = "$megaclibin";      # how we actually call MegaCli

说明:/usr/sbin/MegaCli为MegaCli的绝对路径。

 

c.  移动脚本位置,增加执行权限:

# cp check_megaraid_sas  /usr/local/nagios/libexec/check_megaraid_sas
# chmod 755  /usr/local/nagios/libexec/check_megaraid_sas
# /usr/local/nagios/libexec/check_megaraid_sas -h      (查看使用帮助)

         # /usr/local/nagios/libexec/check_megaraid_sas     (检查状态)

OK: 0:0:RAID-10:4 drives:1.089TB:Optimal Drives:4

 

4.被监控端配置

         a. 在被监控端主机,修改:/usr/local/nagios/etc/nrpe.cfg,添加以下内容:

command[check_megaraid_sas]=/usr/local/nagios/libexec/check_megaraid_sas

b. 重启被监控端nrpe:

# ps -ef|grep nrpe

nagios 10751 1 0 09:17 ? 00:00:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

root  12961 11538  0 10:27 pts/1    00:00:00 grep nrpe

         #kill 10751

# cat /etc/rc.local |grep nrpe

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg –d

         执行该脚本,启动。

 

         c. 测试nagios监控命令:

#/usr/local/nagios/libexec/check_nrpe -H localhost -c check_megaraid_sas -t 30

正常情况下返回值为:OK: Drives:0 。若提示:command ‘check_megaraid_sas’ not defined. 则说明没有在nrpe.cfg中添加command或者没有重启nrpe进程。

 

5.nagios配置

进入nagiosql管理界面:

a. 添加命令:命令à定义à添加à输入如下图所示à保存à写入配置文件

 

 

 

 

b. 添加服务:监督à服务à输入如下配置à保存à写入配置

 

 

 

 

c. 添加主机:监督àHostà添加à输入所需配置à添加服务à保存à写入配置文件

 

 

 

d. 重启nagios:工具àNagios控制à检查配置文件(无报错后)à重新启动Nagios

 

 

 

 

最后在nagios的service中可以看到:

 

 

 

 
 

(责任编辑:IT)
------分隔线----------------------------