前回は設定済のHADBデータベースをMQ4.1の永続ストアとして使用する方法を説明しました。
今回は、1つのマシンだけではなく他のマシンにもHADBのノードを追加して可用性をアップしたいと思います。

前回までは1つのマシンにHADBのデータ冗長ユニット(DRU)を作成しました。こちらの構成ですと、ハードウエア障害が発生してマシンごとダウンしてしまった場合にHADBはデータベースとしてサービスを継続することができなくなります。このような状況になってもHADBのサービスを継続できるように以下の手順で他のマシンにHADBのノードを追加します。

1.他マシンにHADBをインストールする。(インストール手順は第11回で説明しています
2.新しくHADBをインストールしたマシン上にHADBのノードを追加する
以下のコマンドを発行します。

-bash-3.00#cd /opt/SUNWappserver/appserver/hadb/4.5/bin

-bash-3.00# ./hadbm addnodes --spares=2 --hosts 129.158.34.187,129.158.34.187 hastore
Please enter the password for the database system user:***********
WARNING: The --dbpassword option is deprecated since it is insecure.
Using this option can compromise your password. Please use either the
Please enter the password for the admin system user:***********
Nodes 129.158.34.187,129.158.34.187 successfully added to database hastore.

※--spares=2の部分
スペアに指定できるノードの数は、全ノード数未満の数でかつ、偶数
(今回はhost1に2ノード、host2に2ノード、合計4ノードあるので、
2こまでのスペアを作成可能

3.HADBのステータスを確認してみる

-bash-3.00#cd /opt/SUNWappserver/appserver/hadb/4.5/bin

-bash-3.00# ./hadbm status hastore
Please enter the password for the admin system user:***********
Database Status
hastore  HAFaultTolerant

これで、HADBのデータベースに新しくHADBノードが追加されました。

/hadbm get --all hastore

コマンドで、JDBC URLの部分に新しく追加されたノードがあるか確認してください。

さあ、これであなたのHADBデータベースは複数のマシンに分散され、障害への耐久性が飛躍的に向上しました!

以下のテストシナリオで、今回の構成がDBサーバの電源オフにも耐えられることを確認してみてください。
1.MQへデータの送受信を行う
2.DBサーバのうちどちらか1つの電源を切る/OSをシャットダウンするなどする
3.MQのキュー中にあるデータがきちんと残っていることを確認

なお、片方のDBサーバをシャットダウンするとHADBのステータスはFaultTolerantへ降格します。
(スペアを使い切った場合。スペアの数が十分にあればHAFaultTolerantのまま)

次回はCAPS(Sun Seebeyond)で、Sun Java System MQを使う方法を説明したいと思います。

投稿されたコメント:

コメント
コメントは無効になっています。

This blog copyright 2009 by naokitakemura