すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for MongoDB:ApsaraDB for MongoDBがプライマリ /セカンダリの切り替えをトリガーするのはなぜですか。

最終更新日:Jun 12, 2024

ApsaraDB for MongoDBは高可用性 (HA) アーキテクチャを使用します。 ApsaraDB for MongoDBインスタンスは、ノードの1つが使用できないことを検出すると、プライマリ /セカンダリスイッチオーバーをトリガーします。 また、ショートメッセージサービス (SMS) メッセージまたは内部通知を送信して、切り替えを通知します。

内部通知

[Alibaba Cloud] 親愛なる ****: ApsaraDB for MongoDBインスタンスdds-bp **** (名前: ****) にエラーがあります。 インスタンスを安定して実行するために、切り替えがトリガーされます。 アプリケーションがまだインスタンスに接続されているかどうかを確認し、自動的にインスタンスに再接続するようにアプリケーションを設定することを推奨します。

内部通知を受け取るのはなぜですか?

ApsaraDB for MongoDBはHAアーキテクチャを使用します。 ApsaraDB for MongoDBのレプリカセットインスタンスにはデフォルトで3つのノードが含まれ、ApsaraDB for MongoDBのシャードクラスターインスタンスにはそれぞれ3つのノードが含まれます。 プライマリノードとセカンダリノードはアプリケーションを接続するために使用され、隠しノードはプライマリ /セカンダリスイッチオーバーに使用され、HAを保証します。 詳細については、「レプリカセットインスタンス」または「シャードクラスターインスタンス」をご参照ください。

一般的な原因:
  • ノードが利用できない: ApsaraDB for MongoDBはノードヘルスモニタリングをサポートしています。 監視結果に使用できないノードが表示されると、プライマリ /セカンダリの切り替えがトリガーされます。
  • ホストがオフライン: ApsaraDB for MongoDBインスタンスのプライマリノードがデプロイされているホストで例外が発生します。 ApsaraDB for MongoDBがホストがオフラインであると見なすケースを回避するために、プライマリ /セカンダリスイッチオーバーがトリガーされ、インスタンスの高可用性が確保されます。

プライマリ /セカンダリ切り替えの影響

  • プライマリ /セカンダリの切り替えにより、30秒未満の一時的な接続が発生します。
  • アプリケーションをプライマリノードに接続すると、プライマリ /セカンダリの切り替えにより、アプリケーションの読み取り /書き込み操作が影響を受けます。

提案事項

  • 切断後にApsaraDB for MongoDBインスタンスに再接続するようにアプリケーションを設定することを推奨します。
  • アプリケーションが本番環境で実行されている場合は、接続文字列URIを使用してアプリケーションをインスタンスに接続することを推奨します。 このようにして、プライマリ /セカンダリの切り替えの結果としてノードに障害が発生しても、アプリケーションの読み取り /書き込み操作は引き続き使用できます。 詳細については、「レプリカセットインスタンスへの接続」または「シャードクラスターインスタンスへの接続」をご参照ください。