Hyper-V VM を Azure に移行する

この記事では、オンプレミスの Hyper-V 仮想マシン (VM) を Azure ツールに移行する方法について説明します。

チュートリアルでは、概念実証をすばやく設定できるように、シナリオの最も簡単なデプロイ パスを示します。 チュートリアルでは、可能な限り既定のオプションを使用しており、使用可能な設定とパスをすべて示しているわけではありません。

このチュートリアルでは、以下の内容を学習します。

  • 移行したい VM を検出します。
  • VM のレプリケートを開始します。
  • すべてが想定どおりに動作していることを確認するためにテスト移行を実行します。
  • 完全な VM 移行を実行します。

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

前提条件

準備:

  1. Hyper-V の移行のアーキテクチャを確認します。
  2. Hyper-V ホストの移行の要件と、VM 移行のために Hyper-V ホストおよびクラスターがアクセスする必要がある Azure URL を確認します。
  3. Azure に移行する Hyper-V VM の要件を確認します。
  4. Azure に Hyper-V サーバーを移行する前に、Hyper-V VM のチュートリアルを完了することをお勧めします。
  5. 既存のプロジェクトに移動するか、 新しいプロジェクトを作成します
  6. Azure アカウントのアクセス許可の確認。
    • Azure アカウントには、VM を作成するためのアクセス許可が必要です。
    • Azure マネージド ディスクに書き込む。
    • Azure Migrate プロジェクトに関連付けられている Recovery Services コンテナーのフェールオーバー操作を管理します。
  7. プロジェクトを作成し、検出、評価、移行を実行するために必要な Azure Migrate の組み込みロールとアクセス許可の詳細については、「 Azure Migrate 用の Azure アカウントを準備する」を参照してください。

Windows オペレーティング システム (OS) のアップグレードを計画している場合、アップグレードが失敗した場合、エラーの詳細について Azure Migrate と Modernize によって Windows SetupDiag がダウンロードされる場合があります。 移行後に Azure で作成された VM が SetupDiag にアクセスできることを確認してください。 SetupDiag にアクセスできない場合は、OS アップグレード失敗の詳細なエラー コードを取得できない可能性がありますが、アップグレードは続行できます。

プロバイダーをダウンロードする

Hyper-V VM を移行するには、ソフトウェア プロバイダー (Azure Site Recovery プロバイダーと Recovery Services エージェント) を Hyper-V ホストまたはクラスター ノードにインストールする必要があります。 Hyper-V の移行に Azure Migrate アプライアンスは使用されません。

  1. Azure Migrate プロジェクト >Execute>Migration で、Start execution を選択します。

  2. [ 意図の指定 ] ページの [ 移行対象] で、[ サーバーまたは仮想マシン (VM)] を選択します。 移行先の場所で、Azure VM を選択します。

  3. [ワークロードの選択方法] で、[その他のソース] の下にある [レプリケーション プロバイダーから (Hyper-V)] を選択します。 ポータルで提供されているリンクを選択して、レプリケーション プロバイダーのセットアップを開始します。

  4. セットアップ ページでは、仮想化の種類は前の手順 (Hyper-V) から事前に設定されています。

  5. [ターゲット リージョン] で、マシンの移行先にする Azure リージョンを選択します。

  6. [移行のターゲット リージョンがregion-nameされていることを確認する] を選択します。

  7. [リソースの作成] を選択します。 この手順により、バックグラウンドで Recovery Services コンテナーが作成されます。

    • このボタンの選択後は、このプロジェクトのターゲット リージョンを変更できません。
    • 後続のすべての移行は、このリージョンに対して行われます。
  8. [Hyper-V ホスト サーバーを準備する] で、Hyper-V レプリケーション プロバイダーと登録キー ファイルをダウンロードします。

    • Hyper-V ホストを移行およびモダン化ツールに登録するには、登録キーが必要です。
    • キーは生成後 5 日間有効です。

    ダウンロード プロバイダーとキーを示すスクリーンショット。

  9. プロバイダー セットアップ ファイルと登録キー ファイルを、レプリケートする VM が実行されている各 Hyper-V ホスト (またはクラスター ノード) にコピーします。

プロバイダーをインストールして登録する

プロバイダーをインストールして登録するには、UI またはコマンドを使用して次の手順を実行します。

