ノード間の通信環境に異常が発生した場合の対処について説明します。
正系ノードと副系ノードのDBミラーリングシステムを接続しているノード間の通信環境が2系統のLAN構成の場合、1系統の通信環境に異常が発生した場合は、もう片方の通信環境で運用を継続します。通信環境の異常が復旧した場合、自動的に2系統のLAN構成の通信環境に戻ります。
通信環境の異常を検出した場合には、イベントログに以下のメッセージを出力します。
22061: ノード間の通信環境(IPアドレスまたはホスト名)に異常が発生しました ノード間の通信環境を縮退します
通信環境の異常の復旧を検知した場合には、イベントログに以下のメッセージを出力します。
12142: ノード間の通信環境(IPアドレスまたはホスト名)が復旧しました ノード間の通信環境を二重化運用に復旧します
また、dxinfコマンドのlオプションの実行により、通信環境の状態を確認できます。
> dxinf -l
ポイント
通信環境のリカバリのために正系ノードのOSを停止する必要がある場合は、副系ノードへのノードの計画切替えを行ってください。
副系ノードのOSを停止する必要がある場合は、DBミラーリングサービスをリカバリ停止した後、Symfoware/RDBの停止、モニタデーモンの停止を行ってください。
参考
正系ノードと副系ノードのDBミラーリングシステムを接続しているノード間の通信環境が1系統のLAN構成の場合、通信環境の異常が発生した時の動作は“11.7.2.2 2系統の通信環境の異常”と同じ動作になります。
参照
ノードの計画切替えについては“7.1.3 ノードの計画切替えの運用”を参照してください。
DBミラーリングサービスのリカバリ停止については“8.2.2.3 DBミラーリングサービスのリカバリ停止”を参照してください。
Symfoware/RDBの停止については“8.2.4 データベースサーバの停止”を参照してください。
モニタデーモンの停止については“8.2.5 モニタデーモンの停止”を参照してください。
通信環境のリカバリ後の起動については、“8.1 DBミラーリングシステムの起動”を参照してください。
正系ノードと副系ノードのDBミラーリングシステムを接続しているノード間の通信環境が2系統のLAN構成の場合、2系統で異常を検出した場合には、イベントログに以下のメッセージを出力します。
32031: ノード間の通信環境(IPアドレスまたはホスト名)に異常が発生しました 相手ノードとの通信が切断されました
通信環境の異常の復旧を検知した場合には、イベントログに以下のメッセージを出力します。
12141: ノード間の通信環境(IPアドレスまたはホスト名)が復旧しました
ノード間の通信環境の2系統で異常が発生した場合は、データベースの整合性を保証するため、正系ノードはログデータ転送休止状態となり、データベースの更新は待ち状態になっています。
正系ノードの運用を継続する場合、または、ノード切替えを行う場合の手順でリカバリを実施します。
Mirroring Controllerを利用している場合で、ノード間通信異常時に自動ノード切替えを行うとき、ノード間の通信環境の2系統で異常が発生した際は、自動ノード切替えを行う場合の手順でリカバリを実施します。
自動ノード切替えを行う場合(Mirroring Controllerを利用している場合)
正系ノードの運用を継続する場合
正系ノードでのdxaccumコマンドの実行により、RERUNログを正系ノードに蓄積し、利用者業務を再開してください。
dxaccumコマンドを実行し、RERUNログを蓄積状態にします。
> dxaccum
dxsvstopコマンドのrオプションを実行し、副系ノードのDBミラーリングサービスをリカバリ停止します。
> dxsvstop -r
通信環境の異常に対するリカバリ操作を行います。
dxsvstartコマンドのrオプションを実行し、副系ノードのDBミラーリングサービスを開始します。
> dxsvstart -r
ノード切替えを行う場合
リカバリ手順を以下に示します。
データベースサーバを強制停止します。
> rdbstop -e
通信環境の異常に対するリカバリ操作を行います。
データベースサーバ2において強制ノード切替えを実施後に、ノード組込みの運用を開始します。
dxsvstartコマンドのrオプションを実行し、副系ノードのDBミラーリングサービスを開始します。
> dxsvstart -r
データベースサーバ1においてSymfoware/RDBの強制停止を実施後に、dxswitchコマンドのnオプションを実行し、副系ノードを正系ノードに強制ノード切替えを実施します。
> dxswitch -n
自動ノード切替えを行う場合
Mirroring Controllerを利用している場合で、ノード間通信異常時に自動ノード切替えを行うとき、ノード間の通信環境の2系統で異常が発生した際のリカバリ方法は、以下のとおりです。
DBミラーリングシステムにより、正系ノードの運用継続、または自動ノード切替えを行います。
dxinfコマンドにより、正系ノードで運用継続しているか、ノード切替えによりDBミラーリングサービスが停止しているかを確認し、リカバリを実施してください。
通信環境の異常に対するリカバリ作業実施後に、副系ノードのDBミラーリングサービスを起動してください。
リカバリ手順を以下に示します。
通信環境の異常に対するリカバリ操作を行います。
ノード組込みの運用を開始します。
dxsvstartコマンドを実行し、副系ノードのDBミラーリングサービスを開始します。
> dxsvstart -r
参照
ノード間通信異常時の自動ノード切替えについては “C.5.1 ノード間通信異常時の自動ノード切替え”を参照してください。
ノード組込みの運用については“7.1.2 ノード組込みの運用”を参照してください。
ポイント
ログデータ転送休止状態は、dxinfコマンドのsオプションを実行して確認します。コマンド実行結果の“RERUNログ転送状態(Trans)”が“suspend”の場合は、ログデータ転送休止状態です。
> dxinf -s dxinf DATE:2011/01/04 TIME:21:15:32 RDB-NAME : dup1 Host-Name : DBSVR1 IP-address : 10.128.25.128 Node Status Service S-Scr RDB Switch C failure normal - - Monitoring Polling DB_Timeout DB_Inh DB_Down start stop stop start Network GCM Trans invalid suspend
通信環境をリカバリするまでの間、RERUNログは正系ノードに蓄積します。通信環境のリカバリ後に、正系ノードから副系ノードへのデータ転送を再開します。
参照
Symfoware/RDBの強制停止については“コマンドリファレンス”を参照してください。
データの蓄積状態の確認方法については“8.3 データの蓄積状態の確認とネットワークの接続”を参照してください。
ノード組込みの運用については“7.1.2 ノード組込みの運用”を参照してください。
DBミラーリングサービスをリカバリ停止した場合でも、正系ノードから副系ノードへのRERUNログの転送は継続しています。
Mirroring Controllerを利用している場合で、ノード間通信異常時の自動ノード切替えを行うときに、ノード間の通信環境で異常が発生した際は、以下のようになります。
正系ノードはリカバリ停止中、副系ノードは運用中の場合
ノード切替えを行います。
通信環境の復旧後、旧正系ノードにて、以下のリカバリ操作を行ってください。
ノード組込みの運用を実施後、副系ノードとしてDBミラーリングサービスを開始してください。
正系ノードは運用中、副系ノードはリカバリ停止中の場合
副系ノードのSymfoware/RDBが動作中の場合は、Symfoware/RDBを強制停止します。
通信環境の復旧後、副系ノードにて、以下のリカバリ操作を行ってください。
副系ノードのDBミラーリングシステムでは、モニタデーモン以外は停止しています。DBミラーリングシステムを起動してください。
両ノードがリカバリ停止中の場合
ログデータ転送休止状態となります。データ更新を再開する場合は、dxaccumコマンドを実行してください。
通信環境のリカバリ後、自動的にデータ転送を再開します。
参照
ノード組込みの運用については“7.1.2 ノード組込みの運用”を参照してください。
DBミラーリングシステムの起動については“8.1 DBミラーリングシステムの起動”を参照してください。