Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
B.3.3. 獨佔啟用(exclusive activation)叢集中的卷冊群組
下列程序能配置卷冊群組,以確保只有叢集能夠啟用卷冊群組,並且卷冊群組將無法在開機時於叢集外啟用。若卷冊群組被叢集外的系統啟用的話,卷冊群組的 metadata 將會有損毀的風險。
注意
您必須確認使用 Pacemaker 時,
lvmetad
daemon 已停用。您可藉由執行下列指令來檢查 daemon 是否已停用,以及是否有任何 lvmetad
程序正在執行中。
#grep use_lvmetad /etc/lvm/lvm.conf
use_lvmetad = 0 #ps -ef | grep -i [l]vm
root 23843 15478 0 11:31 pts/0 00:00:00 grep --color=auto -i lvm
若您取得的結果與此範例不同,請在
/etc/lvm/lvm.conf
檔案中設置 use_lvmetad = 0
,並停止任何執行中的 lvmetad
程序。
此程序會修改
/etc/lvm/lvm.conf
配置檔案中的 volume_list
項目。列在 volume_list
項目中的卷冊群組允許在叢集管理員控制之外的本機節點上自動啟用。與節點的本機 root 和家目錄相關的卷冊群組應包含在此清單中。所有由叢集管理員所管理的卷冊群組皆必須排除在 volume_list
項目之外。請注意,此程序無需使用到 clvmd
。
在叢集的各個節點上執行以下程序。
- 透過以下指令來判斷哪些卷冊群組目前已配置於您的本機儲存裝置上。這將會輸出一列目前已配置的卷冊群組。若您在此節點上為 root 和您的家目錄分配了獨立的卷冊群組,您將會在輸出中看見這些卷冊,如以下範例所示。
#
vgs --noheadings -o vg_name
my_vg rhel_home rhel_root - 在
/etc/lvm/lvm.conf
配置檔案中,加入my_vg
(您剛為叢集定義的卷冊群組)以外的卷冊群組作為volume_list
的項目。比方說,若您在獨立的卷冊群組中為 root 與您的家目錄分配了空間,您將需要反註解lvm.conf
檔案中的volume_list
一行,並如下將這些卷冊群組作為volume_list
的項目加入:volume_list = [ "rhel_root", "rhel_home" ]
注意
若在叢集管理員之外啟動的節點上沒有卷冊群組的話,您還是必須將volume_list
項目初始化為volume_list = []
。 - 重建
initramfs
開機映像檔以確保開機映像檔不會嘗試啟用一個由叢集所控制的卷冊群組。請透過以下指令更新initramfs
裝置。這項指令要完成可能會花上一分鐘。#
dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
- 重新啟動節點。
注意
若您在啟動了一部建立了開機映像檔的節點後安裝了一個新的 Linux kernel,新的initrd
映像檔將會屬於您建立該映像檔時正在執行的 kernel,而不是您重新啟動節點時執行的新 kernel。您能藉由在重新開機之前或之後執行uname -r
指令來判斷正在執行的 kernel 版本,並確認是否正在使用正確的initrd
裝置。若版本不一樣的話,請在以新的 kernel 重新啟動後更新initrd
檔案,然後重新啟動節點。 - 當節點重新啟動後,請藉由在此節點上執行
pcs cluster status
指令,以檢查叢集服務是否有再次啟用於該節點上。若出現了Error: cluster is not currently running on this node
錯誤訊息的話,情執行以下指令:#
pcs cluster start
此外,您能等到您重新啟動了叢集中的各個節點後,透過以下指令啟用各個節點上的叢集服務。#
pcs cluster start --all