Intel® Virtual RAID on CPU (Intel® VROC) 可以保護 RAID 5 數據,即使同時發生意外斷電和 RAID 磁碟區降級。此雙重故障情況稱為 RAID 寫入孔 (RWH)。Intel® VROC 支援使用稱為 RWH 關閉的功能在 RAID 5 配置中關閉 RWH 場景的功能。這適用於啟用Intel® VROC的平臺。
注意 | 以下資訊描述了 Intel® VROC RWH 關閉功能在 Linux* 環境中的特定行為。若要瞭解一般的 Intel® VROC RWH 關閉功能,請參閱 Intel® Virtual RAID on CPU (Intel® VROC) RAID Write Hole (RWH) 關閉。 |
Intel® VROC for Linux* 實施分散式部分奇偶校驗日誌記錄 (PPL) 以關閉 RWH 方案。建立 Intel® VROC RAID 5 磁碟區後,可以通過 mdadm 公用程式啟用或停用此功能。啟用PPL配置后,異常關機後不需要重新同步陣列。PPL 配置預設為停用,除非在使用 mdadm 命令建立RAID 5扇區時明確啟用。也支援為活動的RAID 5磁碟區啟用PPL配置。
Linux* Intel® VROC支援在建立 RAID 5 磁碟區時透過 mdadm 公用程式啟用或停用 RWH 保護功能。這些選項支援禁用該功能或定義 PPL 配置的功能(使用 Intel® VROC 8.0 或更高版本時,會自動使用多個 PPL)。不再有--rwh-policy參數。相反,有一個--consistency-policy參數(或-k作為短版本)。
以 PPL 設定建立 RAID 卷的範例命令如下:
# mdadm --create /dev/md/volume -l5 --size=1G --consistency-policy=ppl -n3 /dev/sd[a-c]
若要在運行期間為活動的 RAID 磁碟區啟用/停用 PPL 配置,可以使用以下命令:
# mdadm --grow /dev/md/volume --consistency-policy=[ppl | resync]
在上面的示例命令中,使用 ppl 啟用PPL配置,或resync禁用PPL配置。成功后,上述命令不會返回任何輸出。結果可以通過檢查 RAID 卷的詳細資訊來驗證。至於成功啟用 PPL 配置,卷詳細資訊中的Consistency Policy值應設定為 ppl。至於成功禁用 PPL 配置,卷詳細資訊中的Consistency Policy值應設置為 resync。預設Consistency Policy值為 resync。
Linux* 的Intel® VROC驅動程式將能夠從由以下原因引起的 RAID 5 卷無效狀態中恢復:
RWH 關閉功能適用於停用 NVMe* 內建揮發性高速緩存。輸入 NVMe* 磁碟驅動器屬性以停用裝置上的高速緩存,然後再繼續啟用 RWH 關閉功能。如果 RAID 5 磁碟區啟用了 RWH 關閉功能,並且安裝了適用於 Linux* 的Intel® VROC驅動程式,則如果嘗試在 RAID 5 成員磁碟驅動器上啟用裝置上高速緩存,系統日誌中將會新增一條警告訊息,指出 PPL 適用於停用裝置上的揮發性高速緩存。
在 Linux* Intel® VROC 上實施的 RWH 關閉功能,將能夠在不使用其他磁碟驅動器的情況下關閉 RAID 5 RWH 狀況。這稱為 RWH 閉包功能的 PPL 分散式模式。
Linux* Intel® VROC讓用戶能夠在正常作系統作模式下啟用或停用 RWH 關閉功能。
Linux* Intel® VROC支援透過系統中現有 RAID 5 磁碟區上的 mdadm 公用程式啟用/停用 RWH 保護功能。這些選項將支援禁用該功能或定義PPL配置(PPL或多個PPL)的功能。
如果 PPL 寫入請求已中斷,並且 PPL 未完全寫入,則不會為此特定 RAID 5 I/O 請求執行 RWH 恢復過程。
Linux* Intel® VROC允許使用者在正常作系統作模式下在以下 RWH 關閉模式之間切換:PPL 分散式模式和 SATA RAID 5 磁碟區的關閉狀態。
以下是 RWH 關閉功能的限制:
若要建立已啟用 RWH 閉合的 RAID 5 磁碟區,請執行下列命令。建議先清除驅動器成員的元數據。
# mdadm -C /dev/md/imsm0 -e imsm -n4 /dev/nvme[0-3]n1
# mdadm -C /dev/md/vol0 -l5 -n4 /dev/nvme[0-3]n1 --consistency-policy=ppl
若要檢查目前的 RWH 關閉策略,請使用以下命令:
# mdadm -D /dev/md/vol0
要為正在執行的陣列啟用 RWH 關閉功能,請執行以下命令:
# mdadm --grow /dev/md/vol0 --consistency-policy=ppl
要為正在執行的陣列停用 RWH 關閉功能,請執行以下命令:
# mdadm --grow /dev/md/vol0 --consistency-policy=resync