Azure Koolaidを飲み、Hyper-V VMをAzureに移行したいと思っています。それは素晴らしいニュースです!さらに良いニュースは何かと言いますと、AzureにはAzure Migrateというサービスがあり、そのプロセスをできるだけ簡単にすることができます。
このステップバイステップのチュートリアルでは、Azure Site Recovery(ASR)を使用して、Hyper-V VMをAzureにレプリケートすることで、Azure Migrateを使用してHyper-V VMを移行する方法を学びます。
Azure Migrateツールを使用してまだAzureアセスメントを作成していない場合は、まずはAzure移行アセスメントツールを使用してHyper-V VMを準備する方法の記事に進んで、Hyper-V VMを発見し評価する方法を学んでください。
前提条件
このステップバイステップのチュートリアルに従う予定の場合は、次のものを準備してください。
- Hyper-Vホストにインストールされている.NET Framework 4.7以降Azureアセスメント – 移行するHyper-V VMのためのAzure移行アセスメントツールの準備方法の記事にアクセスしてください。
- A Windows Hyper-V host – This tutorial uses a physical Windows 2016 server with the Hyper-V role installed equipped with 8GB of RAM and a dual-core i7 (2ghz) processor. To migrate VMs to Azure, your Hyper-V host must be installed on Windows Server 2019, Windows Server 2016, or Windows Server 2012 R2 with the latest updates.
- A Hyper-V VM – This tutorial uses a Windows 2012 R2 Server VM with 1GB of RAM a single vCPU. Any Hyper-V VM should work, though.
- Azureサブスクリプション – お持ちでない場合は、無料のAzureアカウントに登録することができます。
- Azure サブスクリプションへの少なくとも Contributor Role 権限を持つ Azure ユーザーアカウントと、AzureAD アプリを登録するための Application Administrator 権限が必要です。
- A storage account for your migration – This tutorial will use a storage account named migndr2021.
- A virtual network for your migrated virtual machine – This tutorial will use a virtual network named mig_network and a subnet named default.
Azure リカバリサービスエージェントの設定
Azure 評価を実行した後、Hyper-V ホストに Azure Site Recovery (ASR) サービスエージェントをインストールする時が来ました。ASR は、サーバーのレプリケーション、フェイルオーバー、および Azure 仮想マシンのフェイルバックを管理およびオーケストレーションする災害復旧サービスです。ちょうど Azure Migrate サービスも ASR を使用して Hyper-V VM を Azure にレプリケートします。
Hyper-V ホストに ASR エージェントを設定するには:
1. お気に入りのブラウザを開き、Azure Migrate ハブに移動します。
2. 移行ツール タイルに移動し、Discover をクリックします。この操作で移行プロセスが開始されます。

3. Discoverページで、マシンが仮想化されていますか? ドロップダウンボックスをクリックし、はい、Hyper-Vを使用しています。
ターゲットリージョンとして移行するAzureリージョンを指定してください。
移行のターゲットリージョンが<region>であることを確認するために、移行のターゲットリージョンは<region>であることを確認のチェックボックスをオンにし、リソースの作成をクリックします。これらの手順により、移行の検出プロセスが開始され、VMの使用状況と仮想化技術が確認されます。
移行中に検出プロセスを開始すると、AzureはバックグラウンドでAzure Site Recovery Vaultを作成し、また、Azure Key Vaultも作成して、移行プロセス中に使用される資格情報を保存します。Azure MigrateはASR VaultをAzure Migrateプロジェクトと同じリソースグループに作成します。このVaultはVMおよびワークロード構成の情報を保存するために使用されます。

警告: このステップ後にターゲットリージョンを変更することはできません。他のサーバーに別のリージョンを使用する必要がある場合は、別のAzure Migrateプロジェクトを作成する必要があります。
4. マイグレーションリソースを作成したら、最初のダウンロードリンクをクリックしてレプリケーションプロバイダー/エージェントをダウンロードします。

5. ダウンロードしたプロバイダー/エージェント(AzureSiteRecoveryProvider.exe)をHyper-Vホストにコピーします。
6. 今、ダウンロードボタンをクリックして、ソフトウェア登録キーを生成します。このキーは、ステップ8でインストールするAzure Site Recoveryソフトウェアを登録するために使用されます。
ソフトウェア登録キーを安全に保管してください。なぜなら、Hyper-Vホストにレプリケーションプロバイダをインストールする際に必要となるからです。

