AWS アプリケーション移行サービスを使用してオンプレミス VM を Amazon EC2 に移行する - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS アプリケーション移行サービスを使用してオンプレミス VM を Amazon EC2 に移行する

作成者: Thanh Nguyen (AWS)

環境:本稼働

出典: オンプレミス仮想マシン

ターゲット: Amazon EC2

R タイプ: リホスト

テクノロジー: 移行

AWS サービス: AWS アプリケーション移行サービス、Amazon EC2、Amazon EBS

[概要]

アプリケーションの移行に関しては、組織はさまざまな方法でアプリケーションのサーバーをオンプレミス環境から Amazon Web Services (AWS) クラウドにリホスト (リフトアンドシフト) できます。1 つの方法は、新しい Amazon Elastic Compute Cloud (Amazon EC2) インスタンスをプロビジョニングし、アプリケーションを最初からインストールして設定することです。もう 1 つの方法は、サードパーティまたは AWS ネイティブの移行サービスを使用して、複数のサーバーを同時に移行することです。

このパターンは、AWS アプリケーション移行サービスを使用して、サポートされている仮想マシン (VM) を AWS クラウド上の Amazon EC2 インスタンスに移行する手順の概要を示しています。このパターンの方法を使用して、1 台または複数の仮想マシンを手動で 1 台ずつ移行することも、説明されている手順に基づいて適切な自動化スクリプトを作成して自動的に移行することもできます。

前提条件と制限

前提条件

  • アプリケーション移行サービスをサポートするいずれかの AWS リージョンのアクティブな AWS アカウント

  • AWS Direct Connect または仮想プライベートネットワーク (VPN) を使用するプライベートネットワーク、またはインターネットを介した、ソースサーバーとターゲット EC2 サーバー間のネットワーク接続

制限

アーキテクチャ

ソーステクノロジースタック

  • Amazon EC2 がサポートするオペレーティングシステムを実行する、物理、仮想、またはクラウドでホストされるサーバー

ターゲットテクノロジースタック

  • ソース VM と同じオペレーティングシステムを実行している Amazon EC2 インスタンス

  • Amazon Elastic Block Store (Amazon EBS)

ソースアーキテクチャとターゲットアーキテクチャ

次の図は、ソリューションの高レベルアーキテクチャと主要コンポーネントを示しています。オンプレミスデータセンターには、ローカルディスクを備えた仮想マシンがあります。AWS には、レプリケーションサーバーを含むステージングエリアと、テストとカットオーバー用の EC2 インスタンスを含む移行済みリソースエリアがあります。どちらのサブネットにも EBS ボリュームが含まれています。

  1. AWS アプリケーション移行サービスを初期化します。

  2. ステージングエリアサーバーの設定とレポート (ステージングエリアリソースを含む) を設定します。

  3. ソースサーバーにエージェントをインストールし、ブロックレベルの継続的なデータ複製 (圧縮および暗号化) を行います。

  4. オーケストレーションとシステム変換を自動化して、カットオーバー時間を短縮します。

ネットワークアーキテクチャ

次の図は、オンプレミスデータセンターと AWS の主要コンポーネント間の通信に必要なプロトコルとポートなど、ネットワークの観点から見たソリューションの大まかなアーキテクチャと主要コンポーネントを示しています。

ツール

  • AWS Application Migration Service を使用すると、変更を加えることなく、最小限のダウンタイムで、アプリケーションを AWS クラウドにリホスト (リフトアンドシフト) できます。

ベストプラクティス

  • ターゲット EC2 インスタンスへのカットオーバーが完了するまで、ソースサーバーをオフラインにしたり、再起動したりしないでください。

  • ユーザーがターゲットサーバーでユーザー承認テスト (UAT) を実施して、問題を特定して解決するための十分な機会を提供してください。このテストは、カットオーバーの少なくとも 2 週間前に開始するのが理想的です。

  • Application Migration Service コンソールでサーバーのレプリケーションステータスを頻繁に監視して、問題を早期に特定してください。

  • エージェントのインストールには、永続的な IAM ユーザー認証情報の代わりに、一時的な AWS Identity and Access Management (IAM) 認証情報を使用します。

エピック

タスク説明必要なスキル

AWS レプリケーションエージェント IAM ロールを作成する。

管理者権限を使用して AWS アカウントにサインインします。

AWS Identity and Access Management (IAM) コンソールで、IAM ロールを作成します。

  1. IAM コンソールで、[ロール] を選択します。

  2. [ロールの作成] を選択します。

  3. [信頼できるエンティティの選択] ページ[信頼できるエンティティタイプ] セクションで、[AWS アカウント] を選択します。

  4. [AWS アカウント] セクションで、[このアカウント (< account-id>)] を選択します。

  5. [次へ] を選択します。

  6. [アクセス権限の追加] ページで AWSApplicationMigrationAgentInstallationPolicy ポリシーを検索し、ポリシー名の横にあるチェックボックスをオンにします。

  7. [次へ] を選択します。

  8. ロールの詳細ページで、ロール名として MGN_Agent_installation_Role と入力します。

  9. フィールドが正しいことを確認し、[ロールの作成] を選択します。

AWS 管理者、移行エンジニア

一時的なセキュリティ認証情報を生成する。

AWS コマンドラインインターフェイス (AWS CLI) がインストールされているマシンで、管理者権限でサインインします。または (サポートされている AWS リージョン内で) AWS マネジメントコンソールで、AWS アカウントへの管理アクセス許可でサインインし、AWS を開きます CloudShell。

次のコマンドで一時的な認証情報を生成し、AWS アカウント ID に <account-id> を置き換えます。

aws sts assume-role --role-arn arn:aws:iam::<account-id>:role/MGN_Agent_Installation_Role --role-session-name mgn_installation_session_role

