高可用性のデータベース
高可用性のデータベースは、高度にスケーラブルであり、常に稼働しているリレーショナル・データベース管理システム (RDBMS) に依存します。 メッセージング・エンジンのデータ・ストアとして 高可用性のデータベースを選択する際には、制約事項が存在します。
高可用性のフレームワークまたはフィーチャーを持つデータベースは、予備の 1 次サーバーおよび待機サーバーを持つことができます。 そのようなデータベースをデータ・ストアとして使用する場合は、特定のアクションが必要になります。
- 接続が待機データベースに経路指定される前にメッセージング・エンジンを停止し、 再始動しない限り、待機データベースが 1 次データベースを引き継ぐ際には、1 次データベースと待機データベースが同一のデータベースになっていることを確認します。メッセージング・エンジンなどのデータベース・クライアントが システムによって 1 次データベースから待機データベースにルーティングされる場合、 メッセージング・エンジンは、両方のデータベースにあるデータが同一であることに依存します。
- アプリケーションが、メッセージング・エンジンによって使用される JDBC 接続を共有できるようにする、1 フェーズ・コミットの最適化は使用しないでください。
DB2® の High Availability Data Recovery (HADR) フィーチャーを使用する場合は、次の制約事項に注意してください。
- メッセージング・エンジンのデフォルトのメッセージング・プロバイダーは、HADR の同期および同期に近い同期モードのみをサポートします。 デフォルトのメッセージング・プロバイダーは、非同期 HADR 構成をサポートしません。
- TAKEOVER BY FORCE コマンドは、待機データベースがピア状態にあるか、または待機データベースがピア状態から現在の状態 (切断状態など) へ最後に変更された場合のみ許可されます。
データ・ストアとして高可用性のデータベース 使用するように WebSphere® Application Server を構成したときに、 データベースのフェイルオーバーが発生した場合、 メッセージング・エンジンが実行されている アプリケーション・サーバーは停止する場合があります。この問題の原因は、 メッセージング・エンジンが常に、 フェイルオーバーを一時的な通信エラーとして処理できるわけではないことにあります。
そのデータ・ストア用に高可用性のデータベース を使用するようにメッセージング・エンジンを構成する場合、 アプリケーション・サーバーに障害が発生した後に、 メッセージング・エンジンが自動的に再始動できる ようにしてください。以下のように、ご使用の構成に適したオプションを選択します。
- 単一のサーバーを実行している場合、 WebSphere Application Server はフェイルオーバーをサポートしません。 その他の高可用性の方法をご検討ください。
- クラスター化されていない WebSphere Application Server Network Deployment を実行している場合、ノード・エージェントのデフォルト構成により自動再始動が確実に行われます。
- クラスタリング機能を持った WebSphere Application Server Network Deployment を実行している場合、 ピア・リカバリーによりメッセージング・エンジンが再始動されます。ピア・リカバリーを有効にするように高可用性ポリシーを構成したことを確認してください。