在 mdadm 中,RAID10 層級可建立單一複雜軟體 RAID,它結合了 RAID 0 (分割) 與 RAID 1 (鏡像) 的功能。所有資料區塊的多個複本按照分割原則分佈於多個設備之上。元件設備的大小應相同。
複雜 RAID 10 與巢狀 RAID 10 (1+0) 的用途相似,但有以下幾處差異︰
表 10-5 比較複雜與巢狀 RAID 10
設定 mdadm RAID10 陣列時,必須指定每個所需資料區塊的複製本數目。複製本的預設數目是 2,但該值可以是 2 至陣列中設備數目的任一值。
必須至少使用與指定的複製本數目相同的元件設備。但是,RAID10 陣列中的元件設備數目不必是每個資料區塊複製本數目的倍數。有效的儲存大小為設備數目除以複製本數目。
例如,如果您為使用 5 個元件設備建立的陣列指定 2 個複製本,每個區塊的複本儲存在兩個不同的設備之上。則所有資料的一個複本的有效儲存大小是元件設備大小的 5/2 或 2.5 倍。
使用近配置,資料區塊的複本被分割到不同元件設備上鄰近位置。即一個資料區塊的多個複本位於不同設備中偏移值類似的位置。近配置是 RAID10 的預設配置。例如,如果使用奇數數目的元件設備和兩個資料複本,某些複本可能是設備中的一個區塊。
mdadm RAID10 之近配置的讀與寫效能與磁碟機數目超過其半數的 RAID 0 相似。
具有偶數數目的磁碟和兩個複製本的近配置︰
sda1 sdb1 sdc1 sde1 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9
具有奇數數目的磁碟和兩個複製本的近配置:
sda1 sdb1 sdc1 sde1 sdf1 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12
遠配置將資料分割到所有磁碟機的較前部分,然後將資料的另一複本分割到所有磁碟機的較後部分,確保區塊的所有複本位於不同的磁碟機。第二組值啟始於元件磁碟機的中間部分。
使用遠配置,mdadm RAID10 的讀取效能與超出其全部磁碟機數目的 RAID 0 相似,但寫入效能大大低於 RAID 0,因為它會更多搜尋磁碟機開頭部分。遠配置最適用於讀密集型操作,如唯讀檔案伺服器。
raid10 的寫入速度與其他鏡像 RAID 類型相似 (例如 raid1 和使用近配置的 raid10),因為該檔案系統的升級程式會以一種比 raw 寫入更佳的方式排程寫入操作。使用遠配置的 raid10 最適合鏡像寫入應用程式。
具有偶數數目的磁碟和兩個複製本的遠配置:
sda1 sdb1 sdc1 sde1 0 1 2 3 3 5 6 7 . . . 3 1 2 3 7 4 5 6
具有奇數數目的磁碟和兩個複製本的遠配置:
sda1 sdb1 sdc1 sde1 sdf1 0 1 2 3 4 5 6 7 8 9 . . . 4 0 1 2 3 9 5 6 7 8
mdadm 的 RAID10 選項可建立未經巢狀化的 RAID 10 設備。如需有關 RAID10- 的資訊,請參閱節 10.3, 使用 mdadm 建立複雜 RAID 10。
此節的程序使用下表顯示的設備名稱。請確保將設備名稱修改為自己設備的名稱。
表 10-6 使用 mdadm RAID10 選項建立 RAID 10 的案例
Raw 設備 |
RAID10 (近或遠分割規劃) |
---|---|
/dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 |
/dev/md3 |
在 YaST 中,於要在 RAID 中使用的設備上建立 0xFD Linux RAID 分割區,如 /dev/sdf1、/dev/sdg1、/dev/sdh1 和 /dev/sdi1。
開啟終端機主控台,然後以 root 使用者或同等身分登入。
建立 RAID 10 指令。在指令提示符下,輸入 (在同一行)︰
mdadm --create /dev/md3 --run --level=10 --chunk=4 --raid-devices=4 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1
在 RAID 10 設備 /dev/md3 上建立 Reiser 檔案系統。在指令提示符下,輸入
mkfs.reiserfs /dev/md3
編輯 /etc/mdadm.conf 檔案,以新增元件設備和 RAID 設備 /dev/md3 的項目。例如:
DEVICE /dev/md3
編輯 /etc/fstab 檔案以新增 RAID 10 設備 /dev/md3 的項目。
重新載入伺服器。
RAID 10 設備已掛接到 /raid10。