コマンドの出力から、AccessKeyIdSecretAccessKey、および SessionToken の値をコピーします。後で使用できるように安全な場所に保管してください。

重要: これらの一時的な認証情報は 1 時間後に失効します。1 時間後に認証情報が必要な場合は、前のステップを繰り返します。

AWS 管理者、移行エンジニア
タスク説明必要なスキル

サービスを初期化する。

コンソールで、管理者権限を使用して AWS アカウントにサインインします。

[アプリケーション移行サービス] を選択し、[はじめに] を選択します。

AWS 管理者、移行エンジニア

レプリケーション設定テンプレートを作成して設定する。

  1. 次の設定の詳細を入力します。

    1. ステージングエリアのサブネットを選択します。

    2. レプリケーションサーバーのインスタンスタイプを選択します (デフォルトでは t3.small)。

    3. EBS ボリュームタイプ (デフォルトでは gp3) を選択します。

    4. EBS 暗号化オプションを選択します。

    5. [常にアプリケーション移行サービスのセキュリティグループを使用する] チェックボックスがオンになっていることを確認します。

    6. オンプレミス環境と AWS 間のプライベートネットワーク接続を使用している場合は、「データレプリケーションにプライベート IP を使用する (VPN DirectConnect、VPC ピアリング)」チェックボックスをオンにします。

    7. Application Migration Service のネットワーク帯域幅を制限する場合は、[ネットワーク帯域幅を調整する (サーバーごと - Mbps 単位)] チェックボックスをオンにします。

  2. [テンプレートの作成] を選択します。

アプリケーション移行サービスは、データの複製と移行されたサーバーの起動を円滑に進めるために必要なすべての IAM ロールを自動的に作成します。

AWS 管理者、移行エンジニア
タスク説明必要なスキル

必要な AWS 認証情報を用意する。

ソースサーバーでインストーラファイルを実行するときは、AccessKeyIdSecretAccessKeySessionToken など、以前に生成した一時的な認証情報を入力する必要があります。

移行エンジニア、AWS 管理者

Linux サーバー用のエージェントをインストールする。

インストーラコマンドをコピーし、ソースサーバーにログインし、インストーラを実行します。詳細な手順については、AWS のドキュメントを参照してください。

AWS 管理者、移行エンジニア

Windows サーバー用のエージェントをインストールする。

インストーラファイルを各サーバーにダウンロードし、インストーラコマンドを実行します。詳細な手順については、AWS のドキュメントを参照してください。

AWS 管理者、移行エンジニア

初期データ複製が完了するまで待つ。

エージェントがインストールされると、ソースサーバーがアプリケーション移行サービスコンソールの [ソースサーバー] セクションに表示されます。サーバーが初期データ複製を行うまで待ちます。

AWS 管理者、移行エンジニア
タスク説明必要なスキル

サーバーの詳細を指定する。

アプリケーション移行サービスコンソールで、「ソースサーバー」セクションを選択し、一覧からサーバー名を選択してサーバーの詳細にアクセスします。

AWS 管理者、移行エンジニア

起動設定を設定する。

[起動設定] タブを選択します。一般的な起動設定や EC2 起動テンプレート設定など、さまざまな設定を行うことができます。詳細な手順については、AWS のドキュメントを参照してください。

AWS 管理者、移行エンジニア
タスク説明必要なスキル

ソースサーバーをテストする。

  1. Application Migration Service コンソールの [ソースサーバー] セクションで、ソースサーバーの [移行ライフサイクル][テスト準備完了] で、[データ複製ステータス][正常] であることを確認します。

  2. 各ソースサーバーの左にあるチェックボックスを選択します。

  3. [テストとカットオーバー] を選択し、[テストインスタンスを起動] を選択します。

  4. プロンプトが表示されたら、[起動] を選択します。

サーバーが起動します。

AWS 管理者、移行エンジニア

テストが正常に完了したことを確認します。

テストサーバーが完全に起動すると、ページ上の [アラート] ステータスに各サーバーが [起動済み] と表示されます。

AWS 管理者、移行エンジニア

サーバーをテストする。

テストサーバーに対してテストを行い、期待どおりに機能することを確認します。

AWS 管理者、移行エンジニア
タスク説明必要なスキル

カットオーバーウィンドウのスケジュールを設定する。

関連チームと適切なカットオーバー期間のスケジュールを設定してください。

AWS 管理者、移行エンジニア

カットオーバーを実行します。

  1. アプリケーション移行コンソールの [ソースサーバー] ページで、各ソースサーバーの左側にあるチェックボックスを選択します。

  2. [テストとカットオーバー] を選択し、[カットオーバーの準備ができているとしてマークする] を選択します。

  3. 各ソースサーバーの [移行ライフサイクル][カットオーバーの準備ができている] であることを確認します。

  4. [テストとカットオーバー] を選択し、[カットオーバーインスタンスを起動] を選択します。

  5. プロンプトが表示されたら、[起動] を選択します。サーバーが起動します。

ソースサーバーの [移行ライフサイクル][カットオーバー中] に変わります。

AWS 管理者、移行エンジニア

カットオーバーが正常に完了したことを確認します。

カットオーバーサーバーが完全に起動すると、各サーバーの [ソースサーバー] ページの [アラート] ステータスに [起動済み] と表示されます。

AWS 管理者、移行エンジニア

サーバーをテストする。

カットオーバーサーバーに対してテストを行い、想定どおりに機能することを確認します。

AWS 管理者、移行エンジニア

カットオーバーを確定する。

[テストとカットオーバー] を選択し、[カットオーバーの完了] を選択して移行プロセスを終了します。

AWS 管理者、移行エンジニア

関連リソース