RAID管理工具 -- MegaCli常用命令
MegaCli 是一款管理维护硬件 RAID 软件,可以通过它来了解当前 raid 卡的所有信息,包括 raid
卡的型号,raid 的阵列类型,raid 上各磁盘状态,等 。通常,我们对硬盘当前的状态不太
好确定,一般通过机房人员巡检来完成,有没有通过软件的方式来检查确定这个问题呢。
MegaCli 就可以做到,一般通过 MegaCli 的 Media Er o Count: 0 Other E ro Count: 0 这两个数
值来确定阵列中磁盘是否有问题;Medai Er o Count 表示磁盘可能错误,可能是磁盘有坏道,
这个值不为 0 值得注意,数值越大,危险系数越高,Other E ro Count 表示磁盘可能存在松
动,可能需要重新再插入。MegaCli 可以对阵列中所有的磁盘进行检测,我们可以通过脚本
的方式来检测相关参数,从而通知管理人员。
1、安装MegaCli
安装MegaCli-8.07.14-1.el7.centos.noarch.rpm
方法一:ansible ebs01 -m raw -a 'rpm -ivh /root/bcsds_upgrader_4.0.13_to_4.0.14/media/rpm/minimal/MegaCli-8.07.14-1.el7.centos.noarch.rpm'
方法二:yum install -y MegaCli-8.07.14-1.el7.centos.noarch.rpm
注意:安装完MegaCli-8.07.14-1.el7.centos.noarch.rpm命令不能执行需要执行
cp /opt/MegaRAID/MegaCli/MegaCli64 /usr/sbin/megacli64或者类似指令MegaCli64 -LDPDInfo -aal(可以这样执行/opt/MegaRAID/MegaCli/MegaCli64 -LDPDInfo -aal 原因:执行的路径不对,默认是去usr/bin下面找的)
2、常用命令:
#MegaCli -help能查看该命令支持的所有参数显示
查看卡信息
#MegaCli -AdpAllInfo -aALL
查看硬盘信息
#MegaCli -PDList -aALL
查看 VD信息
MegaCli -LDInfo -LALL -aAll
所有的日志都在当前目录下的目志文件里
有耐心的话能找到你想要的所有信息,包括错误日志
more MegaSAS.log
#查raid卡信息(生产商、电池信息及所支持的raid级别)
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL |grep -E "Product Name|BBU|Memory Size|RAID Level Supported"
#查看虚拟化(vd)和物理盘(pd)的信息,比如查看物理硬盘数,是否有硬盘offline或者degraded
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL |grep -E "Device Present" -A9
#查看硬盘是否online
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL |grep "Firmware state"
#查看硬盘是否存在物理错误(error不为0,可能会有硬盘故障即将发生)
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL |grep -i error
#查看电池信息(电池类型、电池状态、充电状态、温度等)
/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -aAll
#raid卡个数
/opt/MegaRAID/MegaCli/MegaCli64 -adpCount
#显示所有逻辑磁盘组信息(做了几组raid,raid cache的默认和当前策略,做好raid后的虚拟盘容量)
/opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -LALL -aAll
#显示所有物理盘(物理磁盘个数、大小、是否存在error)
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aAll
#显示所有物理盘物理错误
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aAll |grep -i error
#查看充电状态
/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -aALL |grep 'Charger Status'
#显示BBU状态信息,比如电池是否,如果issohgood为Yes为正常,No为异常
/opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -aALL|grep -i issohgood
#显示Raid卡型号,cache大小、Raid设置,cache策略、Disk相关信息
/opt/MegaRAID/MegaCli/MegaCli64 -cfgdsply -aALL |egrep "PDs|VDs|Product Name|Memory|BBU:"
#磁带状态的变化,从拔盘,到插盘的过程中。
Device |Normal|Damage|Rebuild|Normal
Virtual Drive |Optimal|Degraded|Degraded|Optimal
Physical Drive |Online|Failed –> Unconfigured|Rebuild|Online
#查看磁盘缓存策略(查看vd的)
/opt/MegaRAID/MegaCli/MegaCli64 -LDGetProp -Cache -LALL -aALL
#或者(查看pd的)
#/opt/MegaRAID/MegaCli/MegaCli64 -LDGetProp -DskCache -LALL -aALL
#缓存策略解释:
WT (Write through
WB (Write back)
NORA (No read ahead)
RA (Read ahead)
ADRA (Adaptive read ahead)
Cached
Direct
例子:
查看raid级别
/opt/MegaRAID/MegaCli/MegaCli64 -cfgdsply -aALL|grep "RAID Level"|tail -1|awk -F: '{print $1" :"$2}'
查看raid卡信息
#查看物理磁盘重建进度
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ShowProg -PhysDrv [1:5] -a0
或者以动态可视化文字界面显示
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ProgDsply -PhysDrv [1:5] -a0
#磁带状态的变化,从拔盘,到插盘的过程中:
Device |Normal|Damage|Rebuild|Normal
Virtual Drive |Optimal|Degraded|Degraded|Optimal
Physical Drive |Online|Failed –> Unconfigured|Rebuild|Online
软raid
cat /proc/mdstat #查看级别,状态等信息1
硬件raid
dmesg | grep -i raid #查看raid厂商,型号,级别
cat /proc/scsi/scsi
lspci | grep -i raid #查看当前Raid卡固件信息
dmidecode -t system #查看机器型号和SN
# 需要安装命令
megacli -adpallinfo -a0
megacli -pdlist -aall | grep "Firmware st" #查看磁盘状态
megacli -cfgdsply -aall #显示raid型号。设置、disk相关信息
---------------------
#RAID Level对应关系:
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0 RAID 1
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0 RAID 0
RAID Level : Primary-5, Secondary-0, RAID Level Qualifier-3 RAID 5
RAID Level : Primary-1, Secondary-3, RAID Level Qualifier-0 RAID 10