今度はこのリソースを細かく設定する。
まず、リソースの実行順。
vm-leo 自体は、default プールを使用している。そのため、vm-leo の起動の前提条件として、 default プールの有効化、つまり pool-default-clone を前提にする必要がありそうだ。
それを設定する。
$ sudo pcs constraint order start shared-pool-clone then vm-leo
続いて、リソースの実行条件。
当然、shared-pool の起動に成功したノードと同じノードでないと、vm-leo を動かすわけにはいかない。
その制約をつける。
$ sudo pcs constraint colocation add vm-leo with shared-pool-clone
このままでもいいんだけど、何故かいつも aquarius から起動しようとしてしまう。
gemini/cancer でクラスタ組んで、簡単なリソーステストを行っていた時も、 gemini をプライマリノードにしたいのに、なぜか cancer から起動しようとしてた。
多分、ノード名のアルファベット順で若い方を優先してしまうのではないか?と思っている。
で、vm-leo は sagittarius をプライマリノード、aquarius をスレーブノードとして定義したい。
(sagittarius に問題が無ければ sagittarius で起動、問題がある場合は aquarius で起動、みたいな)
以下のように実行する。
$ sudo pcs resource cleanup vm-leoどうだろう? vm-leo は sagittarius で起動してきたのではないだろうか?
$ sudo pcs constraint location vm-leo prefers sagittarius=100 aquarius=50
$ sudo pcs resource enable vm-leo
$ sudo pcs status
今回は一旦ココまでにするが、まだ問題が2つ残っている。
- vm-leo が稼働していない方のノードのクラスタを停止・起動すると、vm-leo が再起動してしまう
- vm-leo が稼働しているノードを再起動しようとすると、dlm がハングしてしまう
ちょっと調べたがまだ解決していない。
解決できるか分からないが、次回からちょっと調査をする。
0 件のコメント:
コメントを投稿