Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
4.4.13. RAID 邏輯卷冊
由 RHEL 6.3 發行版起,LVM 開始支援 RAID4/5/6 以及新的鏡像實作。最新的鏡像實作與先前的鏡像實作有著以下的不同(記載於 節 4.4.3, “建立鏡像卷冊” 中):
- 新的鏡像實作之磁區類型為
raid1
。先前實作的磁區類型則為mirror
。 - 新的鏡射實作採用了 MD 軟體 RAID,RAID 4/5/6 實作亦然。
- 鏡像的實作為各個 mirror image 保有了完全冗余的 bitmap 區域,這會增強其錯誤處理的能力。這代表以此磁區類型建立的鏡像沒有
--mirrorlog
或是--corelog
選項。 - 新的鏡像實作可處理暫時性的錯誤。
- 新的鏡射實作支援 snapshot(較高等級的 RAID 實作亦如此)。目前尚不支援針對於磁區類型為
mirror
的鏡像製作 snapshot(儘管可建立)。 - 鏡像映像檔能暫時性地由陣列中分割,並事後合併回陣列中。
- 新的 RAID 實作無法偵測到叢集。您無法在叢集卷冊群組中建立 LVM RAID 邏輯卷冊。
欲取得更多有關於 RAID 邏輯卷冊如何處理錯誤的相關資訊,請參閱 節 4.4.13.8, “設定 RAID 錯誤政策”。
此部分剩下的內容將詳述下列您可在 LVM RAID 裝置上進行的管理工作:
4.4.13.1. 建立 RAID 邏輯卷冊
若要建立 RAID 邏輯卷冊,您必須使用
lvcreate
指令的 --type
引數來指定 RAID 類型。一般當您透過 lvcreate
指令建立邏輯卷冊時,--type
會是隱藏的。比方說,當您指定 -i stripes
引數時,lvcreate
指令會假定設置 --type stripe
選項。當您指定 -m mirrors
引數時,lvcreate
指令則會假定設置 --type mirror
選項。然而當您建立 RAID 邏輯卷冊時,您必須明確指定您想要的磁區類型。可使用的 RAID 磁區類型詳述於 表格 4.1, “RAID 磁區類型” 中。
表格 4.1. RAID 磁區類型
磁區類型 | 描述 | ||
---|---|---|---|
raid1 | RAID1 鏡射 | ||
raid4 | RAID4 特屬的同位磁碟 | ||
raid5 | 和 raid5_ls 相同 | ||
raid5_la |
| ||
raid5_ra |
| ||
raid5_ls |
| ||
raid5_rs |
| ||
raid6 | 和 raid6_zr 相同 | ||
raid6_zr |
| ||
raid6_nr |
| ||
raid6_nc |
|
對於大部份使用者來說,指定主要的可用類型之一(
raid[1456]
)應已足夠。欲取得更多有關於 RAID 5/6 所使用之不同演算法則上的相關資訊,請參閱《常用的 RAID 磁碟資料格式規格》的第四章節,位於 http://www.snia.org/sites/default/files/SNIA_DDF_Technical_Position_v2.0.pdf。
當您建立 RAID 邏輯卷冊時,LVM 會建立一個 metadata 子卷冊,並且陣列中各資料或同位子卷冊的大小皆為一個扇區。比方說,建立一個雙向的 RAID1 陣列時,會產生兩個 metadata 子卷冊(
lv_rmeta_0
與 lv_rmeta_1
),以及兩個資料子卷冊(lv_rimage_0
與 lv_rimage_1
)。相同的,當建立一個三向的 stripe(加上一個隱藏的同位裝置)RAID4 時,將會產生四個 metadata 子卷冊(lv_rmeta_0
、lv_rmeta_1
、lv_rmeta_2
以及 lv_rmeta_3
)和四個資料子卷冊(lv_rimage_0
、lv_rimage_1
、lv_rimage_2
以及 lv_rimage_3
)。
下列指令將會在卷冊群組
my_vg
中,建立一個大小為 1G 的雙向 RAID1 陣列,名為 my_lv
。
# lvcreate --type raid1 -m 1 -L 1G -n my_lv my_vg
您可根據您為
-m
引數所指定的值,來建立數個 RAID1 陣列。儘管 -m
引數與先前的鏡像實作中,使用來指定數量的引數相同,在此情況下,您會藉由明確將磁區類型設為 raid1
,以置換預設磁區類型 mirror
。相同地,您亦可透過熟悉的 -i argument
,指定 RAID 4/5/6 邏輯卷冊的 stripe 數量,將預設的磁區類型置換為您想要的 RAID 類型。您亦可透過 -I
引數來指定 stripe 的大小。
注意
您可藉由更改
lvm.conf
檔案中的 mirror_segtype_default
,來將預設的鏡像磁區類型設為 raid1
。
下列指令將會在
my_vg
卷冊群組中建立一個 RAID5 陣列(三個 stripe 加上一個隱藏同位磁碟),名為 my_lv
並且大小為 1G。請注意,您必須如同為 LVM stripe 卷冊一般的指定 stripe 數量;正確的同位磁碟數量將會被自動加入。
# lvcreate --type raid5 -i 3 -L 1G -n my_lv my_vg
下列指令將會在
my_vg
卷冊群組中,建立一個 RAID6 陣列(三個 stripe 加上兩個隱藏同位磁碟),名為 my_lv
並且大小為 1G。
# lvcreate --type raid6 -i 3 -L 1G -n my_lv my_vg
在您以 LVM 建立了 RAID 邏輯卷冊後,您可啟用、更改、移除、顯示以及使用卷冊,就像是任何其它 LVM 邏輯卷冊一樣。