7. Hyper-Vホストのコンソールに接続し、AzureSiteRecoveryProvider.exeインストーラーを実行します。
8. すべてのデフォルトを受け入れるには、次へをクリックします。これにより、登録ボタンが表示される画面に到達します。
インストール場所を変更したい場合は、参照をクリックしてパスを変更します。このチュートリアルではデフォルトのパスを使用します。
登録をクリックして、ASRエージェントにオンプレミスのHyper-VホストをMicrosoft Azureに登録するように指示します。次に、継続構成のためのボールト設定画面が表示されます。

9. ボールト設定画面で、参照をクリックし、ステップ6でダウンロードした登録キーを選択して次へをクリックします。

10. これで、Azure Migrateハブを開いているWebブラウザに戻り、ページを更新し、登録の最終確定をクリックします。これにより、登録されたHyper-Vホストの横に1 (接続済み)が表示され、Hyper-VホストがVMをレプリケートする準備が整いました。

Azureに仮想マシンをレプリケート
Azure MigrateがすべてのHyper-V VMを検出し、Hyper-VホストにASRエージェントをセットアップしたら、Hyper-V VMをAzureにレプリケートを開始する時が来ました!
1. Azure Migrateハブで、移行ツールタイルで、レプリケートをクリックします。この操作により、レプリケートページに移動します。

2. レプリケートページで、ソース設定セクションで、はい、Hyper-Vでを選択し、次へをクリックします。この操作により、仮想マシンセクションに移動します。

3. 仮想マシンセクションで、Azure Migrateのアセスメントから移行設定を適用するをアセスメントのドロップダウンボックスからインポートします。
Azure Migrateツールを使用してまだAzureアセスメントを作成していない場合は、最初にHyper-V VMを検出および評価する方法について学ぶために、Hyper-V VMをAzure移行アセスメントツールで準備する方法の投稿に移動してください。
- DEV_GROUPをグループを選択ドロップダウンボックスから選択して、前述のグループで定義されたすべてのVMを選択します(Azureアセスメント投稿に沿って進めた場合)。
- DEV_SERVERをアセスメントを選択ボックスから選択します。
- 移行したいVMの横にあるチェックボックスをオンにします。
- クリックして次へを続行します。この操作により、ターゲット設定セクションに移動します。ターゲット設定では、Azure Migrateが仮想マシンに適用するリソースグループ、ストレージアカウント、ネットワーク、および可用性オプションを定義します。

4. ターゲット設定ページで、以下に示すように各設定を定義します。
- 地域 – VM(s)をレプリケートするAzureの地域。移行プロセス中に変更できないため、地域は灰色表示されています。
- サブスクリプション – VMをレプリケートするAzureのサブスクリプション。
- リソースグループ – 新しいAzure VMリソースを作成するリソースグループ。
- 仮想ネットワーク – Azure MigrateがVMに割り当てるAzureの仮想ネットワーク。
- サブネット – Azure MigrateがVMに割り当てるネットワークサブネット。
- 可用性オプション – VMに適用するオプションのインフラ冗長性(任意)。このチュートリアルではインフラ冗長性は不要を選択します。
必要に応じて、このプロセス中に移行後に特定の可用性ゾーンにマイグレーションされたVMをピン留めしたり、可用性セットに配置したりすることができます。
- Azure Hybrid benefit – これは、適格なWindows Serverライセンスを持っている場合にのみ有効になるオプションです。 次へをクリックして、作成するVMサイズを選択するためのComputeセクションに移動します。

5. Computeセクションで、Azure VMに付けたい名前、VMのサイズ、オペレーティングシステム、およびOSディスクを定義します。
初期評価に基づいて、AzureがVMのために最適なサイズを選択するようにするには、デフォルトのAzure VMサイズオプションを自動的に適合するサイズを選択にしてください。
次へをクリックしてDisksセクションに移動します。

6. Disksセクションで、すべて選択を選択して、AzureがHyper-V VMにアタッチされているすべてのボリュームを移行するようにします。その後、NextをクリックしてTagsセクションに移動します。
ハイパーバイザーVMから特定のディスクを移行する場合は、複製するディスク列のドロップダウンから希望のディスクを選択します。

7. Tagsセクションで、組織が必要とするタグを追加し、次へをクリックします。

そして、レビュー+レプリケーションの開始セクションで、仮想マシンをAzureにレプリケーションするためにレプリケーションをクリックします!

9. Azure Migrateハブに戻ります。数分後、以下に示すように、新しいVMがレプリケーションサーバーの下に表示されるはずです。

10. レプリケーションサーバーの右側の値をクリックして、現在レプリケーション中のサーバーのリストを開きます。以下にサーバーが表示されるはずです。
レプリケーション中、VMは一時的にステップ4で定義したストレージアカウントに保持されます。

