AWS Application Migration Service (MGN) と エージェントレス vCenter クライアントを利用して VMware 仮想環境から AWS への移行を加速させる

所要時間6分
コンテンツレベル: 中級
1

AWS MGN を利用して VMware 仮想環境 (VMware Cloud on AWS) から Amazon EC2 へのエージェントレスでの移行設定と構成の方法を解説し、ワークロードの移行をスムーズに行う手順を紹介します。

はじめに

このガイドでは、 AWS Application Migration Service (MGN) を使って、 VMware Cloud on AWS 上で稼働する VMware 仮想マシンを Amazon EC2 への移行する手法を探っていきます。まずは AWS MGN サービスの設定を行い、 AWS MGN vCenter クライアントを VMware Cloud on AWS 環境にデプロイします。これにより AWS マネジメントコンソールで VMware ワークロードの移行を管理できるようになります。AWS MGN の レプリケーションテンプレート、起動テンプレート、起動後テンプレート の設定方法についても説明します。

初期設定が完了し、移行対象の VMware ワークロードが選択されたら、 AWS MGN を使ってこれらのワークロードを AWS にレプリケーションしていきます。これには、 VMware ワークロードの CPU、メモリ、ネットワーク、ストレージ設定を、 AWS の要件に合わせて適切に構成する作業が含まれます。初回のレプリケーションが完了したら、ワークロードのテストを行い、最終的に VMware Cloud on AWS 上の VMware 仮想マシンから Amazon EC2 への切り替え (移行) を行う方法を説明します。

移行の前提条件

移行を検討する際には、以下のような前提条件を考慮する必要があります:

・ ワークロードのネットワーク要件を理解し、AWS 上で必要なネットワーク構成を計画する。これには Amazon VPC の設定、サブネット、ルーティングテーブル、セキュリティグループの作成、既存のセキュリティルールを AWS に移行すること、ロードバランシングや VPN 接続などの特定のネットワーク要件が含まれます。移行においては、ネットワークが最も重要な検討事項です。

・ IP アドレスの変更: 移行中に IP アドレスを変更する計画がある場合は、十分な計画が必要です。VMware Cloud on AWS から全ネットワークを AWS に移行する場合は、IP アドレスを変更しないことも検討できますが、それでも綿密な計画が不可欠です。

・ コストの最適化: この機会に最適化を行い、AWS サービスの料金モデルを理解し、コスト分析を行ってコストを削減する必要があります。ワークロードの要件に応じて、EC2 リザーブドインスタンスやスポットインスタンスの活用、その他のコスト削減戦略を検討してください。

・ セキュリティとコンプライアンス: ワークロードのセキュリティとコンプライアンスの要件を評価し、AWS がそれらの要件を満たしていることを確認してください。AWS Identity and Access Management (IAM)、AWS Security Groups、AWS CloudTrail などの AWS セキュリティサービスについて理解しておく必要があります。

・ 高可用性と災害復旧: ワークロードの高可用性と災害復旧の要件を特定し、Availability Zones、Auto Scaling、AWS Backup などの適切な AWS サービスと設定を計画する必要があります。

ネットワークの前提条件

以下のネットワーク接続図をご確認ください。

・ ステージングエリアサブネット: AWS MGN のデータ複製元サーバーから AWS へのデータ複製用に、専用のサブネットを作成します。複製設定テンプレートでこのサブネットを指定します。

・ ステージングエリアサブネットから、TCP ポート 443 の送信トラフィックが AWS MGN API エンドポイントに許可されていることを確認します。また、送信元サーバーから、TCP ポート 1500 の送信トラフィックがステージングエリアサブネットと AWS MGN API エンドポイントに許可されている必要があります。

・ オペレーション用サブネット: テストと切り替えのインスタンスは、AWS MGN に追加された各送信元サーバー用に自動的に作成された EC2 起動テンプレート で指定されたサブネットにローンチされます。ネットワーク要件の詳細については、こちらを参照してください。

0. Overview diagram

初期デプロイ

最初に完了する必要がある4つのステップは以下の通りです:

・ AWS MGN の有効化 ・ レプリケーションテンプレートの設定 ・ EC2 起動テンプレートの設定 ・ 起動後テンプレートの設定

AWS Applicaiton Migration Service (MGN) の有効化

  1. AWS マネジメントコンソールにログインします。
  2. AWS MGN を有効化したいリージョンに切り替えます (VMware Cloud on AWS のデプロイメントと同じリージョン)。
  3. AWS Applicaiton Migration Service (MGN) を開きます。1. AWS MGN service
  4. 右側の「Get Started」を選択します。
  5. 「Set up service」を選択します。設定には約 1-2 分かかりますが、完了すると以下のメッセージが表示されます。 2. AWS MGN message

