1. 程式人生 > >Raid卡CC校驗

Raid卡CC校驗

CC是consistency check,一致性校驗。

一致性校驗是磁碟陣列控制器的一種高階維護功能。它可以預先檢查陣列上的資料,以保證它們的一致性,即資料是正確的、沒有被破壞。對於有奇偶校驗值的陣列(RAID-5),一致性校驗通過資料的奇偶校驗,並且和存校驗值的盤上的校驗值進行比較,確定並糾正資料的一致性。對於映象盤,一致性校驗比較RAID-1上2塊硬碟的資料是否完全一致。不一致的需要進行同步處理。對於剩餘空間的磁碟介質consistency check一樣會進行讀校驗。

系統崩潰、意外斷電或者硬碟出現壞道,都可能導致陣列上的資料被破壞或不一致。根據硬碟的原廠家的資料,平均每進行1,000,000,000,000,000次的位元位(bit)資料傳輸,就會產生一個不可恢復的資料錯誤。以36GB硬碟為例,平均每進行3000次的全盤讀操作,就會產生1個錯誤位元組(byte)。如果在陣列不一致的狀態時,發生硬碟故障,RAID控制器就無法通過奇偶校驗計算出正確的資料,陣列將無法rebuild成功。

下面是一些與一致性檢查相關的命令示例:

MegaCli工具命令

檢視計劃一致性檢相關資訊

# MegaCli64 -AdpCcSched -Info –aALL

更改計劃一致性檢查時間

# MegaCli64 -AdpCCSched -SetSTartTime 20180914 00 -aALL

禁用一致性檢查

# MegaCli64 -AdpCcSched -Dsbl -aALL

更改一致性檢查模式,則為併發模式(同時校驗)

# MegaCli64 -AdpCcSched -ModeConc -aALL

更改一致性檢查模式,請更改排序模式(按順序校驗)

# MegaCli64 -AdpCcSched  -ModeSeq -aALL

更改一致性檢查延遲間隔(720是小時)

# MegaCli64 -AdpCcSched -SetDelay 720 -aALL

更改一致性檢查速率(預設是30%

# MegaCli64 -AdpSetProp CCRate 10 -aALL

檢視一致性檢查速率

# MegaCli64 -AdpGetProp CCRate -aALL

檢視一致性檢查的實際操作

# MegaCli64 -LDCC -ShowProg -lall -aall

顯示當前校驗的進度

# MegaCli64 -LDCC -ProgDsply -Lall -aall

手動啟動一致性檢查

# MegaCli64 -LDCC -start -lall -aall

強制啟動一致性檢查

# MegaCli64 -LDCC -start -force -lall -aall

手動停止一致性檢查

# MegaCli64 -LDCC -stop -lall -aall

如果報“Consistency Check suspended on VD. . .”之類的錯誤,可以用以下恢復

# MegaCli64 -LDCC -resume -lall -aall

不需要檢視日曆和時鐘的情況下設定一致性檢查日程(表示1個小時後進行校驗)

# MegaCli64 -AdpCCSched -SetSTartTime `date -d "+1 hour" "+%Y%m%d %H"` -aALL

storcli工具命令

檢視計劃一致性檢相關資訊

# storcli64 /call show cc

更改計劃一致性檢查時間

# storcli64 /call set cc starttime=2018/09/14 00

禁用一致性檢查

# storcli64 /call set cc=off

 

更改一致性檢查模式,則為併發模式(同時校驗)

# storcli64 /call set cc=conc

更改一致性檢查模式,請更改排序模式(按順序校驗)

# storcli64 /call set cc=seq

更改一致性檢查延遲間隔(360是小時)

# storcli64 /call set cc delay=360

檢視一致性檢查速率(預設是30%

# storcli64 /call show ccrate

更改一致性檢查速率

# storcli64 /call set ccrate=20

手動啟動一致性檢查

# storcli64 /call/vall start cc

強制啟動一致性檢查

# storcli64 /call/vall start cc force

手動停止一致性檢查

# storcli64 /call/vall stop cc 或storcli64 /call/vall pause cc

設定raid卡的時間。若要與系統時間一致,則time=systemtime

# storcli64 /call set time=20180918 15:30:00

下圖的狀態Active表示當前CC校驗啟用狀態