Symfoware Server Mirroring Controller セットアップガイド |
目次
索引
![]() ![]() |
付録E システムの監視対象と方法 |
モニタデーモンは、両ノード間で互いに確認データの送受信を繰り返すことで正本のデータベースの監視を行います。
副系ノードのモニタデーモンは、正系ノードからの確認データを受信したあと、指定されたタイムアウト時間を超えても次の確認データが到着しない場合、正系ノードに異常が発生したと認識します。
副系ノードのモニタデーモンが正系ノードの異常を認識すると、メッセージを出力します。
(1) DBミラーリング動作環境ファイルに指定した間隔で、データを送信します。
(2) 次のデータがDBミラーリング動作環境ファイルに指定したタイムアウト時間を超えても届かない場合は、メッセージを出力します。
(3) DBミラーリング動作環境ファイルに再開間隔を指定した場合は、指定された時間を経過するとポーリングを再開します。
メッセージが出力された場合、利用者は正本のデータベースの状態を調査して、以下のいずれかの対処を行います。
正本のデータベースが正常に動作している場合
タイムアウトの原因を調査して(モニタデーモンやネットワークの状態など)、必要な対処を行います。この場合、現状の正本データベースの構成で業務を継続します。
正本のデータベースが正常に動作していない場合
正本のデータベースやOSの強制停止などを行うことで、正本のデータベースを停止します。その後、副本のデータベースに対して、切替えコマンドを実行することで(dxswitchコマンド nオプション)、副本のデータベースを正本に切替えて、業務を継続します。
モニタデーモンによるノード間の監視を正しく動作させるために、各パラメタを業務要件に合わせて、誤検知や検知の遅延がないように設計する必要があります。
本設計は、「どの程度で異常と判断するか」などを考慮して設計してください。なお、設定した値は実機で確認してください。
以下に設計の方針または推奨値を説明します。特に理由がない場合、以下を基準に設計および実機確認することを推奨します。
POLL_TIME:省略値(1000ミリ秒)
POLL_WAITOUT(タイムアウト時間):
一時的な負荷などで誤検知しない時間を指定します。例えば、専用の強固なネットワークで接続している場合は、5秒などを設定します。
POLL_WAITOUT(動作指定):“MESSAGE”(固定)
タイムアウトの発生原因は、以下が考えられるため、タイムアウトを示すメッセージが出力された場合でも、正本のデータベース運用は継続可能な場合があります。
ノード間の通信環境の異常
OSのスローダウン
このため、正本のデータベースの状態を確認してから、そのままの正本と副本の構成で業務を継続するか、副本に切替えて業務を継続するかを判断します。
モニタデーモンのノード間通信環境は、以下のように設計してください。これにより、ノード間の通信環境の異常が原因でタイムアウトになることを防ぐことが可能です。
監視や切替えを正しく動作させるために、専用のLANポートを利用したシステム管理用のLANとして、サーバおよびネットワークを専用に接続してください。また、二重化などの対策を必ず設計してください。
正本のデータベースを停止しない状態で副系のデータベースに切替えを行った場合、スプリットブレインが発生する可能性があります。
ノード切替え時に発生するスプリットブレインについては“運用ガイド”の“ノードの切替え時のスプリットブレイン検知”を参照してください。
目次
索引
![]() ![]() |