若要設定支援叢集磁碟區群組,必須成功完成以下幾項任務:
變更要成為支援叢集的 LVM2 的鎖定類型。
編輯 /etc/lvm/lvm.conf 檔案並找到下面一行:
locking_type = 1
將鎖定類型變更為 3,並將組態寫入磁碟。將此組態複製到所有節點。
將 clvmd 資源做為複製品包括在 Pacemaker 組態中,並使之依賴於 DLM 複製資源。crm 組態外圍程序中的典型片段如下所示:
primitive dlm ocf:pacemaker:controld primitive clvm ocf:lvm2:clvmd \ params daemon_timeout="30" clone dlm-clone dlm \ meta target-role="Started" interleave="true" ordered="true" clone clvm-clone clvm \ meta target-role="Started" interleave="true" ordered="true" colocation colo-clvm inf: clvm-clone dlm-clone order order-clvm inf: dlm-clone clvm-clone ...
繼續之前,請確定已在叢集中成功啟動這些資源。可以使用 crm_mon 或 GUI 來檢查執行中的服務。
使用下列指令準備 LVM 的實體磁碟區:
pvcreate <physical volume path>
建立支援叢集磁碟區群組:
vgcreate --clustered y <volume group name> <physical volume path>
視需要建立邏輯磁碟區,例如:
lvcreate --name testlv -L 4G <volume group name>
為了確保在整個叢集範圍啟動磁碟區群組,請按如下方式設定 LVM 資源:
primitive vg1 ocf:heartbeat:LVM \ params volgrpname="<volume group name>" clone vg1-clone vg1 \ meta interleave="true" ordered="true" colocation colo-vg1 inf: vg1-clone clvm-clone order order-vg1 inf: clvm-clone vg1-clone
若要僅在一個節點上獨占啟動磁碟區群組,請使用下面的範例;在此範例中,由於針對非叢集化應用程式採用其他保護措施,cLVM 可避免在多個節點上啟動 VG 中的所有邏輯磁碟區:
primitive vg1 ocf:heartbeat:LVM \ params volgrpname="<volume group name>" exclusive="yes" colocation colo-vg1 inf: vg1 clvm-clone order order-vg1 inf: clvm-clone vg1
現在,VG 中的邏輯磁碟區可做為檔案系統裝載或 RAW 使用量使用。請確定使用它們的服務務必具有正確的相依性,這樣才能在啟動 VG 後對它們進行並存和排序處理。
完成這些組態設定步驟後,即可像在任何獨立工作站上一樣進行 LVM2 組態設定。