通过nagios使用MegaCli来监控raid

通过nagios使用MegaCli来监控raid

 

1.下载MegaCLI

  
  
  
  
  1. #mkdir -p /opt/build/ 
  2. #cd /opt/build/ 
  3. 在http://www.lsi.com 网站下载MegaCLI - 5.3
  4. #unzip 8.04.07_MegaCLI.zip 
  5. 解压出来安装里面linux(这两个文件见附件)
    #rpm -ivh Lib_Utils-1.00-09.noarch.rpm
    #rpm -ivh MegaCli-8.04.07-1.noarch.rpm

2.编写插件

  
  
  
  
  1. #vim /usr/lib64/nagios/plugins/check_raid 
  2.  
  3. #!/bin/bash 
  4. STATE_OK=0 
  5. STATE_WARNING=1 
  6. STATE_CRITICAL=2 
  7. STATE_UNKNOWN=3 
  8. Optimal=" Optimal" 
  9.  
  10. VDSTATE=$(/opt/MegaRAID/MegaCli/MegaCli64 -cfgdsply -aALL | /bin/grep "^State"
  11. STATE=$(/opt/MegaRAID/MegaCli/MegaCli64 -cfgdsply -aALL | /bin/grep "^State" | /bin/awk -F\: '{print $2}'
  12. #echo $? >> /tmp/vdiskstatus.log 
  13. #echo $STATE >> /tmp/vdiskstatus.log 
  14.  
  15. if [ $STATE = $Optimal ];then 
  16.         echo OK -- "Virtual Disk : $STATE" 
  17.         exit $STATE_OK 
  18. else 
  19.         echo CRITICAL -- "Virtual Disk : $STATE" 
  20.         exit $STATE_CRITICAL 
  21. fi 

3.更改插件的权限

  
  
  
  
  1. #chown nagios.nagios /usr/lib64/nagios/plugins/check_raid 
  2. #chmod 755 /usr/lib64/nagios/plugins/check_raid 

4.测试插件是否正常工作
#/usr/lib64/nagios/plugins/check_raid
OK -- Virtual Disk :  Optimal

5.给nagios用户增加sudo权限
由于MegaCli命令执行时需要root权限,所以我们需要为nagios用户创建一个sudo使nagios用户可以执行check_raid。
#visudo
增加以下行:

  
  
  
  
  1. # Allow nagios to run certain plugins as root 
  2.   nagios  ALL=(ALL) NOPASSWD: /usr/lib64/nagios/plugins/ 

注释以下行:

  
  
  
  
  1. #Defaults requiretty 

启用以下行:

  
  
  
  
  1. %wheel  ALL=(ALL)       NOPASSWD: ALL 

由于nrpe在传输的过程中也要用到root权限所以把nrpe加入到wheel组中

  
  
  
  
  1. #usermod -a -G wheel nrpe 

6.编辑被监控服务器的nrpe.cfg
增加一个新的命令:

  
  
  
  
  1. #vim /etc/nagios/nrpe.cfg 
  2. command[check_raid]=/usr/bin/sudo /usr/lib64/nagios/plugins/check_raid 

重启nrpe:

  
  
  
  
  1. #/etc/init.d/nrpe restart 

7.在nagios服务器端添加服务

  
  
  
  
  1. define service{ 
  2.         host_name               test 
  3.         service_description     raid_status 
  4.         check_period            24x7 
  5.         normal_check_interval   5 
  6.         retry_check_interval        2 
  7.         max_check_attempts      5 
  8.         notification_period             24x7 
  9.         contact_groups          admins 
  10.         check_command           check_nrpe!check_raid 
  11.         } 

验证配置文件并重启服务。

  
  
  
  
  1. #nagios -v /etc/nagios/nagios.cfg 
  2.  
  3. #/etc/init.d/nagios restart 

 

本文出自 “梦想照进现实” 博客,转载请与作者联系!

你可能感兴趣的:(raid,监控,nagios,megacli)