4.2. GFS2 ファイルシステムでのクラスター化 LVM ボリュームの設定
このユースケースでは、クラスターのノード間で共有しているストレージにクラスター化 LVM 論理ボリュームを作成する必要があります。
本項では、クラスター化 LVM 論理ボリュームを GFS2 ファイルシステムでそのボリューム上に作成します。この例では
/dev/vdb 共有パーティションを使って LVM 論理ボリュームの作成元となる LVM 物理ボリュームを格納します。
注記
LVM ボリュームと、クラスターノードで使用するパーティションおよびデバイスは、クラスターノード以外には接続しないでください。
この手順を始める前に、Resilient Storage チャンネルの
lvm2-cluster と gfs2-utils パッケージをクラスターの両方のノードにインストールします。
yum install lvm2-cluster gfs2-utils
# yum install lvm2-cluster gfs2-utils
/dev/vdb パーティションは共有させるストレージとなるため、この手順は 1 つのノードでのみ行います。
- グローバル Pacemaker パラメーター
no_quorum_policyをfreezeに設定します。この設定により、クォーラムが失われるたびにクラスター全体にフェンシングが発生しなくなります。このポリシーの設定についての詳細は、『Global File System 2』 を参照してください。pcs property set no-quorum-policy=freeze
[root@z1 ~]# pcs property set no-quorum-policy=freezeCopy to Clipboard Copied! Toggle word wrap Toggle overflow dlmリソースをセットアップします。これは、clvmdサービスと GFS2 ファイルシステムに必要な依存関係です。pcs resource create dlm ocf:pacemaker:controld op monitor interval=30s on-fail=fence clone interleave=true ordered=true
[root@z1 ~]# pcs resource create dlm ocf:pacemaker:controld op monitor interval=30s on-fail=fence clone interleave=true ordered=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow clvmdをクラスターリソースとしてセットアップします。pcs resource create clvmd ocf:heartbeat:clvm op monitor interval=30s on-fail=fence clone interleave=true ordered=true
[root@z1 ~]# pcs resource create clvmd ocf:heartbeat:clvm op monitor interval=30s on-fail=fence clone interleave=true ordered=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow この開始手順の一環として、ocf:heartbeat:clvmリソースエージェントにより、/etc/lvm/lvm.confファイルのlocking_typeパラメーターが3に変更され、lvmetadデーモンが無効化されることに注意してください。clvmdおよびdlmの依存関係をセットアップし、順番に起動します。clvmdリソースはdlmの後に起動し、dlmと同じノードで実行する必要があります。pcs constraint order start dlm-clone then clvmd-clone pcs constraint colocation add clvmd-clone with dlm-clone
[root@z1 ~]# pcs constraint order start dlm-clone then clvmd-clone Adding dlm-clone clvmd-clone (kind: Mandatory) (Options: first-action=start then-action=start) [root@z1 ~]# pcs constraint colocation add clvmd-clone with dlm-cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow dlmおよびclvmdリソースが全てのノードで実行されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - クラスター化論理ボリュームの作成
pvcreate /dev/vdb vgcreate -Ay -cy cluster_vg /dev/vdb lvcreate -L4G -n cluster_lv cluster_vg
[root@z1 ~]# pvcreate /dev/vdb [root@z1 ~]# vgcreate -Ay -cy cluster_vg /dev/vdb [root@z1 ~]# lvcreate -L4G -n cluster_lv cluster_vgCopy to Clipboard Copied! Toggle word wrap Toggle overflow - ボリュームが正しく作成されているかどうかを確認するには、論理ボリュームを表示する lvs コマンドを使用します。
lvs
[root@z1 ~]# lvs LV VG Attr LSize ... cluster_lv cluster_vg -wi-ao---- 4.00g ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow - GFS2 でボリュームをフォーマットします。この例では、
my_clusterがクラスター名です。また、2 つのジャーナルを示すために-j 2を指定しています。これは、ジャーナルの数が、クラスターのノードの数に一致する必要があるためです。mkfs.gfs2 -p lock_dlm -j 2 -t my_cluster:samba /dev/cluster_vg/cluster_lv
[root@z1 ~]# mkfs.gfs2 -p lock_dlm -j 2 -t my_cluster:samba /dev/cluster_vg/cluster_lvCopy to Clipboard Copied! Toggle word wrap Toggle overflow - ファイルシステムのマウントと管理を行うように Pacemaker を設定するための
Filesystemリソースを作成します。この例では、fsというFilesystemリソースを作成し、両方のクラスターで/mnt/gfs2shareを作成します。pcs resource create fs ocf:heartbeat:Filesystem device="/dev/cluster_vg/cluster_lv" directory="/mnt/gfs2share" fstype="gfs2" --clone
[root@z1 ~]# pcs resource create fs ocf:heartbeat:Filesystem device="/dev/cluster_vg/cluster_lv" directory="/mnt/gfs2share" fstype="gfs2" --cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GFS2 ファイルシステムと
clvmdのサービスとの依存関係を設定し、順番に起動します。GFS2 はclvmdの後に起動し、clvmdと同じノードで実行する必要があります。pcs constraint order start clvmd-clone then fs-clone pcs constraint colocation add fs-clone with clvmd-clone
[root@z1 ~]# pcs constraint order start clvmd-clone then fs-clone Adding clvmd-clone fs-clone (kind: Mandatory) (Options: first-action=start then-action=start) [root@z1 ~]# pcs constraint colocation add fs-clone with clvmd-cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 想定通りに GFS2 ファイルがマウントされていることを確認します。
mount |grep /mnt/gfs2share
[root@z1 ~]# mount |grep /mnt/gfs2share /dev/mapper/cluster_vg-cluster_lv on /mnt/gfs2share type gfs2 (rw,noatime,seclabel)Copy to Clipboard Copied! Toggle word wrap Toggle overflow