レプリケーションテンプレートの設定

レプリケーションテンプレートは、送信元サーバーから AWS へのデータレプリケーション設定を定義する構成テンプレートです。これらの設定を中央集約型のテンプレートで定義することにより、AWS MGN は設定プロセスを簡素化し、複数の送信元サーバーにわたって一貫したレプリケーション設定を確保できます。必要に応じて、サーバー単位でレプリケーションテンプレートを変更することもできます。

  1. AWS MGN コンソールで、左側のメニューの「Settings」をクリックし、「Replication template」を選択します。
  2. 「Edit」をクリックします。
  3. レプリケーション設定テンプレートでは以下の項目を指定できます:
    • ステージングエリアサブネット: AWS MGN がデータ複製用のレプリケーションサーバーをローンチするための、AWS アカウント内の専用サブネットです。
    • レプリケーションサーバーのインスタンスタイプ: ステージングエリアサブネットでAWS MGN が作成するレプリケーションサーバーに使用する EC2 インスタンスタイプです。
    • レプリケーションサーバーのセキュリティグループ: レプリケーションサーバーに適用するセキュリティグループで、必要な受信トラフィックと送信トラフィックを許可します。「Always use Application Migration Service Security Group」オプションを使用しています。
    • データのルーティングと帯域幅制限: 送信元サーバーからレプリケーションサーバーへのデータフローパスを決定します。プライベート IP を使用しない場合、レプリケーションサーバーに自動的にパブリック IP が割り当てられ、データは公開インターネットを介して送信されます。代替として、データ複製に使用するネットワーク帯域幅を制限するオプションもあります。今回はプライベート IP を使用しています (VMware Cloud on AWS から AWS ステージングサブネットへの接続とルーティングを構成しているため)。
    • EBS ボリューム構成: レプリケーションサーバーに作成、アタッチされる EBS ボリュームの設定です。
  4. 上記の設定が完了したら、「Save Template」をクリックします。

起動後テンプレートの設定

起動後テンプレートを使うと、サーバー起動時に実行するアクションを設定できます。

  1. AWS MGN コンソールで、左側のメニューの「Settings」をクリックし、「Post-launch template」を選択します。
  2. 「Edit」をクリックします。
  3. AWS Systems Manager Agent のインストールを有効にします。
  4. このガイドでは、テストと切り替え用のインスタンスとして設定しています。

Post-launch template

  1. 「Save template」をクリックします。
  2. 上記の設定が完了すると、AWS 上でサーバーが起動した後に実行するアクションを設定および自動化できます。「Post-launch template」の設定に戻ると、アクションの作成やテンプレートアクションの使用などのオプションが表示されます。

エージェントレスの vCenter クライアントのデプロイ

いよいよお楽しみのパートです。AWS MGN エージェントレス用の vCenter クライアントをデプロイする準備ができました。

IAM ユーザーの設定

  1. まず最初は IAM ユーザーを作成します。AWS マネジメントコンソールの 「AWS IAM」を開きます。
  2. 「Users」を選択し、「Create user」をクリックします。
  3. ユーザー名を入力します (「Provide user access to the AWS Management Console」にはチェックしません)。
  4. 「Next」をクリックします。
  5. 「Attach policies directly」を選択します。
  6. 「AWSApplicationMigrationVCenterClientPolicy」と「AWSApplicationMigrationAgentPolicy」を検索して選択します。
  7. 「Next」をクリックします。
  8. 「Create user」をクリックします。
  9. ユーザーアカウントを開き、「Security credentials」タブを選択します。

4. Security credentials

  1. 「Create access key」をクリックします。
  2. 「Command Line Interface」を選択し、「I understand the above recommendation and want to proceed to create an access key.」にチェックを付けます。
  3. 「Next」をクリックし、「Create access key」をクリックします。
  4. アクセスキーとシークレットアクセスキーを保存する必要があります。これらは、デプロイメントに使用します。

vCenter クライアントのインストール

vCenter クライアントをインストールするには、VMware 仮想マシンがすでにデプロイされている必要があります。vCenter クライアントはこの仮想マシンにインストールされます。ここでは、VMware Cloud on AWS 上の一般的な Linux 仮想マシンを vCenter クライアントとして使用しています。AWS MGN vCenter クライアントをインストールする VMware 仮想マシンは、以下のメモリ、CPU、ディスク容量の要件を満たす必要があります:

・最小要件(これらの要件では最大5台のサーバーを並行して複製できます) - 2 GiB RAM、1 コア、10 GiB の空きディスク容量 ・オプションの性能要件 (このスペックでは最大 50 台のサーバーを並行してレプリケーションできます) - 16 GiB RAM、8 コア、10 GiB の空きディスク容量 ・vCenter クライアント用の仮想マシンに VMware Virtual Disk Development Kit (VDDK) をダウンロードする必要があります。これはデプロイ時に必要になります。ダウンロードはこちらから行えます (VMware Customer Connect へのログインが必要です)。

  1. vCenter クライアントの仮想マシンに SSH で接続します。
  2. AWS MGN vCenter クライアントのインストーラをダウンロードします: https://aws-application-migration-service-(region).s3.(region).amazonaws.com/latest/vcenter-client/linux/aws-vcenter-client-installer-init.py
  3. 上記の例では 次を使用しました。

5. Download vCenter Client

  1. vCenter クライアントをインストールするには、次のコマンドを実行します: sudo python3 aws-vcenter-client-installer-init.py
  2. 先ほど作成したユーザーのAWSアクセスキーとシークレットアクセスキーを入力します。
  3. デプロイ用のAWSリージョンを入力します。これは、VMware Cloud on AWSと同じリージョンにする必要がありますが、別のリージョンに移行する場合は異なるリージョンを指定できます。
  4. VMware Cloud on AWS のvCenterのIPアドレスまたはURLを入力します(VMware Cloud on AWS コンソールでプライベートに設定されているURLを使用しました)。
  5. ポート番号 (443) を入力します。

6. Setup vCenter Client #1

  1. vCenter のユーザー名とパスワードを入力します。
  2. "Enter path to vCenter root CA certificate" のプロンプトは空のまま Enter キーを押します。
  3. VDDK tarball のパスを入力します。ファイル名も含めて入力する必要があります (例: "/path/to/VDDK/VMware-vix-disklib-7.0.3-21933544.x86_64.tar.gz")。

7. Setup vCenter Client #2

  1. オプション - AWS vCenter クライアントのリソースタグを入力します。
  2. オプション - AWS vCenter クライアントによって検出される送信元サーバーのリソースタグを入力します。
  3. このガイドではタグは空白のままにしています。
  4. これで AWS vCenter クライアントがダウンロードされ、インストールされ、AWS MGN に登録されます。この処理には約 2 分かかります。次のステップに進む前に、インベントリの収集が開始(あるいは完了)するまで約 15 分待ってください。 8. Setup vCenter Client #3
  5. VMware Cloud on AWS の vCenter からインベントリ詳細が取得されるようになったことを確認するには、AWS MGN コンソールに戻り、「source servers」を選択します。
  6. おそらく送信元サーバーは表示されていないでしょう。心配する必要はありません。これは簡単に修正できます。「Active Source Servers」と表示されているドロップダウンで「Agentless Source Servers」を選択します。

9. Source Servers

  1. これで VMware Cloud on AWS の vCenter からのインベントリ情報が全て表示されるはずです。一部のインベントリは表示されるものの、まだ全てが表示されていない場合は、読み込み中であるため時間を置いて確認してください。

移行の準備完了

おめでとうございます、ようやくここまでたどり着きました。これで VMware Cloud on AWS から EC2 への仮想マシンの移行を開始する準備ができました。ただし、移行の流れを説明させていただきます。これは3ステップのプロセスになります:

  1. レプリケーションの開始: このステップでは初期同期を行い、レプリケーション対象の 仮想マシン全体のディスクコンテンツを AWS に送信します。その後のスナップショット送信プロセスでは CBT (Changed Block Tracking) を利用し、VMware Cloud on AWS から MGN への差分ディスクデータのみを同期させます。つまり、最終的なカットオーバーの前から、MGN は継続的にスナップショットデータを送信し続けます。
  2. インスタンス/ワークロードのテスト: 初期同期が完了したら、テストを行います。
  3. インスタンス/ワークロードのカットオーバー: テストが完了し、期待通りに動作することを確認したら、カットオーバーを行います。

VMware Cloud on AWS から EC2 への仮想マシンのレプリケーションを開始する方法は2つあります。1つ目は、MGN の「Source servers」画面で送信元サーバーを見つけ、選択する方法です(ドロップダウンメニューから「Agentless discovered servers」を選択する必要があります)。2つ目は、私のおすすめですが、アプリケーションを構成する仮想マシンをまとめて移行する方法です。

アプリケーションの作成

  1. AWS コンソールを開き、AWS MGN に移動します。
  2. 左側のメニューから「Applications」を選択します。
  3. 「Add application」をクリックします。10. Add applicaiton #1
  4. アプリケーションに名前と説明を付けます。
  5. 「Servers」のドロップダウンメニューから、このアプリケーションを構成する仮想マシンを選択します (サーバーに命名規則がある場合は、検索フィールドにそのパターンを入力して表示される仮想マシンの数を絞り込むことができます)。

11. Add application #2

  1. 「Add application」をクリックします。他のマイグレーション対象のアプリケーションについても同様の手順を繰り返します。
  2. これで、移行対象のアプリケーションの一覧が表示されます。

12. Add application #3

ウェーブの作成

次に、1つ以上のアプリケーションで構成されるマイグレーションウェーブを作成する必要があります。

  1. AWS コンソールを開き、AWS MGN に移動します。
  2. 左側のメニューから「Waves」を選択します。
  3. 「Add wave」をクリックします。13. Add Wave #1
  4. ウェーブに名前と説明を付けます。
  5. 「Application」のドロップダウンメニューには、前の手順で作成したアプリケーションが表示されるので、このマイグレーションウェーブに含めるアプリケーションを選択します。

14. Add Wave #2

  1. 「Add wave」をクリックします。他のマイグレーションウェーブについても同様の手順を繰り返します。
  2. これで、マイグレーションウェーブの一覧が表示されます。

15. Add Wave #3

レプリケーションの開始

アプリケーションとマイグレーションウェーブの設定が完了したので、選択したアプリケーションのレプリケーションを開始できます。

  1. AWS マネジメントコンソールを開き、AWS Application Migration Service (MGN) に移動します。
  2. 左側のメニューから「Waves」を選択します。
  3. レプリケーションを開始したいウェーブを選択します(これはアプリケーションのカットオーバーではなく、データのレプリケーションのみを行います)。
  4. 「Actions」のドロップダウンメニューから「Start data replication」を選択します。

16. Migraiton #1

  1. レプリケーションを開始すると、ウェーブ名 (この例では Wave #1)をクリックすることで、コンソールからその進捗を追跡できます。

17. Migration #2

  1. 「Source servers」をクリックすると、レプリケーションの状態についてより詳細な情報を確認できます。

18. Migration #3

  1. さらに個々の送信元サーバーをクリックすると、その特定のサーバーに関する詳細な情報を確認できます。

19. Migration #4

  1. 初期同期が完了すると、送信元サーバーの「Migration lifecycle」の状態が「Ready for testing」になります。また、下の画像のように、最後のスナップショットが取得された時刻が表示されます。最終的なカットオーバーまで、変更ブロックのみのスナップショットが継続的に取得されます。

20. Migration #5

テストの準備

マイグレーションウェーブの初期同期が完了したので、テストの準備ができました。テストの基準については、要件に応じて定める必要がありますが、以下のような点をテストに含めることを推奨します:

  • インスタンスが正常に起動し、アクセスできること (SSH、RDP、など)
  • アプリケーション内のインスタンス間の接続性
  • アプリケーション固有のテスト (ベンチマークテストを行う場合は、VMware Cloud on AWS と同じテストを実行すること)
  • アプリケーションオーナーやエンドユーザーによるユーザー受け入れテスト

テストの基準が作成できたら、テストインスタンスの起動を始めましょう。「Launch test instances」ボタンをクリックする前に、EC2 起動テンプレートの設定を変更する必要があります。これにより、各インスタンスに固有の設定 (キーペアなど) を割り当てられます。

  1. AWS コンソールを開き、AWS MGN に移動します。
  2. 左側のメニューから「Waves」を選択し、テストするウェーブを選択します。
  3. 「Source servers」タブを選択します。
  4. 送信元サーバーの1つを選択し、「Launch settings」タブを選択します。

21. Launch Setting

テストインスタンスの起動

これでテストの準備が整いました。テストプランも用意できたので、いよいよ開始しましょう。

  1. AWS コンソールを開き、AWS MGN に移動します。
  2. 左側のメニューから「Waves」を選択し、テストするウェーブを選択します。
  3. 「Actions」のドロップダウンメニューから「Launch test instances」を選択します。

22. Launch test instance #1

  1. ポップアップウィンドウが表示されるので、情報を確認し、準備ができたら「Launch」をクリックします。

  2. AWS MGN の「Waves」セクションで、テストプロセスの進捗を追跡できます。個々の送信元サーバーを選択すると、より詳細な情報が確認できます。

  3. テストの EC2 インスタンスがデプロイされている間は、各送信元サーバーで「Launch Status」が「Waiting」と表示されます。

23. Launch test instance #2

  1. 全ての送信元サーバーがテスト準備完了になると、マイグレーションウェーブの「source servers」セクションで、「Migration lifecycle」の状態が「Test in progress」に変わります。

24. Launch test instance #3

  1. 送信元サーバーの1つを選択すると、「Launch status」が「Launched」と表示され、「View in EC2 console」のオプションが表示されます。これをクリックすると、テストインスタンスがEC2コンソールで開きます(ブラウザの新しいタブが開きます)。

25. Launch test instance #4

カットオーバーの準備

テストが無事に完了し、次のステージに進む準備ができました。ただし、まだ本番への移行の準備ができていない場合は、テストからの巻き戻しを行うこともできます。

  1. AWS マネジメントコンソールを開き、AWS Appliation Migration Service (MGN) に移動します。
  2. 左側のメニューから「Waves」を選択し、テストから巻き戻したいウェーブを選択します。
  3. 「Actions」のドロップダウンメニューから「Revert to "Ready for testing"」を選択します。これにより、作成された EC2 インスタンスが削除されます。VMware Cloud on AWS と AWS MGN 間のスナップショットはテスト段階で継続して取得されているので、他の操作は必要ありません。

26. Prepare for cutover #1

本番への移行の準備ができた場合は、カットオーバーを始めましょう。

  1. AWS コンソールを開き、AWS MGN に移動します。
  2. 左側のメニューから「Waves」を選択し、カットオーバーの準備ができたウェーブを選択します。
  3. 「Actions」のドロップダウンメニューから「Mark as "Ready for cutover"」を選択します。

27. Prepare for cutover #2

  1. ポップアップが表示され、テストの EC2 インスタンスを削除するかどうかを尋ねられます。EC2 インスタンスを削除するか保持するかを選択し、「Continue」をクリックします。(この例では、デフォルトの「terminate launched test instances」を選択しました)

28. Prepare for cutover #3

  1. テストの EC2 インスタンスが削除されます (「terminate launched test instances」を選択した場合)。また、「Migration lifecycle」の状態が「Ready for cutover」に変更されます。

29. Prepare for cutover #4

  1. マイグレーションウェーブのコンソールで、「Actions」のドロップダウンメニューを選択し、「Launch cutover instances」を選択します。
  2. 「Migration lifecycle」の状態が「Cutover in progress」に変更されたことが確認できます。
  3. 送信元サーバーがカットオーバー準備完了になると、「Launched」のステータスが表示されます。マイグレーションウェーブ内のすべての送信元サーバーがこのステータスになるまで待ちます。

30. Prepare for cutover #5

最終カットオーバー

カットオーバーの EC2 インスタンスでのテストが完了したら、最終カットオーバーの準備ができました:

  1. AWS マネジメントコンソールを開き、AWS Application Migration Service (MGN) に移動します。
  2. 左側のメニューから「Waves」を選択し、カットオーバーの準備ができたウェーブを選択します。
  3. 「Actions」のドロップダウンメニューから「Mark as Finalize cutover」を選択します。

31. Final cutover #1

  1. カットオーバーが完了すると、すべての送信元サーバーの「Migration lifecycle」の状態が「Cutover Complete」になります。
  2. マイグレーションウェーブの表示を確認すると、「Migration status」が「Completed」と表示されていることが確認できます。

32. Final cutover #2

  1. 他のマイグレーションウェーブについても同様の手順を踏んで移行を進めることができます。

まとめ

本ガイドでは、AWS Application Migration Service (MGN) を利用した VMware Cloud on AWS から Amazon EC2 への仮想マシンの移行プロセス全体を解説しました。AWS MGN vCenter クライアントの設定から、レプリケーションやテストの詳細な手順まで、スムーズかつ効率的な移行を実現する知識が得られたかと思います。

本ガイドをご覧いただき、ありがとうございました。クラウドコンピューティングのメリットを最大限に活かすための明確な道筋と実践的な洞察を提供いたしました。クラウド戦略を継続的に適応・改善していく際には、一つ一つの取り組みが、より規模の大きな効率的で費用対効果の高い IT 運用につながっていきます。


翻訳は、Specialist Solutions Architect - VMware Cloud on AWS の武田が担当しました。原文はこちらです。

profile pictureAWS
エキスパート
公開済み 20日前1944ビュー
コメントはありません