Raid

可擴展的 RAID 儲存系統

  • February 8, 2015

我目前正在為我們的辦公室建造一個儲存單元。目前它的預算相當低,但它需要可擴展。

基本上,我們有一個巨大的數據庫,在接下來的幾個月裡會大幅增長。因此,理想情況下,我們只想將硬碟扔到我們的新伺服器上。

我們還沒有購買伺服器,但正在經歷一些細節。但是,我想先回答一個問題。

擴展現有 RAID 系統有多容易?

我們將從兩個 HDD 4TB WD black 開始。但大約 1 個月後,我們需要再添加 2 個 4TB 磁碟。我們要獲得的伺服器有 12 個托架。

鏡像很重要,但是 RAID 1 僅適用於 2 個磁碟。Raid 10 已經允許我們鏡像 RAID 0。據我所見,即使是 raid 10 也可以安裝兩個磁碟。但是,在那之後會發生什麼?有什麼建議可以實現靈活的 RAID 系統嗎?

在作業系統層上,我只想建構一個 LVM,一旦有空間添加到“磁碟”,它就會辨識出來,以便可以擴展它。但實際上,它位於由 RAID 控制器管理的多個磁碟上。

有相當多的選項具有不同程度的彈性、磁碟效率和易於操作。這裡有幾個:

RAID 0 和 1 RAID 0 和 1 立即不可能,RAID 0 不提供冗餘(實際上它增加了風險),並且 RAID 1 被限制 - 正如你所提到的 - 最大大小為 1 個磁碟。

RAID 5 是一個選項,您只會失去 1 個磁碟進行奇偶校驗;儘管這是苦樂參半的,因為您在 2 個(或更多)磁碟上發現錯誤的機會越多(如果發生這種情況,您就完蛋了)。寫入速度通常不足。至少 3 個磁碟開始。擴展是耗時的,並且具有完全失敗的高風險。

RAID 6 是一個更具彈性的選項,與 RAID 5 相同,只是它使用 2 個磁碟進行奇偶校驗,因此您可能會因故障而失去 2 個磁碟,但仍然能夠重建。寫入速度通常不足。最少 4 個磁碟開始。擴展非常耗時,並且完全失敗的風險低於 RAID5,但風險不可忽略。

RAID 10 是所有 RAID 中最具彈性的選項,也是租賃效率最高的選項,因為它使用了所有磁碟的一半進行鏡像。RAID 5 和 6 的一個主要好處是寫入速度通常會隨著您添加的每個磁碟而顯著提高(而不是性能下降) - 這可能是必不可少的,具體取決於您正在實施的數據庫類型。最少 4 個磁碟開始,之後一次添加 2 個。擴張可能是最快的,相關的風險最小。

RAID 50/60 介於 RAID 5/6 和 RAID 10 之間 - 比 RAID 10 具有更好的磁碟使用效率,但需要從大量磁碟開始(最少 6 個),也比基本 RAID 性能更好。擴展非常耗時,風險取決於陣列中有多少磁碟,但介於 RAID 10 和 5/6 之間(加權為 5/6)。

LVM 我用的不多,所以我將把這條途徑留給其他人評論。

基於文件系統的 RAID BTRFS 和 ZFS 都可以跨磁碟透明地執行 RAID 0、1、5,無需 Linux RAID 管理。添加/刪除/更改陣列集很容易(儘管像 RAID 一樣耗時)。ZFS 具有經過多年嘗試和測試的優勢,而 BTRFS 仍然是一個新興的文件系統。

結論:

Linux RAID 比硬體 RAID 更寬容,其中涉及 RAID 5/6/50/60 如果事情變成梨形,Linux RAID 可以讓你的生活更輕鬆(比如在 RAID 5 陣列上失去 2 個磁碟,你仍然可以組裝陣列並嘗試恢復,而大多數 HBA 會直接拒絕)。在彈性、I/O 吞吐量和擴展時間方面,帶有硬體 RAID 的 RAID 10 通常是最安全的選擇。所以把它歸結為我的前2名:

如果 I/O 吞吐量不是高優先級: * Linux RAID 5,但會定期將數據備份到其他地方以抵消風險。擴展就像 1 行命令一樣簡單,但需要一段時間才能完成。

如果優先考慮 I/O 吞吐量: * 硬體 RAID 10,備份數據的計劃可以稍微放寬。擴展將取決於硬體 RAID 類型,但不會花費很長時間來初始化。

引用自:https://serverfault.com/questions/665891