监控服务器Raid状态及级别

一:因业务需要部署openstack,需要大量的物理机,每台物理机磁盘数量不一,级别不一,另外对RAID状态进行监控,当有磁盘故障导致RAID状态异常的时候,可以通过zabbix监控第一时间通知运维人员进行磁盘更换,将数据损失降低到最少,使用shell编写,只监控了几个常见的内容,其他可以根据自己的需求进行添加:

1.1:脚本内容如下:

<code>[root@IDC-D-5856 ~]# cd /apps/zabbix_agent/etc/zabbix_agentd.conf.d/
[root@IDC-D-5856 zabbix_agentd.conf.d]# cat raid_check.sh  
#!/bin/bash
#Date:20170125

#正常状态的磁盘数量
normal_disk_num(){
  NUM=`sudo /usr/bin/MegaCli64  -cfgdsply -aALL | grep "Online" | wc -l`
  echo ${NUM}
}

#故障的磁盘数量
faild_disk_num(){
  NUM=`sudo /usr/bin/MegaCli64  -AdpAllInfo -aALL   | grep "Failed Disks" | awk '{print $4}'`
  echo ${NUM}
}

#Riad 状态是否正常
check_raid_status(){
  NUM=`sudo /usr/bin/MegaCli64   -LDInfo -Lall -aALL  | grep 'State' | awk -F':' '{print $2}'| sed -e "s/^[ ]*//"`
  if test $NUM == "Optimal";then
    echo 50
  else
    echo 100
  fi
}

#获取Riad 级别
raid_level(){
R1=`sudo /usr/bin/MegaCli64 -cfgdsply -aALL  | grep "RAID Level" |awk -F: '{print $2}' | sed -e"s/^[ ]*//" | grep -c "Primary-1, Secondary-0, RAID Level Qualifier-0"`
R0=`sudo /usr/bin/MegaCli64 -cfgdsply -aALL  | grep "RAID Level" |awk -F: '{print $2}' | sed -e"s/^[ ]*//" | grep -c "Primary-0, Secondary-0, RAID Level Qualifier-0"`
R5=`sudo /usr/bin/MegaCli64 -cfgdsply -aALL  | grep "RAID Level" |awk -F: '{print $2}' | sed -e"s/^[ ]*//" | grep -c "Primary-5, Secondary-0, RAID Level Qualifier-3"`
R10=`sudo /usr/bin/MegaCli64 -cfgdsply -aALL | grep "RAID Level" |awk -F: '{print $2}' | sed -e"s/^[ ]*//" | grep -c "Primary-1, Secondary-3, RAID Level Qualifier-0"`
if [ $R1 -ge 2 ];then
  echo 10
elif [ $R1 -eq 1 ];then
  echo 1
fi
if [ $R0 -ne 0 ];then
  echo 0
fi
if [ $R5 -ne 0 ];then
  echo 5
fi

if [ $R10 -ne 0 ];then
  echo 10
fi
}

main(){
   case $1 in
    raid_level)
        raid_level;
          ;;
        faild_disk_num)
            faild_disk_num;
         ;;
    check_raid_status)
       check_raid_status;
             ;;
    normal_disk_num)
       normal_disk_num;
         ;;
    esac
}

main $1/<code>

1.2:在zabbix添加脚本后的raid卡监控截图:

监控服务器Raid状态及级别

1.3:在zabbix添加后的raid级别、正常以及故障磁盘数量的监控截图;

监控服务器Raid状态及级别


分享到:


相關文章: