Docs Menu
Docs Home
/
ガイドを利用する

Compose から MongoDB Atlas への移行

このガイドでは、Atlas ライブ移行プロセスを使用して Compose から MongoDB Atlas にデータを移行する方法について説明します。

MongoDB Atlas ライブ移行サービスを使用すると、MongoDB データベースを当社のフルマネージドクラウドデータベースである MongoDB Atlas に迅速かつ安全に移行できます。 既存の MongoDB database に接続し、アプリケーションが正常に機能し続けている間に、Atlas で実行されているクラスターと同期することで機能します。 2 つのクラスター間のデータが同期されたら、アプリケーション内のデータベース接続stringを更新して、 Atlasのクラスターに移行できます。

所要時間: 20 分

重要

Compose 配置で SSL を有効にしている場合、ライブ移行プロセスを完了するには SSL 証明書にアクセスする必要があります。

一部の Compose 配置では、Compose UI で SSL 証明書を表示できなくなりました。 配置がこれに当てはまる場合は、次の 2 つのオプションがあります。

  • SSL 証明書をリクエストするには、Compose に直接お問い合わせください。

  • MongoMirrorを使用して、Atlas にデータを移行します。

Composer のドキュメント を参照 SSL 証明書の詳細については、 を参照してください。

  • データは現在 MongoDB database にあります。

    このガイドでは、Compose の既存の MongoDB デプロイから Atlas への移行に焦点を当てます。

  • 現在の MongoDB database は MongoDB 2.6 以降を実行しています。

    Atlas は MongoDB の最新バージョン ( 4.2 、 4.4 、 5.0 、 6.0 )をサポートしています。 MongoDB バージョン2.6以降を実行している場合、Atlas ライブ移行サービスは新しいデータベース バージョンにデータを直接移動できます。 MongoDB ドライバーを更新し、アプリケーション レベルで必要なコードを変更して互換性を確保します。 2より古いバージョンを実行している場合。 6 、 「 MongoDB を にアップグレードする26 」を参照してください。 アップグレード手順については、 を参照してください。

  • 現在の配置は MongoDB レプリカセットまたはシャーディングされたクラスターです。

    配置が現在スタンドアロン インスタンスである場合は、まずそれをレプリカセットに変換する必要があります。

    シャーディングされたクラスターからのデータのライブ移行はサポートされていません。 宛先クラスターはシャーディングできますが、ソースクラスターはシャーディングされていないレプリカセットである必要があります。

  • (任意)ソース配置で認証を有効にしました。

    移行プロセスでは、 Amazon Web Servicesのソースクラスターで認証が有効になっている必要があります。 認証を有効にする手順については、「 認証を有効にする 」を参照してください。 ソースクラスターで認証が有効になっているかどうかは、 mongoshコマンドを使用して確認できます。

    mongosh <mongodb-connection-string> -u <mongodb-username> -p --authenticationDatabase admin
  • 移行を実行するために使用するソースクラスターのデータベースユーザーには、必要な MongoDB ロールがあります。

    • readAnyDatabaseのロール。

    • clusterMonitorのロール。

    • backupのロール。

    ライブ移行プロセスを実行するデータベースユーザーがこれらのロールを持っていることを確認するには、 adminデータベースでdb.getUser()コマンドを実行します。

    use admin
    db.getUser("admin")
    {
    "_id" : "admin.admin",
    "user" : "admin",
    "db" : "admin",
    "roles" : [
    {
    "role" : "backup",
    "db" : "admin"
    },
    {
    "role" : "clusterMonitor",
    "db" : "admin"
    }
    {
    "role" : "readAnyDatabase",
    "db" : "admin"
    }
    ]
    } ...

    さらに、Compose のソースクラスターのデータベースユーザーには、 adminデータベース上の oplog を読み取るロールが必要です。 「 oplogアクセス」を参照してください。 次の手順で Compose に oplog ユーザーを追加するときに、このロールへのアクセス権を取得します。 Compose でソースクラスターのデータベースユーザーにこれらの権限のすべてを付与できない場合、ライブ移行プロセスは機能しません。 この場合は、 mongodump と mongorestoreを使用してデータを Atlas に移行します。

1

Atlas 配置をまだ持っていない場合は、ここで作成します。 ライブ移行を実行するには、 M10以上のクラスター階層が必要です。

2

Composer アカウント へのログイン をクリックし、Atlas に移行する配置に移動します。

注意

移行プロセス中に、Compose 配置コンソールで 1 つのブラウザ ウィンドウを開き、 Atlas コンソールで 1 つのウィンドウを開いたままにしておくと便利です。

3
1

