ESXI上安装MegaCli磁盘检测工具

ESXI上安装MegaCli

wget  http://www.lsi.com/downloads/Public/RAID%20Controllers/RAID%20Controllers%20Common%20Files/8.07.07_MegaCLI.zip

esxcli software vib install -v /tmp/vmware-esx-MegaCli-8.07.07.vib --no-sig-check
mkdir -p /opt/MegaRAID/MegaCli
cd  /opt/MegaRAID/MegaCli
ln  -s /opt/lsi/MegaCLI/MegaCli MegaCli64
ln  -s /opt/lsi/MegaCLI/libstorelib.so  libstorelib.so


/opt/MegaRAID/MegaCli/MegaCli64        -LDinfo -Lall -aAll   查看raid状态
/opt/MegaRAID/MegaCli/MegaCli64         -PDList -aAll    查看每块物理磁盘信息(可以看到具体哪块磁盘出问题)
/opt/MegaRAID/MegaCli/MegaCli64         -PDList -aAll  |  grep  "Firmware state:" 
/opt/MegaRAID/MegaCli/MegaCli64          -PDList -aAll  |  grep  "Raw Size:"
/opt/MegaRAID/MegaCli/MegaCli64          -PDList -aAll  |  grep  "Slot Number:"
/opt/MegaRAID/MegaCli/MegaCli64          -AdpAllInfo -aALL     查raid卡信息            
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -aAll      查看电池信息
/opt/MegaRAID/MegaCli/MegaCli64           -FwTermLog -Dsply -aALL 查看raid卡日志
/opt/MegaRAID/MegaCli/MegaCli64            -adpCount             显示适配器个数
/opt/MegaRAID/MegaCli/MegaCli64           -AdpGetTime –aALL    显示适配器时间
/opt/MegaRAID/MegaCli/MegaCli64            -AdpAllInfo -aAll     显示所有适配器信息
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -GetBbuStatus -aALL |grep ‘Charger Status’ 查看充电状态
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -GetBbuStatus -aALL 显示BBU状态信息
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -GetBbuCapacityInfo -aALL  显示BBU容量信息 
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -GetBbuDesignInfo -aALL    显示BBU设计参数
/opt/MegaRAID/MegaCli/MegaCli64           -AdpBbuCmd -GetBbuProperties -aALL    显示当前BBU属性
/opt/MegaRAID/MegaCli/MegaCli64           -cfgdsply -aALL       显示Raid卡型号,Raid设置,Disk相关信息


使用crontab定时监控硬盘状态的小脚本,该脚本实现在监控到硬盘故障时发出报警邮件,并关联到手机短信,以便通知运维人员及时处理。

#!/bin/sh
log_dir=/backup/autobackup/logsum/
log_name=_raid_disk_monitor
logtime=$(date +%Y%m%d --date='1 days ago')
fix=.log
host=_`hostname`
STATUS=0
echo  "Checking RAID status on $host" >$log_dir$logtime$log_name$host$fix
RAID_Contrller=`megacli -AdpAllInfo -aALL |grep "Product Name" | cut -d: -f2`
echo "Controller : $RAID_Contrller" >>$log_dir$logtime$log_name$host$fix
Online_disk_num=`megacli  -PDList -aALL | grep Online | wc -l`
echo "Totall number of Physical disks online : $Online_disk_num" >>$log_dir$logtime$log_name$host$fix
Degrade_disk=`megacli -AdpAllInfo -a0 |grep "Degrade"`
echo $Degrade_disk >>$log_dir$logtime$log_name$host$fix
Degrade_disk_num=`echo $Degrade_disk |cut -d" " -f3`
Failed_disk=`megacli -AdpAllInfo -a0 |grep "Failed Disks"`
echo $Failed_disk >>$log_dir$logtime$log_name$host$fix
Failed_disk_num=`echo $Failed_disk |cut -d" " -f4`
##将raid_disk_monitor.log scp到mail上
scp -P120 $log_dir$logtime$log_name$host$fix lai@60.*.*.*:/data/autobackup/logsum
ssh -p120 lai@60.1.1.1  "cat /data/autobackup/logsum//$(date +%Y%m%d --date='1 days ago')_raid*| mail -s "`echo "
/$(date +%Y'年'%m'月'%d'日' --date='1 days ago')ERROR:tv233_RAID卡硬盘报警"|iconv -f utf-8 -t gbk`" postmaster@126.co
m,1860531****@wo.com.cn  -- -f www@xp.com"
[ "$Degrade_disk_num" -ne 0 ] && STATUS=1
[ "$Failed_disk_num" -ne 0 ] && STATUS=1
exit $STATUS

相关帮助文档:
http://de.community.dell.com/techcenter/support-services/w/wiki/909.how-to-install-megacli-on-esxi-5-x


版权声明:本文为VmBoys原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。