Azure Data Studio 用 Azure Cosmos DB for MongoDB 移行拡張機能 (プレビュー)
Azure Cosmos DB for MongoDB 移行拡張機能は、MongoDB のワークロードを Azure Cosmos DB に移行するのに役立ちます。 この拡張機能は、次のことに使用できます。
- ワークロードに対してエンドツーエンドの評価を実行し、ワークロードを仮想コア ベースの Azure Cosmos DB for MongoDB に移行するために必要なアクションを確認できます。
- 選択したデータベースとコレクションを使用して、仮想コア ベースの Azure Cosmos DB for MongoDB への移行操作を実行します。
重要
この拡張機能では現在、次のシナリオはサポートされていません。
- ソースまたはターゲット アカウントがプライベート エンドポイントが有効になっている移行。
- RU ベースの Azure Cosmos DB for MongoDB のオンラインとオフラインの移行オプション。
MongoDB 仮想コア用 API の代替ソリューションに関する詳細は、移行オプションを参照してください。
前提条件
- 既存の仮想コア ベースの Azure Cosmos DB for MongoDB アカウント。
- Azure サブスクリプションをお持ちでない場合は、無料でアカウントを作成します。
- Azure Data Studio の最新版。
- バージョン 3.2 以降を実行している MongoDB。
- ソース MongoDB および 仮装コア ベースの Azure Cosmos DB for MongoDB ターゲット アカウントにファイアウォールの例外を追加して、グローバル Azure データセンターからの接続を受け入れます。
- Database Migration Service を初めて使う場合は、Microsoft.DataMigration リソース プロバイダーがサブスクリプションに登録されていることを確認します。
準備
移行を開始する前に、実際にデータを動かす前の移行に関する計画と意思決定を前もって行いましょう。
- MongoDB 仮想コア用 API の事前移行計画の詳細については、「仮想コア ベースの Azure Cosmos DB for MongoDB 事前移行手順」を参照してください。
- MongoDB RU 用 API の事前移行計画の詳細については、「RU ベースの Azure Cosmos DB for MongoDB の事前移行手順」を参照してください。
サブスクリプションにリソース プロバイダー Microsoft.EdgeZones のサブスクリプションを登録する
Microsoft.DataMigration リソース プロバイダーがサブスクリプションに登録されていることを確認するには、次の手順に従います。
Azure portal:
- Azure portal にアクセスし、サブスクリプションに移動します。
- 左側のメニューで、[設定] の下にある [リソース プロバイダー] を選択します。
- 上部の検索ボックスで Microsoft.DataMigration を検索します。
- 登録されていない場合は、それを選択し、[登録] ボタンをクリックします。
Azure CLI:
- Azure Cloud Shell またはローカル ターミナルを開きます。
- リソース プロバイダーを登録する以下のコマンドを実行します。
az provider register --namespace Microsoft.DataMigration
PowerShell:
- Azure Cloud Shell またはローカル PowerShell を開きます。
- リソース プロバイダーを登録する以下のコマンドを実行します。
Register-AzResourceProvider -ProviderNamespace "Microsoft.DataMigration"
拡張機能をインストールする
移行を開始する前に、Azure Data Studio に Azure Cosmos DB for MongoDB 移行用の拡張機能をインストールします。
Azure Data Studio で拡張機能マネージャーを開きます。 拡張機能アイコンを選択するか、[表示] メニューの [拡張機能] を選択します。
検索バーの
Cosmos
を入力します。[Azure Cosmos DB Migration for MongoDB] 拡張機能を選択し、その詳細を表示します。
[インストール] を選択します。
拡張機能の設定を構成する
評価拡張機能をインストールしたら、拡張機能の一部の設定を構成できます。 この手順は省略可能です。 設定が明示的に構成されていない場合、拡張機能では既定の設定が使用されます。
拡張機能に移動し、[Azure Cosmos DB Migration for MongoDB] を選択して、[設定の管理] アイコンをクリックし、拡張機能の設定を選択します。
この拡張機能の設定で
Assessment path
を指定して、評価メタデータが格納される場所を変更します。 空白のままにすると、既定の場所が使用されます。
MongoDB ソースに接続する
既存 MongoDB のソース インスタンスに初めて接続するには、拡張機能を使用します。 このセクションを開始する前に、ソースの接続資格情報を準備しておく必要があります。
メニュー バーの接続アイコンに移動し、[新しい接続] を選択します。
[接続] ウィンドウで、次のフィールドに入力します。
値 接続の種類 Azure Cosmos DB for MongoDB
接続文字列/パラメーター 既存のソース MongoDB インスタンスの接続文字列またはパラメーターを使用します。 サーバー グループ Default
名前 (省略可能) この接続に一意の名前を指定します。 [接続] を選択します。
[接続] ウィンドウで、新しい接続のコンテキスト メニューを開きます。 次に、[管理] を選択します。
[Azure Cosmos DB の移行] を選択 します。
評価を実行する
評価では、現在の MongoDB データ資産と使用率を調査します。 その後、評価機能により、Azure Cosmos DB for MongoDB にワークロードを移行する前に実行する必要があるアクションを特定するのに役立つ包括的なレポートが生成されます。
[ダッシュボード] タブを見つけて移動します。次に、[データベースの評価と移行] を選択します。
ウィザードを完了して拡張機能に詳細を入力し、評価を実行できるようにします。
[評価名] フィールドに、タイトルを入力します。
[オファリング] ドロップダウンから、ターゲットの Azure Cosmos DB for MongoDB アカウントを選択します。
MongoDB ログ へのパスを指定します。
ヒント
これは省略可能なフィールドですが、ログ パスを指定すると、コレクション レベルでより詳細な結果が得られます。 ログ フォルダーが指定されていない場合、ツールでは
serverStatus
コマンドの詳細を使用して評価が実行されます。serverStatus
コマンドは、前回の再起動以降の機能の使用状況のみを返します。そのため、実際のワークロードを正確に反映している評価を取得するには、サーバーの前回の再起動から十分な時間が経過していることを確認する必要があります。データ評価ログへのパスを指定します。
ヒント
このフィールドは省略可能ですが、データ評価ログを提供すると、ワークロードに関するより詳細な分析情報が得られます。 これらのログは、データのスキャンと詳細ログの読み取りによって取得されます。 データ評価は、移行評価を開始する前に CLI として個別に実行され、結果の JSON がここで提供されます。 こちらで、データ評価 CLI をダウンロードします。
[検証の実行] を選択して、評価の入力を検証します。
検証が成功したら、[評価の開始] を選択して評価を実行します。
ソース サーバーのサイズによっては、評価に数分かかります。 評価が完了するまで待ってから次に進みます。
評価が完了すると、評価レポートが作成されます。
評価レポートでインスタンス名を選択して、サーバー全体の問題の一覧を確認します。 特定のデータベースを選択すると、選択したデータベースにのみ適用される問題が表示されます。
[レポートのダウンロード] を選択して、ダウンロード可能な統合レポートを取得します。
評価レポートを調査して、Azure Cosmos DB for MongoDB でワークロードをシームレスに移行するために必要なアクションを特定します。 次の手順に進む前に、評価で報告されたすべての障害となっている問題に対応済みであることを確認します。 未解決の問題がある場合は、プロセスを終了し、後で処理することもできます。 問題が解決したら、戻って評価と移行プロセスを再開できます。
移行を実行する
次に、評価レポートを使用して、ソース MongoDB インスタンスからターゲットの仮想コア ベースの Azure Cosmos DB for MongoDB アカウントへのデータのオフライン移行を実行します。
評価レポート画面で、移行するデータベースを選択します (複数可)。 次に、 [次へ] を選択します。
サブスクリプションとリソース グループでフィルター処理して一覧を絞り込み、ターゲットの Azure Cosmos DB for MongoDB アカウントを選択します。 次に、アカウントに接続するために必要な接続資格情報を入力します。
[接続のテスト] を選択して、Azure Cosmos DB for MongoDB アカウントの資格情報を検証します。 [次へ] を選択して、ソースからターゲットへのコレクションのマッピングに移動します。
マッピングの一覧で、コレクションごとに [スキップ] または [移行] を選択します。 ターゲットに既に存在するコレクションは、自動的にアイコンでマークされ、既定では [スキップ] に設定されます。 [次へ] を選択肢、Azure Database Migration Service (DMS) を構成します。
警告
既存のコレクションを [移行] することを選択すると、コレクション全体が上書きされ、これによって失われたデータは回復できません。 このオプションを選択するときは注意が必要です。
ドロップダウンから既存の Azure Database Migration Service インスタンスを選択するか、[新規作成] を選択して新しい移行サービスを作成します。 Azure Database Migration Service は、ローカル リソースに依存するのではなく、データ転送にクラウド インフラストラクチャを使用して Azure データ プラットフォームとの間でデータを移行するサービスです。
ユース ケースに対して最適な移行モードを選択します。
- オンライン移行はコレクション データをコピーし、プロセス中に更新プログラムも確実にレプリケートされるようにします。 このメソッドは、ダウンタイムを最小限に抑え、ビジネス継続性のための継続的な運用を可能にするという利点があります。 進行中の操作が重要であり、ダウンタイムの削減が優先される場合は、このオプションを使用します。
- オフライン移行は、最初にデータベースのスナップショットをキャプチャし、より簡単で予測可能なアプローチを提供します。 データベースの静的コピーを使用しても問題なく機能し、リアルタイムの更新は必須ではありません。
[次へ] を選択肢て移行の概要を表示します。 詳細を確認して確認したら、[スキーマの作成] を選択してターゲット アカウントにリソースを作成します。
選択した移行サービスを使用してデータ転送を開始するには、[移行の開始] を選択します。
[設定の確認] のポップアップで、ファイアウォール設定が要件を満たしていることを確認します。 OK を選択して確認します。
データ移行タスクは Azure Database Migration Service で実行されるため、データ移行中にソース環境とターゲット環境に接続する必要はありません。 ダッシュボードの状態は頻繁に更新される
Note
移行対象として 50 を超えるコレクションを選択した場合、移行ジョブは移行サービス上の複数のジョブにバッチ処理され、それぞれには最大 50 個のコレクションが含まれます。
オフライン移行の監視
すべてのデータ移行タスクが完了すると、状態が自動更新されます。
ソースからターゲットにデータが正常にコピーされると、オフライン移行の状態は成功を示します。
- アプリケーションの接続文字列を、ターゲット アカウントを示すように変更します。
オンライン移行の監視
オンライン移行は、オフライン移行とは異なり、自動的には完了しません。 代わりに、[一括移行] を選択して手動で終了するまで、継続的に実行されます。
オンライン移行を完了するには、指定された順序で次の手順に従います。
[一括移行] ボタンは、すべてのコレクションの初期データ読み込みが完了すると有効になります。 移行は現在レプリケーション フェーズ中であり、ソース インスタンスからターゲット インスタンスに更新プログラムを継続的にコピーし、最新の変更を最新の状態に保ちます。
移行のカットオーバーを実行する準備ができたら、移行するソース コレクションへのすべての受信トランザクションを停止します。
テーブル内のレプリケーションの変更を監視し、'Replication Changes Played' メトリックが安定するまで待ちます。 安定した "Replication Changes Played" メトリックは、ソースからのすべての更新がターゲットに正常にコピーされたことを示します。
すべてのコレクションのレプリケーション ギャップが最小限で、'Replication Changes Played' メトリックが安定している場合は、[一括移行] を選択します。
ソース コレクションとターゲット コレクションの間で行数が同じであることを手動で検証します。
ポップアップ ダイアログ内。 [一括移行を完了] を選択します。
Note
ソースとターゲットが同期されていることを検証せずに一括移行操作を実行すると、データが失われる可能性があります。
状態が「成功」に変わるまで待ちます。
ターゲット アカウントを指すように、アプリケーションの接続文字列を更新します。
過去の移行と評価を表示する
多くの場合、過去の評価と移行を確認すると便利です。 拡張機能は、過去の評価と移行の概要を確認するためのインターフェイスを提供します。 拡張機能には、詳細な過去の評価レポートを確認する機能も用意されています。
過去の移行を表示するには、ツール バーの [移行] タブを選択します。 移行の一覧には、現在のコンピューターで開始されたすべての移行が含まれています。 一覧で特定の移行を選択すると、詳細を取得できます。
過去の評価を表示するには、ツール バーの [評価] タブを選択します。 評価の一覧には、現在のコンピューターで開始されたすべての評価が含まれています。