Show Table of Contents
5.5. 在叢集中建立鏡像 LVM 邏輯卷冊
若在叢集中建立鏡像 LVM 邏輯卷冊,需使用與在單獨節點上建立鏡像 LVM 邏輯卷冊相同的指令和程序。然而,若要在叢集中建立鏡像 LVM 卷冊,該叢集和叢集鏡像架構必須要執行,叢集必須要 quorate,並且
lvm.conf 檔案中的鎖定類型並需正確設定,以允許直接或透過 lvmconf 指令啟用叢集鎖定(如 節 3.1, “在叢集中建立 LVM 卷冊” 中所描述)。
下列程序將在叢集中建立鏡像邏輯卷冊。首先,程序會先查看叢集服務是否已安裝並在執行,接著程序便會建立鏡像卷冊。
- 若要建立一個讓叢集中所有節點皆能共享的鏡像邏輯卷冊,鎖定類型必須正確設定於叢集裡各個節點上的
lvm.conf檔案中。就預設值,鎖定類型會被設為本機。若要進行變更,請在叢集中的各個節點上執行下列指令,以啟用叢集鎖定:#
/sbin/lvmconf --enable-cluster - 若要建立叢集化的邏輯卷冊,叢集架構必須在叢集中的各個節點上啟用並運作。下列範例驗證了
clvmddaemon 正在啟用它的節點上運作:ps auxw | grep clvmdroot 17642 0.0 0.1 32164 1072 ? Ssl Apr06 0:00 clvmd -T20 -t 90下列指令將顯示叢集狀態的本機檢視:#
cman_tool servicesfence domain member count 3 victim count 0 victim now 0 master nodeid 2 wait state none members 1 2 3 dlm lockspaces name clvmd id 0x4104eefa flags 0x00000000 change member 3 joined 1 remove 0 failed 0 seq 1,1 members 1 2 3 - 確認
cmirror套件已安裝。 - 啟用
cmirrord服務#
service cmirrord startStarting cmirrord: [ OK ] - 建立鏡像。第一個步驟就是建立實體卷冊。下列指令將建立三個實體卷冊。兩個實體卷冊將使用於鏡像 leg,並且第三個實體卷冊將會包含鏡像 log。
#
pvcreate /dev/xvdb1Physical volume "/dev/xvdb1" successfully created [root@doc-07 ~]#pvcreate /dev/xvdb2Physical volume "/dev/xvdb2" successfully created [root@doc-07 ~]#pvcreate /dev/xvdc1Physical volume "/dev/xvdc1" successfully created - 建立卷冊群組。此範例將建立包含了先前步驟所建立的三個實體卷冊的卷冊群組
vg001。#
vgcreate vg001 /dev/xvdb1 /dev/xvdb2 /dev/xvdc1Clustered volume group "vg001" successfully created請注意vgcreate指令的輸出顯示了卷冊群組已叢集化。您可藉由vgs指令來驗證卷冊群組是否已叢集化,這將會顯示卷冊群組的屬性。若卷冊群組已叢集化,它將會顯示 c 屬性。vgs vg001VG #PV #LV #SN Attr VSize VFree vg001 3 0 0 wz--nc 68.97G 68.97G - 建立鏡像邏輯卷冊。此範例將由卷冊群組
vg001建立邏輯卷冊mirrorlv。此卷冊含有一個鏡像 leg。此範例指定了實體卷冊的哪個磁區將會被使用來作為邏輯卷冊。#
lvcreate -l 1000 -m1 vg001 -n mirrorlv /dev/xvdb1:1-1000 /dev/xvdb2:1-1000 /dev/xvdc1:0Logical volume "mirrorlv" created您可使用lvs指令來顯示鏡像建立的進度。下列範例顯示了鏡像已同步化 47%、91%,並且當鏡像完成後便成為 100% 同步化。#
lvs vg001/mirrorlvLV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 47.00 [root@doc-07 log]#lvs vg001/mirrorlvLV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 91.00 [root@doc-07 ~]#lvs vg001/mirrorlvLV VG Attr LSize Origin Snap% Move Log Copy% Convert mirrorlv vg001 mwi-a- 3.91G vg001_mlog 100.00鏡像的完成會記載於系統日誌中:May 10 14:52:52 doc-07 [19402]: Monitoring mirror device vg001-mirrorlv for events May 10 14:55:00 doc-07 lvm[19402]: vg001-mirrorlv is now in-sync
- 您可搭配使用
lvs與-o +devices選項來顯示鏡像的配置,包括構成鏡像 leg 的裝置有哪些。您可看見此範例中的邏輯卷冊是以兩個線性映像和一個 log 所組成的。#
lvs -a -o +devicesLV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices mirrorlv vg001 mwi-a- 3.91G mirrorlv_mlog 100.00 mirrorlv_mimage_0(0),mirrorlv_mimage_1(0) [mirrorlv_mimage_0] vg001 iwi-ao 3.91G /dev/xvdb1(1) [mirrorlv_mimage_1] vg001 iwi-ao 3.91G /dev/xvdb2(1) [mirrorlv_mlog] vg001 lwi-ao 4.00M /dev/xvdc1(0)您可使用lvs指令的seg_pe_ranges選項來顯示資料配置。您可使用此選項來驗證您的配置是否有正確冗餘。這項指令的輸出會顯示 PE 範圍,並且格式與lvcreate和lvresize指令的輸入相同。#
lvs -a -o +seg_pe_ranges --segmentsPE Ranges mirrorlv_mimage_0:0-999 mirrorlv_mimage_1:0-999 /dev/xvdb1:1-1000 /dev/xvdb2:1-1000 /dev/xvdc1:0-0
注意
欲取得由失效的 LVM 鏡像卷冊之 leg 進行復原的相關資訊,請參閱 節 6.3, “由 LVM 鏡像錯誤中復原”。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.