左側のナビゲーションで [ Add-onsリンクをクリックします。 Oplog Accessアドオンがない場合は、 Addボタンで追加します。

2

Oplog Accessアドオンをすでにお持ちの場合は、 Configureをクリックして oplog ユーザーのユーザー名とパスワードを表示します。

oplogアクセス 追加オン 内でoplogのユーザー名とパスワードのフィールドを表示します。
クリックして拡大します

移行プロセスを実行するには、oplog ユーザーは次の特権を持っている必要があります。

これらの権限を oplog ユーザーに付与できない場合、ライブ移行プロセスは機能しません。 この場合は、 mongodump と mongorestoreを使用してデータを Atlas に移行します。

4

ライブ移行 ダイアログ ウィンドウで移行手順の概要を読み、緑色の [ I'm ready to migrate ] ボタンをクリックします。

5
1
  • 前の手順の Atlas ライブ移行プロセス ダイアログの場合。

  • Compose 配置ダッシュボード用。

2

Compose 配置ダッシュボードで、左側のナビゲーションにある [ Security ] リンクをクリックします。 Whitelist TCP/HTTP IPsセクションには、Compose 配置へのアクセスを許可される IP アドレス範囲のリストが表示されます。

3

Atlas Migration プロセス ダイアログ ウィンドウの上部にリストされている IP アドレス範囲を追加します。

ホワイトリスト TCP/HTTP IP セクションに入力された IP アドレス範囲を表示します。
クリックして拡大します

注意

Atlas 移行の IP アドレス範囲は、ここに表示されているものとは異なる場合があります。

6

Composer 配置のホスト名とポートを Atlas ライブ移行ダイアログに追加します。

Oplog Accessの追加ページには、string アクセス用のホスト名とポートを含む接続oplog があります。これらを Atlas ライブ移行ダイアログにコピーします。

ホスト名とポートが入力されたフィールドを表示します。
7

Atlas ライブ移行 ダイアログ ウィンドウで、 oploguserのユーザー名とパスワードを入力します。

8

Compose 配置で TLS/SSL が有効になっていない場合は、この手順をスキップします。

重要

一部の Compose 配置では、Compose UI で TLS/SSL 証明書を表示できなくなりました。 配置がこれに当てはまる場合は、次の 2 つのオプションがあります。

  • TLS/SSL 証明書をリクエストするには、Compose に直接問い合わせます。

  • MongoMirrorを使用して、Atlas にデータを移行します。

Composer のドキュメント を参照してください SSL 証明書の詳細については、 を参照してください。

Oplog Access追加ページで、SSL 証明書を見つけます。 Atlas ライブ移行ダイアログの CAFile テキスト ボックスにコピーします。

CAFile テキスト ボックスに貼り付けられた SSL 証明書を表示します。

注意

BEGIN CERTIFICATE行とEND CERTIFICATE行を含む証明書ファイル全体をコピーします。

9

[ Validate ] ボタンをクリックして、すべてのフォーム フィールドが有効で、クラスターが移行の準備ができていることを確認します。 フォームの検証が完了したら、移行を開始する準備ができます。

10

進行状況バーのカウントダウン タイマーは、ターゲット クラスターがソース クラスターからデータを移行する準備ができるまでの残り時間を示します。 カウントダウン タイマーと [ Prepare to Cutover ] ボタンが緑色になるまで待ってから次の手順に進みます。

11
12

Atlas は、ソースクラスターと宛先クラスターがほぼ同期していることを検出すると、延長可能な 72 時間のタイマーを開始してカットオーバー手順を開始します。 72 時間が経過すると、Atlas はソースクラスターとの同期を停止します。 <time> left to cut overタイマーの下のExtend timeハイパーリンクをクリックすると、残り時間を 24 時間延長できます。

1

アプリケーションを宛先の Atlas クラスターに移行する準備ができたら、Prepare to Cutover をクリックします。

2

Atlas には、カットオーバーの進め方を示すウォークスルー画面が表示されます。これらの手順は、以下でも概説しています。

  1. アプリケーションを停止します。 これにより、ソースクラスターに対して追加の書込み (write) が生成されなくなります。

  2. optime ギャップが 0 になるまで待ちます。カウンターがゼロに達すると、ソースクラスターと宛先クラスターは同期されます。

  3. ライブ移行 のカットオーバー UI のステップ 3 で提供された接続stringを使用してアプリケーションを再起動します。

3

カットオーバー手順を完了し、アプリケーションが Atlas クラスターで正常に動作していることを確認したら、 Cut Overをクリックして移行手順を完了します。 これにより、Atlas では次のことが可能になります。

  • 移行プランを完了としてマークします。

  • アプリケーション サーバーのサブネットを宛先クラスターの IP アクセス リストから削除する。

  • ライブ移行で宛先クラスターへのデータのインポートに使用した MongoDB ユーザーを削除する。

このドキュメントで説明されている範囲外で移行に関して質問がある場合、または移行中にエラーが発生した場合は、サポートのリクエスト に関する Atlas のドキュメントを参照してください。

Atlas クラスターを作成し、古い Compose クラスターからデータを移行し、新しい Atlas クラスターを使用するようにアプリケーションを更新しました。 承認され、MongoDB Atlas へようこそ。