概要
複数のリージョンでビジネスを展開している場合、ビジネスの分散に応じて MongoDB インスタンスを複数リージョンにデプロイし、マルチリージョンのビジネス運用をサポートできます。一般的なデプロイでは、2 つのリージョンのうちの 1 つのリージョンの MongoDB をメインのビジネスデータソースとして使用し、アプリケーションがデータを書き込みます。もう一方のリージョンの MongoDB は、主にメインビジネスリージョンの MongoDB からデータを読み取り、同期します。このソリューションでは、メインビジネスリージョンの ECS に、Alibaba が開発・保守するオープンソースプロジェクトである MongoShake サービスをインストールしてデプロイします。MongoShake は、Alibaba Group の大規模でクロスリージョンの e コマースビジネスをサポートし、メインリージョンの MongoDB から他のリージョンの MongoDB への一方向データ同期を実現します。同期遅延はインスタンスの負荷とネットワーク遅延に依存します。本番環境での理想的な遅延制御はミリ秒単位です。
リファレンスアーキテクチャ
次のアーキテクチャ図は、2 つのビジネスリージョンに MongoDB インスタンスをデプロイする方法を示しています。
手順
1. 指定されたリージョンに MongoDB インスタンスをインストールします。次に、ソース MongoDB があるメインビジネスリージョンに ECS インスタンスをインストールします。この ECS インスタンスには後で MongoShake をインストールします。このソリューションでは、Terraform を使用して MongoDB レプリカセットと ECS インスタンスを構築します。
2. MongoDB および ECS で、アカウント、セキュリティグループ、パブリックネットワークアドレスなどの関連するセキュリティ設定を行います。
3. ECS に MongoShake をインストールして設定します。
4. MongoShake サービスを有効化し、サンプルアプリケーションを実行して MongoDB から読み取りと書き込みを行います。データの複製プロセスを観察して確認します。
5. リソース構築用 Terraform テンプレートを参照して、Terraform を設定します。
6. データ同期モニタリング用 Python スクリプトを参照して、MongoDB のデータ同期をモニタリングする Python スクリプトを作成します。
7. デプロイガイドを参照して、デプロイプロセスをステップバイステップで完了します。
2. MongoDB および ECS で、アカウント、セキュリティグループ、パブリックネットワークアドレスなどの関連するセキュリティ設定を行います。
3. ECS に MongoShake をインストールして設定します。
4. MongoShake サービスを有効化し、サンプルアプリケーションを実行して MongoDB から読み取りと書き込みを行います。データの複製プロセスを観察して確認します。
5. リソース構築用 Terraform テンプレートを参照して、Terraform を設定します。
6. データ同期モニタリング用 Python スクリプトを参照して、MongoDB のデータ同期をモニタリングする Python スクリプトを作成します。
7. デプロイガイドを参照して、デプロイプロセスをステップバイステップで完了します。
注意事項
運用の卓越性
Alibaba Cloud ApsaraDB for MongoDB のコンソールでは、CPU、メモリ、IOPS、ディスク使用率、ネットワークのシステム監視メトリクスが提供されます。設定をカスタマイズしてアラームを設定し、システムとサービスをモニタリングできるため、パフォーマンスの問題に迅速に対応して解決し、標準的な日常運用を確立できます。
MongoShake には、データの複製プロセスをモニタリングする mongoshake-stat ツールが用意されています。データ量やレイテンシなどのメトリクスを通じて、データ転送の品質を評価できます。
セキュリティ
信頼性
Alibaba Cloud ApsaraDB for MongoDB の 3 ノード ReplicaSet およびシャーディングクラスターにより、MongoDB サービスの高可用性が保証されます。Alibaba Cloud は MongoDB の SLA も提供しています。
Alibaba Cloud のエキスパートにサポートを受ける
お問い合わせ