Hyper-VのVMでネストされた仮想化を有効または無効にする方法

PCユーザーは、Windows 11またはWindows 10のホストマシン上のHyper-V仮想マシン(VM)内でHyper-Vを実行するために、ネストされた仮想化機能を活用できます。これは、仮想マシンでVisual Studioの電話エミュレーターを実行する場合、または通常は複数のホストを必要とする構成をテストする場合に役立ちます。この投稿では、Hyper-VのVMでネストされた仮想化を有効または無効にする方法を紹介します。

Hyper-VのVMでネストされた仮想化を有効または無効にする

ネストされた仮想化は、次の前提条件でAzureとオンプレミスの両方でサポートされています。

VT-xおよびEPTテクノロジーを搭載したIntelプロセッサ

  • Hyper-VホストはWindows Server 2016/Windows 10以上である必要があります
  • VM構成バージョン8.0以上

AMD EPYC/Ryzenプロセッサ以降

  • Hyper-VホストはWindows Server 2022/Windows 11以上である必要があります
  • VM構成バージョン10.0以上

どちらの構成でも、ゲストはWindowsでサポートされる任意のゲストオペレーティングシステムにすることができます。新しいWindowsオペレーティングシステムは、パフォーマンスを向上させる拡張をサポートする場合があることに注意してください。

ネストされた仮想化を有効にする

Hyper-VのVMでネストされた仮想化を有効にするには、次の手順を実行します。

  • 上記の要件を指定して仮想マシンを作成します。
  • 仮想マシンがオフの状態の間、物理的なHyper-V Windowsホストで、管理者モードでPowerShellを開きます。
  • PowerShellコンソールで、以下のコマンドを実行して、仮想マシンのネストされた仮想化を有効にします。プレースホルダーを、前に作成したVMの実際の名前で置き換えます。
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
  • コマンドが実行されたら、PowerShellコンソールを終了できます。
  • 次に、仮想マシンを起動します。
  • VMが起動したら、物理マシンで行う場合と同様に、仮想マシン内にHyper-Vをインストールします。

ネストされた仮想化を無効にする

停止された仮想マシンのネストされた仮想化を無効にすることができます。Hyper-VのVMでネストされた仮想化を無効にするには、次の手順を実行します。

  • 物理的なHyper-V Windowsホストで、管理者モードでPowerShellを開きます。
  • PowerShellコンソールで、以下のコマンドを実行します。
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $false
  • コマンドが実行されたら、PowerShellを終了します。

これで、Hyper-VのVMでネストされた仮想化を有効または無効にする方法がわかりました!

ネストされた仮想化を使用する理由は?

ネストされた仮想化の最も注目すべき利点は、柔軟性の向上です。仮想環境を仮想環境内でホストする機能により、独自の条件でソフトウェアを開発およびテストでき、ニーズに合わせて調整できる柔軟なサンドボックス環境が提供されます。

ネストされた仮想化を実装するために無効にする必要があるものは?

VT-xおよびEPTテクノロジーを搭載したIntelプロセッサのみがネストされた仮想化をサポートしています。AMDプロセッサは現在、ネストされた仮想化をサポートしていません。さらに、VMを実行するのに十分な物理メモリが必要であり、VMは動的メモリを使用できません。

Azure VMでネストされた仮想化を有効にする方法は?

ネストされた仮想化を有効にするには、次のタスクを完了する必要があります。

  • Hyper-Vロールを有効にします。Hyper-Vロールは、Lab Services仮想マシンでHyper-V仮想マシンの作成と実行を行うために有効にしておく必要があります。
  • DHCPを有効にします。
  • Hyper-V VMのNATネットワークを作成します。

ネストされた仮想化をサポートするAzure VMのサイズはどれですか?

現在、Dv3およびEv3 VMサイズを使用してネストされた仮想化を有効にできます。Azureのネストされた仮想化機能を使用すると、VMをVM内で実行できます。つまり、Windows Server仮想マシンをAzureにデプロイして、Hyper-V形式のネストされたVMを実行できます。この環境では、ローカルのHyper-V VMをAzureに複製できます。