テストマイグレーションの実行
ついに! ASRから複製されたデータを使用して仮想マシンを作成する準備が整いました。しかし、もう少し待ってください!まだ1つ手順があります。今、テストマイグレーションを実行する必要があります。テストマイグレーションは、マイグレーションが予想通りに機能することを確認するためのドライランを実行します。
A test migration will have no impact on the existing on-premises Hyper-V VM(s).
1. 再度Azure Migrateハブに移動し、サーバーマイグレーションブレードをクリックします。次に、以前に開始したレプリケーションジョブを見つけ、ジョブの横にある省略記号をクリックし、テストマイグレーションをクリックします。

2. テストマイグレーション画面で、Azureへの仮想マシンのレプリケーションセクションのステップ4で定義した仮想ネットワークを選択します。このチュートリアルでは、mig_networkという名前の仮想ネットワークを使用しています。完了したら、テストマイグレーションをクリックします。

3. テストマイグレーションが開始されると、以下に示すようにテストマイグレーションのステータスが更新されるまで更新をクリックします。
現在のステータステストフェイルオーバーの開始をクリックして、テストマイグレーションの段階を確認します。

このテスト移行プロセス中に、Azureは仮想マシン用に必要なすべてのリソースを作成し、それらを選択したリソース グループに配置します。

4. テスト移行が完了したら、Azure ポータルに移動し、Azure VM を作成したリソース グループを開きます。VM リソースや関連するリソース(VM のネットワーク インターフェイスやディスクなど)が表示されるはずです。
テスト移行プロセス中に、VM の名前は-testで追加されます。
各リソースに進んで、実際の移行を確定せずに各リソースの構成を確認します。

6. 最後に、Azure 移行ブレードに戻り、テスト移行の隣にある省略記号を選択し、テスト移行のクリーンアップをクリックします。この操作により、テスト仮想マシンとそれに関連する一時的なリソースがすべて削除されます。

ライブ マイグレーションを実行する
おめでとうございます!ついに、オンプレミスの Hyper-V VM から Azure を作成する段階に到達しました。これで、オンプレミスの仮想マシンをデフォルトでシャットダウンし、前回のレプリケーション以降のすべてのVM変更を同期化するカットオーバーマイグレーションを実行する時が来ました。
移行ジョブが完了したら、Virtual Machines ブレードからVMを表示および管理できます。
- 再びAzure Migrate ハブに移動し、Server Migration ブレードをクリックします。次に、右端にある移行ボタンをクリックして移行ウィザードを開きます。

2. 移行ブレードで、オプションでオンプレミスのHyper-V VMをマイグレーション前にシャットダウンするために、ドロップダウンボックスからはいを選択します。Hyper-V VMをシャットダウンすることで、Azure MigrateがAzure VMを開始する前に、Hyper-V VMへのすべての変更が同期されます。

3. 数分後、移行ページを更新します。Hyper-V VMがシャットダウンされ、移行ページのタイルが更新され、マイグレーションされたサーバーがあることがわかります!

4. 最後に、Azure Portalでリソースグループに移動します。テストマイグレーションを実行したときと同じように、Azure MigrateがAzure VMと関連するすべてのコンポーネントを作成したことがわかります。

クリーンアップ
Azure Migrateを使用してHyper-V VMをAzureに正常にマイグレーションしたら、最後の最後のクリーニングタスクが数個あります。
- 再度Azure Migrateハブに移動し、Azure Migrate —> サーバーマイグレーションを選択します。
- Azure Migrateによって作成されたVMを右クリックし、マイグレーションを停止を選択して、Azure Migrateマイグレーションをクリーンアップします。このアクションにより、オンプレミスの同期が停止され、VMがレプリケートされているサーバーの実行数から削除され、レプリケーションの状態情報がクリーンアップされます。
- Azureで動作するようにVMを最適化するためには、Azure VMのWindows エージェントをインストールしてください。このエージェントは通常、Azureポータルを介してVMを作成する際にデフォルトでインストールされます。このエージェントの主な役割は、Azure Virtual Machineの拡張機能を有効にして実行し、また、VMとAzure Fabric Controllerの間の相互作用を管理することです。
- 最後に、テスト目的でVMを移行した場合は、VMリソースまたはリソースグループ全体を削除することを忘れないでください。
結論
このチュートリアルでは、Azure Migrateプロジェクトポータルで提供されているネイティブツールを使用して、Hyper-Vホストされている仮想マシンをAzureに移行する方法を学びました。さらに、レプリケーション、テスト移行、最終的な本番移行といったすべての手順を学びました。
武装して新しい知識を持って、自信を持って最初のステップを踏み出し、スノーフレークサーバーを持ち上げ、移行しますか?では、最初にどのVMを移行しますか?