簡介
本文檔介紹硬碟上穿孔塊的含義。它 還描述了穿孔塊是如何發生的,以及補救步驟。
什麼是穿孔塊?
當巡檢讀取或重建操作在源驅動器上遇到介質錯誤時,它會在目標驅動器上穿透塊,以防止使用具有無效奇偶校驗的資料。對穿孔塊的任何後續讀取操作都將完成,但出現錯誤。因此,對塊的穿孔可以防止以後使用該塊時生成任何無效的奇偶校驗。
來源:12Gb/s MegaRAID® SAS軟體使用手冊,修訂版F,2014年8月
如何發生穿孔塊?
在RAID5中,資料以奇偶校驗的形式分佈在所有成員磁碟上。在這種情況下,如果其中一個驅動器出現故障,可以通過計算所有驅動器的奇偶校驗來重建資料。有多種情況可能導致穿孔,但通常首先使用RAID,該RAID具有一個故障驅動器,而該驅動器也具有許多介質錯誤或處於預測性故障狀態。
以下連結提供了一個非常好的場景,可以解釋陣列如何被穿孔:
http://www.theprojectbot.com/what-is-a-punctured-raid-array
讀完它後,您應該清楚瞭解當更換硬碟而不檢查其他磁碟時,一些錯誤的邏輯塊或介質錯誤被重新定位,然後任何其他磁碟都可能顯示為有故障。
在多個驅動器上可能會出現一個被刺破的塊,而只有1個驅動器正式「故障」。 然後,可以將其複製到替換磁碟中,使問題更加複雜。
穿孔塊症狀
伺服器可能會報告多個硬碟故障。僅更換硬碟無法解決問題。此外,I/O效能可能會降低。
被刺破的塊的證據
日誌中可能包含類似於以下行的條目。
6:2014 Jul 27 00:36:06:BMC:storage:-: SLOT-5: Unexpected sense: PD 0c(e0x12/s5) Path 500000e11986c502, CDB: 28 00 0e 71 66 e7 00 00 19 00, Sense: 3/11/01
6:2014 Jul 27 00:36:06:BMC:storage:-: SLOT-5: Unexpected sense: PD 13(e0x12/s7) Path 50000395083063f6, CDB: 28 00 0e 71 66 eb 00 00 15 00, Sense: 3/11/14
在上面的輸出中,e0x12/s5表示它與HDD5相關。以下連結說明了檢測代碼(檢測:3/11/14):
http://en.wikipedia.org/wiki/Key_Code_Qualifier
因此,該感測器指示中等錯誤。
日誌中也可以阻止以下事件:
1:2014 Jul 16 10:42:43:BMC:storage:-: SLOT-5: Unrecoverable medium error during recovery on PD 0c(e0x12/s5) at e7166e7
1:2014 Jul 16 10:42:43:BMC:storage:-: SLOT-5: Puncturing bad block on PD 0c(e0x12/s5) at e7166e7
1:2014 Jul 19 03:46:22:BMC:storage:-: SLOT-5: Consistency Check detected uncorrectable multiple medium errors (PD 13(e0x12/s7) at e7166d9 on (null))
可能的補救
無論何時出現被穿透的塊,都強烈建議進行資料備份。出現上述消息時,可能傾向於查詢出現故障的硬碟並替換它,但可能會有多個錯誤的邏輯塊分佈在整個陣列中。雖然硬碟故障或故障可能是原因,但只有通過重建受影響的虛擬驅動器才能解決被刺破的塊。
- 建立資料備份
- 清除RAID陣列配置
- 從頭開始建立新陣列
附註:附註:建立VD(虛擬驅動器)時,請選擇FULL/SLOW而不是FAST初始化。
- 重新安裝作業系統
- 恢複資料備份。
附註:更換硬碟驅動器不會自行修復被刺破的塊。如果有故障驅動器,應更換它,否則需要重建RAID。
防止穿孔塊
- 監控RAID及其成員驅動器的運行狀況。
- 更換任何硬碟之前,請檢視控制器日誌。
- 確保已開啟並運行「Patrol Reads and Consistency Checks(巡檢讀取和一致性檢查)」(檢查錯誤CSCul22968)。