ダイナミッククォーラムに関して
今回は次のようにテストしてみました。
ネットワークを分断させることによってどのような挙動になるかを確認します。ダイナミッククォーラムがきちんと動作すれば 2 ノード側のクラスターが停止し、3 ノード側が存続するはずです。
この結果は見事予想通り動作してくれました。スプリットブレインは起こりませんでした。
ここで疑問。もし、クラスターコアリソースが少数ノード側にあった場合はどうなるのか?
この通り、ちゃんとフェールオーバーしてくれました。よしよし!
次に、NODE-Cをダウンさせます。ダイナミッククォーラムが動作すればクラスターは停止しないはず。その前に設定確認してみます。
NODE-D、NODE-Eはネットワーク障害によりハートビートは届かないためクラスターから外されていることがわかります。
NODE-C をダウンしてもクラスターは存続しています。これがダイナミッククォーラムの威力です。そして、再度設定を確認してみます。
これはどのように理解すればいいのか?たぶん、現在動作しているノードはNODE-AおよびNODE-Bの 2 ノードになります。そして投票権を持つのは NODE-B の 1 票のみ。要するに全体で 1 票のクラスターがあり、1 票が存在しているのでクラスターが存続しているということだと思います。
ということは、1 ノードでもクラスターは存続するはず。ということで、NODE-A をダウンさせてみます。
おお!見事に 5 ノードクラスターなのに 1 ノードだけでもクラスターが存続しています。ちょっとわかりずらいのでこちらでも確認。
このような結果になりました。