MegaCli 是一款管理維護硬件RAID的軟件,它可以查看當前 raid 卡的所有信息,包括 raid卡型號,raid陣列類型,raid 上物理磁盤的狀態。通常我們很難確定當前物理硬盤的狀態,一般通過機房人員巡檢來完成,而MegaCli就可以在軟件層面來實現硬盤狀態的監控。例如通過 MegaCli 的 “Media Error Count” 和 “Other Error Count”這兩個數值來確定陣列中磁盤是否有問題。當Medai Error Count 不等於0時,表示磁盤可能有壞道,數值越大就越危險。Other Error Count 表示磁盤可能存在松動。
下載
地址:http://162.243.29.98/MegaCli-8.07.14-1.noarch.rpm
或:http://162.243.29.98/8-07-14_MegaCLI.zip
備用下載:http://download.chekiang.info/software/MegaCLI/MegaCLI_8-07-14.zip
安裝
rpm -ivh MegaCli-8.07.14-1.noarch.rpm
cd /opt/MegaRAID/MegaCli/
ln -s megacli MegaCli64
軟件會被安裝在 /opt/MegaRAID/MegaCli 目錄,運行命令 /opt/MegaRAID/MegaCli/MegaCli64 。
常用命令
megacli -AdpAllInfo -aALL [查所有適配器信息] megacli -cfgDsply -aALL [顯示Raid卡型號,Raid設置,Disk相關信息] megacli -LDInfo -Lall -aALL [查raid狀態] megacli -AdpBbuCmd -aAll [查看電池信息] megacli -FwTermLog -Dsply -aALL [查看raid卡日志] megacli -EncInfo -aALL [查看服務器硬盤卡槽信息] megacli -PDList -aALL [查所有物理硬盤信息] megacli -AdpBbuCmd -aALL [查看電池信息]
Raid 管理
RAID Level對應關系
Raid信息 Raid級別 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
創建一個 raid5 陣列,由物理盤 2,3,4 構成,該陣列的熱備盤是物理盤 5
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -Hsp[1:5] -a0
創建陣列,不指定熱備
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r5 [1:2,1:3,1:4] WB Direct -a0
查看RAID陣列中掉線的盤
/opt/MegaRAID/MegaCli/MegaCli64 -pdgetmissing -a0
刪除陣列
/opt/MegaRAID/MegaCli/MegaCli64 -CfgLdDel -L1 -a0
替換壞掉的模塊
/opt/MegaRAID/MegaCli/MegaCli64 -pdreplacemissing -physdrv[12:10] -Array5 -row0 -a0
在線添加磁盤
/opt/MegaRAID/MegaCli/MegaCli64 -LDRecon -Start -r5 -Add -PhysDrv[1:4] -L1 -a0
陣列創建完后,會有一個初始化同步塊的過程,可以看看其進度。
/opt/MegaRAID/MegaCli/MegaCli64 -LDInit -ShowProg -LALL -aALL 或者以動態可視化文字界面顯示 /opt/MegaRAID/MegaCli/MegaCli64 -LDInit -ProgDsply -LALL -aALL
查看陣列后台初始化進度
/opt/MegaRAID/MegaCli/MegaCli64 -LDBI -ShowProg -LALL -aALL
或者以動態可視化文字界面顯示
/opt/MegaRAID/MegaCli/MegaCli64 -LDBI -ProgDsply -LALL -aALL
指定第 5 塊盤作為全局熱備
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Set [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0
指定為某個陣列的專用熱備
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Set [-Dedicated [-Array1]] [-EnclAffinity] [-nonRevertible] -PhysDrv[1:5] -a0
刪除全局熱備
/opt/MegaRAID/MegaCli/MegaCli64 -PDHSP -Rmv -PhysDrv[1:5] -a0
將某塊物理盤下線/上線
/opt/MegaRAID/MegaCli/MegaCli64 -PDOffline -PhysDrv [1:4] -a0 /opt/MegaRAID/MegaCli/MegaCli64 -PDOnline -PhysDrv [1:4] -a0
手動開啟 rebuid
/opt/MegaRAID/MegaCli/MegaCli64 -pdrbld -start -physdrv[12:10] -a0
關閉 rebuild
/opt/MegaRAID/MegaCli/MegaCli64 -AdpAutoRbld -Dsbl -a0
設置rebuild的速率
/opt/MegaRAID/MegaCli/MegaCli64 -AdpSetProp RebuildRate -30 -a0
查看物理磁盤重建進度 Rebuild
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ShowProg -PhysDrv [1:5] -a0
或者以動態可視化文字界面顯示
/opt/MegaRAID/MegaCli/MegaCli64 -PDRbld -ProgDsply -PhysDrv [1:5] -a0
查看 ES
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aAll -NoLog | grep -Ei "(enclosure|slot)"
以上就是megacli的常用命令,實際中可以使用megacli來監控物理硬盤狀態。megacli的使用命令有很多,感興趣的可以詳細參考文檔。