Open MQ4.1を使ってみよう!第14回 他マシンにHADBノードを追加
前回は設定済の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を使う方法を説明したいと思います。