各ホストでプロバイダーのセットアップ ファイルを実行します。

  1. タスク バーのファイル アイコンを選択して、インストーラー ファイルと登録キーがダウンロードされているフォルダーを開きます。
  2. AzureSiteRecoveryProvider.exe ファイルを選択します。
    1. プロバイダーのインストール ウィザードで、[オン (推奨)] が選択されていることを確認し、[次へ] を選びます。
    2. [インストール] を選択して、既定のインストール フォルダーをそのまま使用します。
    3. [登録] を選択して、このサーバーを Recovery Services コンテナーに登録します。
    4. [参照] を選択します。
    5. 登録キーを見つけて、[開く] を選びます。
    6. [次へ]を選択します。
    7. [プロキシを使用せずに直接 Azure Site Recovery に接続する] が選択されていることを確認し、[次へ] を選びます。
    8. [完了] を選択します。

ホストにプロバイダーをインストールしたら、サイト回復プロバイダーのセットアップ ページにAzure ポータルに移動し、 [登録の確認を選択します。

[登録の最終処理] 画面を示すスクリーンショット。

検出された VM がツールに表示されるまで、登録を終了してから最大 15 分かかる場合があります。

移行の実行

ポータルでは、レプリケーションのために一度に最大 10 台のマシンを選択できます。 レプリケートするマシンがそれより多い場合は、10 台をひとまとまりとしてグループ化してください。

  1. Azure Migrate プロジェクト >Execute>Migration で、Start execution を選択します。

  2. [ 意図の指定 ] ページの [ 移行対象] で、[ サーバーまたは仮想マシン (VM)] を選択します。 移行先の場所で、Azure VM を選択します。

  3. [ ワークロードの選択方法] で、次のいずれかのオプションを選択します。

    • 既存のAzure Migrate アプライアンスがある場合は、次のいずれかのオプションを選択し、探索方法に進みます。
      • すべてのインベントリから サーバーを手動で選択します。
      • 評価から既存の評価の利用へ。
    • 既存のAzure Migrate アプライアンス (評価、ウェーブ計画、およびその他の計画機能に必要) がなく、Hyper-V 移行を直接実行する場合は、[レプリケーション プロバイダーから ] (Hyper-V) を選択します。 Hyper-Vのサイト回復プロバイダーのセットアップを完了した場合は、ワークロードに進むことができます。 それ以外の場合は、前のセクションで説明した手順に従ってセットアップを完了します。
  4. 探索方法で、ソース環境 (Hyper-V) に一致するアプライアンスを選択し、[次へ] を選択します。 Hyper-Vのサイト回復プロバイダーのセットアップを完了した場合は、ワークロードに進むことができます。 それ以外の場合は、前のセクションで説明した手順に従ってセットアップを完了します。

  5. ワークロードでは、

    • ターゲット VM のセキュリティの種類を選択します。Azure Migrateは、トラステッド起動Virtual Machines (TVM) への移行をサポートします。 既定では、対象となる VM が TVM として移行されます。 これらの VM では、セキュア ブートや仮想 TPM などの強化されたセキュリティ機能が追加料金なしで提供されます。
    • 次に、移行するサーバーを選択し、[ 次へ] を選択します。
  6. [ターゲット設定] で、移行するサブスクリプションとターゲット リージョンを選択し、移行後にAzure VM が存在するリソース グループを指定します。 次の設定を完了します。

  • ストレージ アカウント: ポータルによってプロジェクト用に自動的に作成されるキャッシュ ストレージ アカウントを使用するには、既定のオプションをそのまま使用します。 レプリケーションに別のストレージ アカウントを使用するには、ドロップダウン リストから選択します。

  • Azure Migrate プロジェクトの接続方法としてプライベート エンドポイントを使用する場合は、Recovery Services コンテナーにキャッシュ ストレージ アカウントへのアクセス権を付与します。 詳細情報
  • プライベート ピアリングで ExpressRoute を使用してレプリケートするには、キャッシュ ストレージ アカウントのプライベート エンドポイントを作成します。 詳細情報
  • Azure ハイブリッド特典: Azure ハイブリッド特典を適用し、対象となるWindows Serverまたは Enterprise Linux ライセンスを使用して、従量課金制のコストに対して最大 76% を節約します。 ライセンス (Windows Server ライセンスまたは Enterprise Linux ライセンス) に該当するボックスをオンにします。

  • 仮想ネットワーク: 移行後にAzure VM が参加するAzure仮想ネットワークとサブネットを選択します。

  • 可用性オプション: 次のいずれかのオプションを選択します。

    • 可用性ゾーン – 移行されたマシンをリージョン内の特定の可用性ゾーンにピン留めします。 マルチノード アプリケーション層の一部であるマシンをAvailability Zonesに分散するには、このオプションを使用します。 このオプションを選択した場合は、[コンピューティング] タブで選択した各マシンの可用性ゾーンを指定します。このオプションは、選択したターゲット リージョンがAvailability Zonesをサポートしている場合にのみ使用できます。
    • 可用性セット – 移行されたマシンを可用性セットに配置します。 選択したターゲット リソース グループには、1 つ以上の可用性セットが含まれている必要があります。
    • インフラストラクチャの冗長性は必要ありません。移行されたマシンにAvailability Zonesまたは可用性セットが不要な場合は、このオプションを選択します。
  • [ セキュリティの詳細] で、

    • 選択したターゲット セキュリティの種類が Standard または Trusted Launch 仮想マシンの場合、
      • セキュア ブート は既定で有効になっています (推奨)。 このオプションを削除することもできます。 次に、 ディスク暗号化の種類 の選択に進みます。
  • [ディスク暗号化の種類] で、次を選択します。

    • プラットフォーム管理キーを使用した静止データ暗号化
    • カスタマー マネージド キーを使用した保存時の暗号化
    • プラットフォーム マネージド キーとカスタマー マネージド キーを使用した二重暗号化

    • カスタマー マネージド キー (CMK) を使用して VM をレプリケートするには、ターゲット リソース グループの下に ディスク暗号化セットを作成 します。 ディスク暗号化セット オブジェクトは、SSE に使用する CMK を含む Key Vault にマネージド ディスクをマップします。
    • シード ディスクは、カットオーバー前のレプリケーション/ステージング中にAzureに作成されます。 暗号化すると、Azureに存在している間、最初の書き込みから直接データが保護されます。 ディスク暗号化の種類の設定は、最終的な移行後にシード ディスクとマネージド ディスクの両方に適用されます。
  1. [コンピューティング] で、VM の名前、サイズ、OS ディスクの種類、および可用性構成 (前の手順で選択した場合) を確認します。 VM は、Azure要件に準拠している必要があります。

    • VM サイズ: 評価の推奨事項を使用している場合は、VM サイズのドロップダウンに推奨サイズが表示されます。 それ以外の場合Azure Migrate、Azure サブスクリプション内の最も近い一致に基づいてサイズを選択します。 または、[Azure VM サイズ] でサイズを手動で選択します。
    • [OS ディスク]: VM の OS (ブート) ディスクを指定します。 OS ディスクには、オペレーティング システムのブートローダーとインストーラーが含まれています。
    • 可用性ゾーン: 使用する可用性ゾーンを指定します。
    • 可用性セット:使用する可用性セットを指定します。
    • 容量予約: ターゲット サブスクリプションと場所に VM SKU の容量予約が既にある場合は、このデプロイ用にここで指定します。 容量予約により、移行を開始するときに必要な VM SKU を使用できるようになります。 ここで予約を関連付けるか、この手順をスキップして、移行中に後で構成することができます。 SKU の容量予約は、ターゲット サブスクリプションと場所内の任意のリソース グループに含めることができます。詳細については、こちらをご覧ください
  2. [ディスク] で、VM ディスクをAzureにレプリケートするかどうかを指定し、Azureでディスクの種類 (Premium v2、Ultra Disk、Standard SSD、Standard HDD、Premium Managed Disks) を選択します。 [次へ]を選択します。

    • レプリケーションからディスクを除外できます。
    • ディスクを除外すると、移行後に Azure VM 上に存在しなくなります。
    • モビリティ エージェントがそのサーバーに既にインストールされている場合は、ディスクを除外できます。 詳細については、こちらを参照してください
  3. [タグ] で、仮想マシン、ディスク、NIC にタグを追加することを選択します。

  4. [ 実行の確認と開始] で設定を確認し、[ 確認して実行を開始 ] を選択して、サーバーの初期レプリケーションを開始します。

初回のプロビジョニング

これが Azure Migrate プロジェクトでレプリケートする初めての VM である場合、移行およびモダン化ツールによって、プロジェクトと同じリソース グループにこれらのリソースが自動的にプロビジョニングされます。

  • ストレージ アカウント: Hyper-V ホストにインストールするSite Recovery プロバイダー ソフトウェアは、レプリケーション用に構成した VM のレプリケーション データを、サブスクリプションのストレージ アカウント (キャッシュ ストレージ アカウントまたはログ ストレージ アカウントと呼ばれます) にアップロードします。 アップロードされたレプリケーション データは、その後 Azure Migrate と Modernize サービスによって、ストレージ アカウントから、VM に対応するレプリカマネージド ディスクへとコピーされます。 VM のレプリケーションを構成するときに、キャッシュ ストレージ アカウントを指定する必要があります。 Azure Migrate ポータルでは、プロジェクトで初めてレプリケーションを構成する際に、Azure Migrate プロジェクト用のそれが自動的に作成されます。

追跡して監視する

  1. Azure Migrate プロジェクトで、[> Migrations の実行] に移動します。 [ アプリケーション別に表示] または [ワークロード別に表示] を使用して、項目のグループ化方法を切り替えます。

  2. レプリケーションは、次のように動作します。

    • レプリケーションの開始ジョブが正常に完了すると、マシンはAzureへの初期レプリケーションを開始します。
      • 初期レプリケーション中に、Azure Migrateは VM スナップショットを作成し、スナップショットから Azure 内のレプリカ マネージド ディスクにディスク データをレプリケートします。
      • 初期レプリケーションが完了すると、差分レプリケーションが開始されます。 ソース ディスクに対する増分変更は、Azure のレプリカ ディスクに定期的にレプリケートされます。
  3. 実行の進行状況は、 実行ステージ実行状態に表示されます。

    • 実行ステージ: 準備、テスト、または完了。
    • 実行状態: 進行中、エラー中、アクション保留中、または完了。
  4. 実行の進行状況は、実行ステージの 3 つの ステージで追跡されます。

    • 準備:

      • レプリケーションが有効になっているサーバーは、初期レプリケーション (データ レプリケーション) の進行中に準備ステージに残ります。
      • 必要に応じて、サーバーのドリルダウン ブレードで使用可能なドロップダウンを使用して、レプリケーションの 停止レプリケーションの開始 操作をこのステージで実行できます。
      • 初期レプリケーションが完了すると、サーバーは テスト ステージに移動します。

      [準備] ステージを示すスクリーンショット。

    • テスト:

      • 初期レプリケーションが完了し、差分レプリケーションが進行中のサーバーは、テスト フェーズに移行します。
      • 実際の移行の前に、テスト仮想ネットワークでテスト移行を実行することを選択できます (推奨)。
      • [ 完了] ドロップダウン メニューで使用できるアクションを使用して、テスト ステージをスキップし、直接移行を開始できます。
    • 完了:

      • テスト移行が完了またはスキップされたサーバーは、このステージに移動します。 これらのサーバーに対して最終的な移行 (カットオーバー) を実行できます。
      • 移行が完了したら、 完全な移行 を実行し、サーバーのドリルダウン ブレードで使用可能なドロップダウンを使用して移行リソースをクリーンアップします。

テスト移行を実行する

差分レプリケーションが開始されるとき、Azure への完全な移行を実行する前に、VM のテスト移行を実行できます。 各マシンで少なくとも 1 回は、移行前にこれを実行することを強くお勧めします。

  • テスト移行を実行すると、移行元 (オンプレミスまたは AVS) マシンに影響を与えずに移行が正常に動作するかどうかが確認されます。このマシンは動作し続け、レプリケートを続行します。
  • テスト移行では、レプリケートされたデータを使用して Azure VM を作成することによって、移行がシミュレートされます (通常は、自分の Azure サブスクリプション内の非運用 VNet に移行されます)。
  • レプリケートされたテスト Azure VM を使用して、移行を検証し、アプリのテストを実行して、完全な移行前に問題に対処することができます。

テスト移行を実行するには、次のようにします。

  1. Azure Migrate プロジェクトでは、Execute>Migrations> sand で、Workloads 列でその名前を選択してサーバーを選択します。

  2. ドリルダウン メニューの [ テスト ] ドロップダウンで、[ テスト移行の開始] を選択します。

  3. Test migration で、Azure VM がテスト中に配置されるAzure Virtual Network (Vnet) を選択します。 非運用環境の VNet を使用することをお勧めします。

  4. 移行された VM 上の各ネットワーク インターフェイス カード (NIC) に関連付けるサブネットを選択します。

  5. テスト移行中に Windows Server OS をアップグレードするオプションがあります。 アップグレードするには、[ 利用可能なアップグレード ] オプションを選択します。

  6. 表示されたウィンドウで、アップグレード先の OS バージョンを選択し、[ 適用] を選択します。 詳細については、こちらを参照してください

  7. [移行のテスト] を選択すると、ジョブが開始されます。 Azure ポータルの [実行状態] の状態を監視します。 テスト移行が完了したら、テスト リソースをクリーンアップします。 サーバーに移動し、[テスト] ドロップダウンから [テスト移行のクリーンアップ] を選択します。

    SQL Server を実行しているサーバーを SQL VM RP に登録できるようになりました。これにより、SQL IaaS Agent 拡張機能を使用した自動修正、自動バックアップ、簡略化されたライセンス管理を利用できるようになります。

    • [実行移行] ページの [>] 列でサーバーを選択します。 [コンピューティングとネットワークの設定] で、SQL IaaS 拡張機能への登録に関連付けられているチェック ボックスをオンにします。
    • アクティブなソフトウェア アシュアランスまたは SQL Server サブスクリプションの対象となっている SQL Server インスタンスがあり、移行するマシンに特典を適用する場合は、[SQL Server の Azure ハイブリッド特典] を選択します。

VM の移行

テスト移行が期待どおりに動作することを確認したら、ソース マシンを移行できます。

  1. Azure Migrate プロジェクトの [Execute>Migrations> で、その名前を [ワークロード] 列で選択してサーバーを選択します。
  2. ドリルダウン メニューの [ 完了] ドロップダウンで、[ 移行] を選択します。
  3. [ 移行>仮想マシンをシャットダウンし、データ損失なしで計画的な移行を実行するには、[ はい] を選択します。
    • 既定では、Azure Migrateはソース VM をシャットダウンし、オンデマンド レプリケーションを実行して、前回のレプリケーション以降に発生したすべての VM の変更を同期します。 こうすることで、データ損失がなくなります。
    • VM をシャットダウンしない場合は、[いいえ] を選択します
  4. 移行中に Windows Server OS をアップグレードするオプションがあります。
  5. アップグレードするには、[ 利用可能なアップグレード ] オプションを選択します。 表示されたウィンドウで、アップグレード先の OS バージョンを選択し、[ 適用] を選択します。 詳細については、こちらを参照してください
  6. ターゲット サブスクリプションと場所に VM SKU の容量予約が既にある場合は、このデプロイ用にここで指定します。 容量予約により、移行を開始するときに必要な VM SKU を使用できるようになります。 SKU の容量予約は、ターゲット サブスクリプションと場所内の任意のリソース グループに含めることができます。 詳細については、こちらを参照してください
  7. 設定が完了したら、[ 移行] を選択します。 サーバーの移行ジョブが開始されます。 Azure 通知でジョブを追跡します。
  8. ジョブが完了したら、完了ステージで追跡される [移行] ページからサーバーを表示および管理できます。

移行を完了する

  1. 移行が完了したら、サーバーのドリルダウン ページを開きます。 [完了] で、[移行の完了] を選択します。 このアクションにより、ソース マシンのレプリケーションが停止され、VM のレプリケーション状態情報がクリーンアップされます。
  2. Azure VM での Windows のライセンス認証に関する問題を確認し、トラブルシューティングします
  3. ホスト名、データベース接続文字列、Web サーバー構成の更新など、移行後のアプリの微調整を実行します。
  4. Azure で現在実行されている移行後のアプリケーション上で、最終的なアプリケーションと移行の受け入れテストを実行します。
  5. 移行された Azure VM インスタンスにトラフィックを切り替えます。
  6. ローカル VM インベントリからオンプレミスの VM を削除します。
  7. ローカル バックアップからオンプレミスの VM を削除します。
  8. Azure VM の新しい場所と IP アドレスを示すように内部ドキュメントを更新します。

移行後のベスト プラクティス

次のステップ

Azure 向けクラウド導入フレームワークでのクラウド移行の工程を調査します。