各種リソースの作成、リソースの制約の付与、そして動作確認だ。
今回必要なのは、
- dlm
- clvmd
- gfs2マウント
で、依存関係としては…
dlm起動→clvmd起動→gfs2マウント
となる様子。
#あれ?ってことはgfs2を使用しないクラスターLVMでも、dlmは必要なのか?
#nfsクラスター構築時に検証してみよう。
まずはdlmリソースの作成
$ sudo pcs resource show
(sagittarius) $ sudo pcs resource create dlm \
ocf:pacemaker:controld \
op monitor \
interval=30s \
on-fail=fence \
clone \
interleave=true \
ordered=true
$ sudo pcs resource show
リソースが出来たし、いきなり起動した。
詳細確認
$ sudo pcs resource show dlm-clone
sagittarius/aquarius どちらも ps コマンドで確認したら、dlm プロセスが動き出しているはずだ。
続いて、clvmdリソースの作成。
(sagittarius) $ sudo pcs resource create clvmd ocf:heartbeat:clvm \
op monitor interval=30s on-fail=fence \
clone \
interleave=true \
ordered=true
$ sudo pcs status
数秒後、sagittarius/aquarius 両ノードで clvmd-clone リソースが起動してくるはずだ。
$ ps -ef | grep clvmd | grep -v grep
プロセスも起動してくる。
clvmd-clone リソースを停止すれば、clvmdプロセスも落ちるはず。
$ sudo pcs resource disable clvmd-clone
$ sudo pcs status
$ ps -ef | grep clvmd | grep -v grep
$ sudo pcs resource enable clvmd-clone
$ sudo pcs status
$ ps -ef | grep clvmd | grep -v grep
clvmd-clone リソースの追加ができたので、dlm リソースとの順序と起動ノードの設定。
$ sudo pcs constraint show --full
$ sudo pcs constraint order start dlm-clone then clvmd-clone
$ sudo pcs constraint colocation add clvmd-clone with dlm-clone
$ sudo pcs constraint show --full
そういえば、clvmd リソースが起動したら、過去に作ってあった共有ボリューム(kvmcluster VG)もアクティベートされたぞ。
そしたら、ファイルシステムマウントのリソース作成。
(sagittarius) $ sudo pcs resource create shared-pool Filesystem \
device="/dev/kvmcluster/var-lib-libvirt" \
directory="/var/lib/libvirt" \
fstype="gfs2" \
op monitor interval=10s on-fail=fence clone interleave=true
$ sudo pcs status
動き出した!
$ sudo pcs resource show shared-pool
$ df /var/lib/libvirt
両ノードでちゃんとマウントされた!
clvmdの時と同じように、順序と起動ノードの設定をしておこう。
$ sudo pcs constraint show --full
$ sudo pcs constraint order start clvmd-clone then shared-pool-clone
$ sudo pcs constraint colocation add shared-pool-clone with clvmd-clone
$ sudo pcs constraint show --full
できた!
しかし、別の問題が発生。
次回はその問題の確認と対策だ…。結構メンドウだよ…。
2019/06/20 追記
ファイルシステムマウントのリソース、クローンリソース化するのなら、force_clones というパラメータを yes に設定しておく必要があるようだ。
実際のところ、違いがわからなかったんだけど、マニュアル上はそう書いてあるよう。
というわけで、設定を変更しておく。
2019/06/20 追記
ファイルシステムマウントのリソース、クローンリソース化するのなら、force_clones というパラメータを yes に設定しておく必要があるようだ。
実際のところ、違いがわからなかったんだけど、マニュアル上はそう書いてあるよう。
というわけで、設定を変更しておく。
$ sudo pcs resource update shared-pool force_clones=yes設定が反映されていれば OK だ。
$ sudo pcs resource show shared-pool
0 件のコメント:
コメントを投稿