Azure Lab Services で入れ子になった仮想化

入れ子になった仮想化を使用すると、複数の仮想マシン (VM) を含むラボを Azure Lab Services に作成できます。 仮想マシン (ゲスト VM) は、仮想マシン (ホスト VM) 内で作成して実行できます。 入れ子になった仮想化を使用すると、ラボ ユーザーに対して、複数の関連する仮想マシンをラボの一部として提供できます。

入れ子になった仮想化は、Hyper-V を介して有効になります。 Windows ベースのラボ VM でのみ使用できます。 ラボ VM 内では、Windows ベースと Linux ベースのゲスト VM の両方を実行できます。 この記事では、Azure Lab Services の入れ子になった仮想化の概念、考慮事項、レコメンデーションについて説明します。

ユース ケース

入れ子になった仮想化を使用すると、相互に通信する複数の VM をサポートできます。 このようなラボは、次の目的で使用できます。

入れ子になった仮想化の詳細については、以下の記事を参照してください。

ラボの入れ子になった仮想化を有効にする

入れ子になった仮想化を有効にし、入れ子になった Hyper-V VM をテンプレート VM に作成します。 ラボを発行すると、各ラボ ユーザーには、入れ子になった仮想マシンが既に含まれているラボ VM を持ちます。

ラボの入れ子になった仮想化を有効にする手順は次の通りです。

  1. リモート デスクトップ クライアントを使用してテンプレート VM に接続します。

  2. テンプレート VM 上で Hyper-V 機能とツールを有効にします。

  3. Windows Server を使っている場合は、ネットワーク アドレス変換 (NAT) ネットワークを作成して、テンプレート VM 内の VM が相互に通信できるようにします。

    Note

    NAT ネットワークをラボ サービス VM に作成すると、Hyper-V VM は、インターネットおよび、同じラボ サービス VM 上の他の Hyper-V VM にアクセスできるようになります。 Hyper-V VM は、Azure 仮想ネットワーク上の DNS サーバーなどの Azure リソースにアクセスすることはできません。

  4. Hyper-V マネージャーを使用して、テンプレート VM 内に入れ子になった仮想マシンを作成します。

  5. 入れ子になった仮想マシンがインターネットにアクセスできることを確認します。

テンプレート VM で入れ子になった仮想化を有効にするの手順に従います。

推奨事項

入れ子になった仮想化を構成するときは、次の推奨事項に留意してください。

管理者以外のユーザー

ラボを作成するときに、管理特権を持たないユーザーを作成することもできます。 このようなアカウントで入れ子になった仮想化を使用する場合は、次の問題を考慮してください。

  • VM を起動または停止できるようにするには、ユーザーが Hyper-V 管理者グループに属している必要があります。
  • ユーザーはドライブをマウントできません。
  • Hyper-V VM ファイルは、ユーザーがアクセスできる場所に保存する必要があります。

プロセッサの互換性

入れ子になった仮想化 VM のサイズでは、次の表に示すように、異なるプロセッサが使用される場合があります。

サイズ 系列 プロセッサ
中 (入れ子になった仮想化) Standard_D4s_v4 第 3 世代 Intel® Xeon® Platinum 8370C (Ice Lake) または Intel Xeon® Platinum 8272CL (Cascade Lake)
大 (入れ子になった仮想化) Standard_D8s_v4 第 3 世代 Intel® Xeon® Platinum 8370C (Ice Lake) または Intel Xeon® Platinum 8272CL (Cascade Lake)

テンプレート VM またはラボ VM が停止し開始するたびに、基になるプロセッサが変更されることがあります。 入れ子になった VM がプロセッサ間で一貫して動作するようにするには、入れ子になった VM でプロセッサ互換性モードを有効にしてください。 イメージを発行またはエクスポートする前に、テンプレート VM の入れ子になった VM でプロセッサ互換性モードを有効にすることをお勧めします。

また、パフォーマンスが悪影響を受けないことを確認するために、プロセッサ互換性モードが有効になっている入れ子になった VM のパフォーマンスをテストする必要があります。 詳細については、プロセッサ互換性モードの使用の影響に関する記事を参照してください。

入れ子になった VM を自動的にシャットダウンする

ラボ VM のシャットダウン時に入れ子になった仮想マシンのデータの破損を回避するには、ラボ VM のシャットダウン時に入れ子になった VM を自動的にシャットダウンするように構成します。

Set-VM PowerShell コマンドを使用して、入れ子になった VMのシャットダウン自動停止アクションを構成する方法について説明します。

入れ子になった VM に VHDX ディスク形式を使用する

入れ子になった仮想マシンを作成するときは、仮想ハード ディスクの VHDX ファイル形式を選択して、ラボ VM のディスク領域を節約します。

入れ子になった VM の vCPU の数を構成する

入れ子になった仮想マシンを作成すると、既定では 1 つの仮想 CPU (vCPU) のみが割り当てられます。 入れ子になった VM のオペレーティング システムとソフトウェアによっては、vCPU の数を増やす必要がある可能性があります。 入れ子になった VM CPU リソースの管理と設定の詳細については、Hyper-V プロセッサのパフォーマンスに関するページまたは Set-VM PowerShell コマンドレットをご覧ください。

入れ子になった VM に割り当てられたメモリを構成する

入れ子になった仮想マシンを作成するときに、オペレーティング システムとインストール済みソフトウェアに割り当てられた最小メモリでは不十分な場合があります。 入れ子になった VM で、割り当てられたメモリの最小量を増やさなければならない場合があります。 入れ子になった VM CPU リソースの管理と設定の詳細については、Hyper-V ホスト CPU リソース管理に関するページまたは Set-VM PowerShell コマンドレットをご覧ください。

HYPER-V で Linux を実行するためのベスト プラクティス

次のリソースでは、Hyper-V で Linux または FreeBSD を実行するためのベスト プラクティスを提供します。

既知の問題

入れ子になった仮想化を使用してラボを設定する前に、考慮すべき点をいくつか次に示します。

  • すべての VM サイズで入れ子になった仮想化がサポートされているわけではありません。 新しいラボを作成する際、ラボのVM サイズを、中 (入れ子になった仮想化) または大 (入れ子になった仮想化) から選択します。

  • ホスト (ラボ VM) とゲスト VM (ラボ VM 内の VM) の両方に適切なパフォーマンスを提供するサイズを選択します。 選択したサイズで、ホスト VM と Hyper-V マシンを同時に実行できることを確認します。

  • Windows Server を使っている場合、ゲスト マシンがインターネットに接続できるようにするには、ホスト VM に追加の構成が必要です。

  • ゲスト VM は、Azure 仮想ネットワーク上の DNS サーバーなどの Azure リソースにアクセスできません。

  • Hyper-V ゲスト VM は、独立したマシンとしてライセンスされます。 Microsoft のオペレーティング システムおよび製品のライセンスの詳細については、Microsoft のライセンスに関するページを参照してください。 テンプレート VM またはゲスト VM にインストールする前に、使用する他のソフトウェアのライセンス契約を確認します。

  • Hyper-V 以外の仮想化アプリケーションは、入れ子になった仮想化でサポートされていません。 これらのアプリケーションには、ハードウェア仮想化拡張機能を必要とするソフトウェアが含まれます。