Linux中國

在 Linux 下使用 RAID(一):介紹 RAID 的級別和概念

在 Linux 中理解 RAID 設置

RAID 包含一組或者一個集合甚至一個陣列。使用一組磁碟結合驅動器組成 RAID 陣列或 RAID 集。將至少兩個磁碟連接到一個 RAID 控制器,而成為一個邏輯卷,也可以將多個驅動器放在一個組中。一組磁碟只能使用一個 RAID 級別。使用 RAID 可以提高伺服器的性能。不同 RAID 的級別,性能會有所不同。它通過容錯和高可用性來保存我們的數據。

這個系列被命名為「在 Linux 下使用 RAID」,分為9個部分,包括以下主題:

這是9篇系列教程的第1部分,在這裡我們將介紹 RAID 的概念和 RAID 級別,這是在 Linux 中構建 RAID 需要理解的。

軟體 RAID 和硬體 RAID

軟體 RAID 的性能較低,因為其使用主機的資源。 需要載入 RAID 軟體以從軟體 RAID 卷中讀取數據。在載入 RAID 軟體前,操作系統需要引導起來才能載入 RAID 軟體。在軟體 RAID 中無需物理硬體。零成本投資。

硬體 RAID 的性能較高。他們採用 PCI Express 卡物理地提供有專用的 RAID 控制器。它不會使用主機資源。他們有 NVRAM 用於緩存的讀取和寫入。緩存用於 RAID 重建時,即使出現電源故障,它會使用後備的電池電源保持緩存。對於大規模使用是非常昂貴的投資。

硬體 RAID 卡如下所示:

Hardware RAID

硬體 RAID

重要的 RAID 概念

  • 校驗方式用在 RAID 重建中從校驗所保存的信息中重新生成丟失的內容。 RAID 5,RAID 6 基於校驗。
  • 條帶化是將切片數據隨機存儲到多個磁碟。它不會在單個磁碟中保存完整的數據。如果我們使用2個磁碟,則每個磁碟存儲我們的一半數據。
  • 鏡像被用於 RAID 1 和 RAID 10。鏡像會自動備份數據。在 RAID 1 中,它會保存相同的內容到其他盤上。
  • 熱備份只是我們的伺服器上的一個備用驅動器,它可以自動更換髮生故障的驅動器。在我們的陣列中,如果任何一個驅動器損壞,熱備份驅動器會自動用於重建 RAID。
  • 是 RAID 控制器每次讀寫數據時的最小單位,最小 4KB。通過定義塊大小,我們可以增加 I/O 性能。

RAID有不同的級別。在這裡,我們僅列出在真實環境下的使用最多的 RAID 級別。

  • RAID0 = 條帶化
  • RAID1 = 鏡像
  • RAID5 = 單磁碟分散式奇偶校驗
  • RAID6 = 雙磁碟分散式奇偶校驗
  • RAID10 = 鏡像 + 條帶。(嵌套RAID)

RAID 在大多數 Linux 發行版上使用名為 mdadm 的軟體包進行管理。讓我們先對每個 RAID 級別認識一下。

RAID 0 / 條帶化

條帶化有很好的性能。在 RAID 0(條帶化)中數據將使用切片的方式被寫入到磁碟。一半的內容放在一個磁碟上,另一半內容將被寫入到另一個磁碟。

假設我們有2個磁碟驅動器,例如,如果我們將數據「TECMINT」寫到邏輯卷中,「T」將被保存在第一盤中,「E」將保存在第二盤,'C'將被保存在第一盤,「M」將保存在第二盤,它會一直繼續此循環過程。(LCTT 譯註:實際上不可能按位元組切片,是按數據塊切片的。)

在這種情況下,如果驅動器中的任何一個發生故障,我們就會丟失數據,因為一個盤中只有一半的數據,不能用於重建 RAID。不過,當比較寫入速度和性能時,RAID 0 是非常好的。創建 RAID 0(條帶化)至少需要2個磁碟。如果你的數據是非常寶貴的,那麼不要使用此 RAID 級別。

  • 高性能。
  • RAID 0 中容量零損失。
  • 零容錯。
  • 寫和讀有很高的性能。

RAID 1 / 鏡像化

鏡像也有不錯的性能。鏡像可以對我們的數據做一份相同的副本。假設我們有兩個2TB的硬碟驅動器,我們總共有4TB,但在鏡像中,但是放在 RAID 控制器後面的驅動器形成了一個邏輯驅動器,我們只能看到這個邏輯驅動器有2TB。

