Linux 軟體 Raid 穩健性

Linux 軟體 Raid 穩健性

我有一個 4 磁碟 5TB raid5 設置,其中一個磁碟顯示出即將耗盡的跡象。它正在報告媒體錯誤,從 dmesg 中我可以看到幾個讀取錯誤已修正。 smartctl 確實報告了“通知”,但到目前為止還沒有出現恐慌。由於目前新磁碟相當昂貴,我開始思考 linux md 層有多強大。

如果有人能夠闡明 md 實際上如何處理磁碟錯誤,我將不勝感激。例如,md 如何處理寫入和讀取錯誤 - 磁碟被陣列拒絕(真正)需要什麼。我還讀到最近 md 支援映射壞塊。這是否意味著如果我運行內核 >3.1,我所遇到的讀取錯誤將會被映射出來,或者 md 仍會嘗試「處理它們」以使它們可用。

答案1

如果您關心數據,請立即更換磁碟。每個子系統都竭盡全力防止資料遺失,但它只能做這麼多。甚至它可以映射壞塊:當有一個時,就會有其他的

您收到了大量關於迫在眉睫的問題的警告:忽略它們就是對客戶資料的不負責任。

編輯,因為評論太長了:

我不知道你的問題到底是什麼?您想知道警告是否嚴重嗎?是的,他們是。你需要做點什麼嗎?是的,還有現在。

當某些子系統報告讀取錯誤時,它們就在那裡並且很重要。即使系統仍然能夠修正它們,兩分鐘後很可能不再出現這種情況,磁碟將被標記為故障並離線。

Linux md raid 至少與任何硬體 RAID 實作一樣值得信賴,但在最好的情況下,我認為 RAID5 是一個危險的選擇。它的問題是您在恢復過程中將不受保護,這對 RAID5 來說是一個非常繁重的情況。我認為它比某些硬體 RAID 系統更值得信賴,因為當磁碟即將發生故障時您會收到高級警告,而硬體 RAID 可能只會在事後通知您。軟體 RAID 有一些缺點,主要與效能問題有關,但可靠性不是其中之一。

不管怎樣,對於像你這樣的情況,專業的方法是立即更換磁碟,這也是我對我的私人磁碟陣列的反應(我有一個備用磁碟用於這種情況)。

答案2

這是來自我們的一台戴爾伺服器大約 6 年的經驗:當時我們沒有使用硬體 raid,因為不可能遠端偵測磁碟故障。

所以我們使用軟體raid 1 (md)。過了一會兒,突襲行動就減弱了。查看 /var/log/messages 我發現有一個與某個分區相關的 IO 錯誤列表。

我將分區重新添加到了 raid 中,不久之後它又被扔掉了。

我向戴爾支援發送了 /var/log/messages 輸出並立即獲得了一個新磁碟。這是不受支援的 Linux 風格,並且僅具有最基本的支援等級。

我們還設定了幾台其他機器,並且再也沒有遇到這些問題(即磁碟從未出現故障)。對我來說,這證明了您可以信賴 md。

我認為這對於 3.1 核心仍然適用(我還沒有這些)。

答案3

據我所知,mdadm 是一個強大的軟體RAID 實現,HD 狀態良好時很少會產生任何類型的錯誤,我有幾台配置了mdadm 的伺服器,而且我從未在日誌檔案中遇到讀取錯誤。

使用以下命令檢查陣列的狀態:

mdadm --detail /dev/mdX

但是我強烈建議您更換導致錯誤的驅動器...

相關內容