當我們保存數據時,它將同時寫入這兩個2TB驅動器中。創建 RAID 1(鏡像化)最少需要兩個驅動器。如果發生磁碟故障,我們可以通過更換一個新的磁碟恢復 RAID 。如果在 RAID 1 中任何一個磁碟發生故障,我們可以從另一個磁碟中獲取相同的數據,因為另外的磁碟中也有相同的數據。所以是零數據丟失。

  • 良好的性能。
  • 總容量丟失一半可用空間。
  • 完全容錯。
  • 重建會更快。
  • 寫性能變慢。
  • 讀性能變好。
  • 能用於操作系統和小規模的資料庫。

RAID 5 / 分散式奇偶校驗

RAID 5 多用於企業級。 RAID 5 的以分散式奇偶校驗的方式工作。奇偶校驗信息將被用於重建數據。它從剩下的正常驅動器上的信息來重建。在驅動器發生故障時,這可以保護我們的數據。

假設我們有4個驅動器,如果一個驅動器發生故障而後我們更換髮生故障的驅動器後,我們可以從奇偶校驗中重建數據到更換的驅動器上。奇偶校驗信息存儲在所有的4個驅動器上,如果我們有4個 1TB 的驅動器。奇偶校驗信息將被存儲在每個驅動器的256G中,而其它768GB是用戶自己使用的。單個驅動器故障後,RAID 5 依舊正常工作,如果驅動器損壞個數超過1個會導致數據的丟失。

  • 性能卓越
  • 讀速度將非常好。
  • 寫速度處於平均水準,如果我們不使用硬體 RAID 控制器,寫速度緩慢。
  • 從所有驅動器的奇偶校驗信息中重建。
  • 完全容錯。
  • 1個磁碟空間將用於奇偶校驗。
  • 可以被用在文件伺服器,Web伺服器,非常重要的備份中。

RAID 6 雙分散式奇偶校驗磁碟

RAID 6 和 RAID 5 相似但它有兩個分散式奇偶校驗。大多用在大數量的陣列中。我們最少需要4個驅動器,即使有2個驅動器發生故障,我們依然可以更換新的驅動器後重建數據。

它比 RAID 5 慢,因為它將數據同時寫到4個驅動器上。當我們使用硬體 RAID 控制器時速度就處於平均水準。如果我們有6個的1TB驅動器,4個驅動器將用於數據保存,2個驅動器將用於校驗。

  • 性能不佳。
  • 讀的性能很好。
  • 如果我們不使用硬體 RAID 控制器寫的性能會很差。
  • 從兩個奇偶校驗驅動器上重建。
  • 完全容錯。
  • 2個磁碟空間將用於奇偶校驗。
  • 可用於大型陣列。
  • 用於備份和視頻流中,用於大規模。

RAID 10 / 鏡像+條帶

RAID 10 可以被稱為1 + 0或0 +1。它將做鏡像+條帶兩個工作。在 RAID 10 中首先做鏡像然後做條帶。在 RAID 01 上首先做條帶,然後做鏡像。RAID 10 比 01 好。

假設,我們有4個驅動器。當我邏輯卷上寫數據時,它會使用鏡像和條帶的方式將數據保存到4個驅動器上。

如果我在 RAID 10 上寫入數據「TECMINT」,數據將使用如下方式保存。首先將「T」同時寫入兩個磁碟,「E」也將同時寫入另外兩個磁碟,所有數據都寫入兩塊磁碟。這樣可以將每個數據複製到另外的磁碟。

同時它將使用 RAID 0 方式寫入數據,遵循將「T」寫入第一組盤,「E」寫入第二組盤。再次將「C」寫入第一組盤,「M」到第二組盤。

  • 良好的讀寫性能。
  • 總容量丟失一半的可用空間。
  • 容錯。
  • 從副本數據中快速重建。
  • 由於其高性能和高可用性,常被用於資料庫的存儲中。

結論

在這篇文章中,我們已經了解了什麼是 RAID 和在實際環境大多採用哪個級別的 RAID。希望你已經學會了上面所寫的。對於 RAID 的構建必須了解有關 RAID 的基本知識。以上內容可以基本滿足你對 RAID 的了解。

在接下來的文章中,我將介紹如何設置和使用各種級別創建 RAID,增加 RAID 組(陣列)和驅動器故障排除等。

via: http://www.tecmint.com/understanding-raid-setup-in-linux/

作者:Babin Lonston 譯者:strugglingyouth 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國