最新のハイパーバイザーのバージョンは、VMwareのハイパーバイザーを含むハードウェア仮想化の追加機能としてネスト仮想化をサポートしています。ネスト仮想化とは何か?VMware環境でネスト仮想化を有効にする方法は?このブログ投稿を読むことで、VMwareのネスト仮想化とその設定方法を学ぶことができます。
ネスト仮想化とは
ネスト仮想化とは、 physical hypervisor内で virtual hypervisorを virtual machine (VM)として実行することです。この機能により、VMでVMを実行することができます。簡単に言えば、VMの中でVMを実行することです。virtual hypervisorをvirtual hardwareの上で実行し、このvirtual hardwareをreal host hardwareとして認識します。混乱してしまったでしょうか?さて、これらの用語についてより詳細に見てみましょう。
- A host hypervisor is a hypervisor running on physical hardware.
- A guest hypervisor is a hypervisor running on virtual hardware (on a VM).
- Outer guestとは、physical hardwareで実行されているVMを指します。Guest OSはVMで実行されている操作系统です。
- Inner guestとは、VMwareでは他のVMの中で実行されているVM (virtual hardware上)を指します。
以下のスクリーンショットは、VMwareの仮想化の異なる层次を示しています。Layer 2のESXi VMはouter guestですが、Layer 3のnested VMsはinner guestと呼ばれます。技術的には、このような高レベルのパフォーマンスに足るコンピュータのリソースがあれば、更深いレベルのネスト(Layer 4、Layer 5など)を使用することができます。より深いレベルのネストは、画像に示されていません。
ハードウェア支援仮想化(またはハードウェア仮想化、HV、またはネイティブ仮想化とも呼ばれます)は、ソフトウェアを介してコンピューターの物理ハードウェアを使用して仮想マシンを実行します。この場合、ハードウェア機能は、以前に使用されていたバイナリ変換やパラバーチュアライゼーションと比較して、効率的にマシンを仮想化するのに役立ちます。IntelおよびAMDは、Intel VT-XとAMD-Vの機能をハードウェアレベルでネイティブ仮想化サポートに含めています。64ビットのゲストを実行するにはハードウェア仮想化が必要です。Intel VT-XまたはAMD-VをUEFI/BIOSで有効にする必要があります。
サポートされているハイパーバイザ
タイプ1およびタイプ2のハイパーバイザの両方がネストされたVMを実行できます。タイプ1のハイパーバイザは物理ハードウェアの上で実行され、ベアメタルハイパーバイザとも呼ばれます。タイプ2のハイパーバイザは、物理ハードウェアにインストールされている基本的なオペレーティングシステム上にインストールされます(ホストされたハイパーバイザとも呼ばれます)。VMware環境では、ESXiがタイプ1のハイパーバイザです。タイプ2のハイパーバイザは、VMware Workstation、VMware Player、およびVMware Fusionです。
要件:
- 仮想化されたハードウェアサポートの仮想化(仮想化HV)は、ネストされた仮想化を有効にするために、ハイパービザーでサポートされなくてはならず、ネストされたVMを実行することができます。仮想化HVが外側ゲストに有効になっている場合、VM内でハードウェア仮想化をサポートしているどのハイパービザーも実行できます。
- ハードウェアアシステンシッド仮想化と仮想化HVは、VMware型2のハイパービザーで、VMware Workstation 8、VMware Player 4、VMware Fusion 4以降でサポートされます。ESXiについては、仮想化HVのサポートはESXi 5.0以降であります。
- VM(外側ゲスト)では、仮想ハードウェア9またはそれ以上を使用する必要があります。
利用可能なデプロイメント構配置:
- VMware ESXiをVMware Workstation、VMware Player、VMware Fusion上で実行
- VMware ESXiをVMware ESXi上で実行
- VMware ESXiをMicrosoft Hyper-VまたはVirtualBoxなどの他の第三者のハイパービザー上で実行
- VMware ESXi、VMware Workstation、VMware Player、VMware Fusion上でVMとして実行される非VMwareハイパービザーの実行
VMwareサポート
技術的には、上記のVMwareハイパービザーでネスト仮想化が機能します。同時に、VMwareはネスト仮想化をプロダクション環境で実行することをサポートしていません。これは、仮想化ハードウェアとネストVMを使用している場合、VMwareから公式の技術サポートを要求することができないという意味です。VMwareはVMware vSphereでネストVMを使用するために1つの例外しか认可していませんが、それはvSANウィットネスアプライアンスを指します。これはネストされたESXiのインストールの一種です。
VMwareは、仮想化ベースのセキュリティ(VBS)を有効にするためにVM上でHyper-Vをサポートしています。Microsoftの仮想化ベースのセキュリティは、Windows 10およびWindows Server 2016での新機能です。VMwareは、VMware vSphere 6.7からWindowsを実行する仮想マシンでのVBSの使用をサポートしています。デフォルトでVBSが有効になっている新しいWindows 10ビルドでVMware Workstationを実行する方法と、関連するエラーの修正方法については、詳細をご覧ください。
ライセンスオプション
ESXiおよび他のvSphereコンポーネントをネストされた環境のVMとしてインストールする場合、これらのコンポーネントを物理サーバーで使用しているかのようにライセンスする必要があります。このルールは、任意のハイパーバイザー上でネストされたVMwareハイパーバイザーをインストールする場合にも当てはまります。ESXi、vCenter、およびその他のVMwareコンポーネントの試用版を使用するか、無料のESXiをインストールすることができます。詳細については、VMware vSphereライセンスおよびvCenterライセンスをご覧ください。
1つのCPUに複数のCPUコアを割り当てて、複数のCPUごとに1つのCPUコアを割り当てる代わりに、ライセンス規定に従っていれば、仮想ESXiを実行しているVMにCPUをプロビジョニングできます。 cpuid.coresPerSocketパラメーターを調整してください。
VMwareネスト型仮想化のユースケース
ネスト型仮想化の利点は、1台の物理マシンにインストールされた実際のハイパーバイザ上で複数の仮想ハイパーバイザとネスト型VMを実行できることです。コストの節約も利点の1つです。ネスト型仮想化は多くのシナリオで使用できます。最も一般的なものを見てみましょう。
教育。VMware ESXiをVMにインストールして、VMware vSphereの機能を知ることができます。共有ストレージのためのVMと複数のESXi VMを展開してクラスタを構成し、ネスト型VMを作成し、VMのライブマイグレーションを実行し、HA、DRS、ストレージDRS、および他のvSphereの機能がどのように動作するかを探索することができます。このアプローチの利点は、VMware vSphereを展開するために必要なハードウェア構成を決定する十分な知識がないままであっても、SASコントローラ、SASディスクドライブ、スイッチ、または他の機器を購入する必要がないことです。個人用コンピュータが要件を満たしている場合、VMwareホームラボを構築するために使用できます。
開発。VMware vSphere向けのアプリケーションを開発する場合、仮想ESXiサーバー上で実行されるネストされたVMを使用できます。
テスト。VMware vSphere向けのアプリケーションを、仮想ESXiサーバー上で実行されるネストされたVMでテストできます。ただし、物理ハードウェアに依存する問題を明らかにするために最終テストは実環境のvSphereで実行してください。別のユースケースとして、新しいバージョンのVMwareハイパーバイザーをハードウェアにインストールするか、ハードウェアにインストールされている既存のバージョンをアップグレードするかを決定する前に、仮想環境で新しいバージョンをテストすることが挙げられます。VMware vSphereのコンポーネントをアップグレードしたことがない場合、仮想環境で実験することをお勧めします。さまざまなシナリオをテストし、新機能を確認できます。
vSphere環境をアップグレードする前に、VMware VMのバックアップを実行して、データ損失を防ぎ、問題が発生した場合のダウンタイムを防止することをお勧めします。
デモ。営業担当者は、デモンストレーションの目的で仮想ESXiホストと仮想vSphere環境を使用し、必要なソフトウェアの機能を説明できます。
vSphere環境をアップグレードする前に、データの損失を避け、問題が発生した場合のダウンタイムを防ぐために、VMware VMバックアップを実行することをお勧めします。
デモ。セールスマネージャーは仮想ESXiホストと仮想vSphere環境をデモンストレーション用に使用し、必要なソフトウェアの機能を説明することができます。
パブリッククラウドでのVMware VMの実行。ネスト仮想化の別のユースケースは、マネージドサービスプロバイダーがパブリッククラウドで異なる仮想化プラットフォームのVMを展開することです。
ネスト環境をバックアップするには、ハイパーバイザ(外部ゲスト)で実行されているVMをバックアップするか、ネストされたVM(内部ゲスト)をバックアップすることができます。VMware VMのバックアップと災害対策については、このホワイトペーパーを参照してください。
ネストされたVMのパフォーマンス
VMwareハイパーバイザ上で仮想マシンを実行する場合、ハイパーバイザ上の実行中のVMに関連するプロセスが1つあります。このプロセスは、VMが使用する仮想RAMに応じてホストの物理RAM(ランダムアクセスメモリ)を消費します。5つのVMを実行する場合、5つのプロセスがあります。プロセスがホスト上で実行される回数が増えると、コンテキストの切り替えと物理プロセッサのスケジューリングに必要な時間も増えます。その結果、待機時間が増加し、パフォーマンスレベルが低下します。
仮想ESXiを適切にシャットダウンおよび再起動する能力は、vSphere APIおよびvSphere Client(インターフェース内の適切なボタンをクリックするとき)によって提供されます。
ESXiホストの電源状態が変更されたとき(電源オン、電源オフなど)、スクリプトを実行する能力があります。
(以前のVIX APIとして知られる)ゲストオペレーションAPIサポートは、VM内の操作(この場合、仮想ESXiのコンソール)を可能にします。
- VMware VMで実行されているESXi用のVMware Toolsは、vSphere 5.0、5.1、および5.5向けに最初にリリースされました。手動でのインストール用のVMware Toolsは、ESXi 5.xバージョン向けのVIBパッケージとして提供されます。VMware vSphere 6.0からは、VMware ToolsがESXiに組み込まれ、VMware VMとして実行されるESXiに手動でVMware Toolsをインストールする必要がなくなりました。
- 仮想ESXi上のVMware Toolsの状態を確認するには、次のコマンドを使用します:
/etc/init.d/vmtoolsd status
- ネットワーキング
ESXiネストされた仮想化を構成する際、ネットワーク構成は課題となる場合があります。ただし、L2およびL3ネットワークの動作原理や仮想スイッチの理解により、VMwareネストされた仮想化のネットワーク構成が簡素化されます。
ESXiにネストされたハイパーバイザをインストールする場合、
/etc/init.d/vmtoolsd status
Networking
ESXiネスト仮想化を構成する際、ネットワーク構成は課題となることがあります。ただし、L2およびL3ネットワークの動作原理や仮想スイッチを理解していれば、VMwareネスト仮想化のネットワーク構成を簡素化できます。
ESXiにネストハイパーバイザをインストールする場合、受信モードおよび送信偽装をvSwitchの構成で有効にする必要があります。オプションとしてMACアドレスの変更も有効にすることができます。これらの3つのオプションは、セキュリティ上の理由からデフォルトで無効になっています(拒否ステータスを持っています)。
受信モード
プロミスキャスモードは、仮想スイッチのレベルまたはポートグループのレベルで設定できるセキュリティポリシーです。プロミスキャスモードが有効になっているポートグループに接続されたVMkernelおよびその他のネットワークインターフェイスは、この仮想スイッチを通過するすべてのネットワークデバイスからのL2ネットワークトラフィックを見ることができます(ネットワークアダプタは、フレームで定義された宛先MACアドレスにかかわらず、すべてのIEEE 802.3イーサネットフレームを受信します)。通常、ネットワークアダプタは、自分宛てのフレームだけを受信し、他の宛先MACアドレスを持つフレームは破棄されます。プロミスキャスモードは、ネットワークモニタリングや診断目的でのトラフィックスニッフィング/分析にも使用できます。プロミスキャスモードが有効になると、仮想スイッチはハブのように動作します。ポートグループの設定は、仮想スイッチの設定を上書きすることができます。
A hardware (physical) switch learns MAC addresses of the network devices connected to the switch. Unlike traditional physical switches, a virtual switch doesn’t learn MAC addresses of connected network interface controllers. This is because VMware vSphere (ESXi and vCenter) already knows the MAC addresses of the virtual machines that have virtual network adapters connected to a virtual switch. In this situation, a virtual switch forwards only frames to a VM if the destination MAC address is the MAC address of the ESXi physical or virtual network interface controller (NIC).
ESXiのネスト仮想化を使用する場合、VMのNICの宛先MACアドレス(ネストされたVMのため)は、ネストされたVMが実行されている仮想ESXiホストのMACアドレスとは異なります。このため、プロミスキャスモードが無効な場合、物理的なESXiホストの仮想スイッチはこれらのフレームを破棄します。
プロミスキャスモードとパフォーマンス
仮想スイッチやポートグループでプロミスキャスモードが有効になると、ネットワークパフォーマンスが低下します。ネットワークトラフィックが多いネットワーク集約型の作業負荷にESXiのネスト仮想化を使用している場合、この変化に気付くことがあります。
MACアドレスの変更とセキュリティ
MACアドレススプーフィングは、ARPポイズニングで偽のMACアドレスを使用することを指します。そのため、ゲストOSによるMACアドレスの変更がポイントです。VMのネットワークアダプタのMACアドレスをVMX構成ファイルで設定されたMACアドレスにバインドする能力は、セキュリティを向上させ、ARPポイズニング攻撃のリスクを減らすことができます。このVMware機能により、従来の物理環境では利用できないセキュリティレベルを実現することができます。そのため、MACアドレスの変更はデフォルトで無効になっています。
注意: vSwitchは、通知メカニズムに基づいてネットワークアダプタに接続されたMACアドレスを学習するため、伝達トラフィックを学習する従来の物理スイッチとは異なります。
偽の送信
偽の送信は、VMが生成する出力トラフィック(仮想スイッチに接続されたVMの仮想ネットワークアダプタからのトラフィック)に影響を与えるセキュリティポリシーです。偽の送信は、MACアドレスの変更ポリシーと似たポリシーですが、送信ではなく受信トラフィックに適用されます。
一度偽造されたトランスミットが受け入れられると、ESXiホストでは、効果的なMACアドレスがフレームヘッダーで定義されたソースMACアドレスと異なる場合に、VMがフレームを送信できるようにします(この事実はMAC詐称とも呼ばれます)。効果的なアドレスは、ゲストOSによって設定されるMACアドレスです。偽造されたトランスミットのRejectモードでは、このVMが使用する効果的なMACアドレスがヘッダーで定義されたソースMACアドレスと異なる場合、ホストはVMにフレームを送信しません。この場合、ゲストOSはMACアドレスのスプーフィングによるネットワークの問題であることを特定することができません。デフォルトでは、偽造されたトランスミットはRejectモードに設定されています。
例を見てみましょう。仮想ESXiホスト上で実行されている3つのネストされたVMがあります。それぞれのマシンには固有のMACアドレスがあります。
ESXi – 00:50:56:DD:DD:DD
Nested VM 1 - 00:50:56:AA:AA:AA
Nested VM 2 - 00:50:56:BB:BB:BB
Nested VM 3 - 00:50:56:CC:CC:CC
これらのVMのいずれかが、仮想ESXiホストのネットワークアダプタを介して仮想スイッチの外部に接続しようとすると、仮想ESXiホストのネットワークアダプタに接続された仮想スイッチは、VMによって送信されたEthernetフレームで定義されたソースMACアドレスをチェックします。ソースMACアドレスは、仮想ESXiホストの効果的なMACアドレスと一致しません。このVMから送信されたフレームは、偽造トランスミットとして扱われ、破棄されます。この場合、偽造トランスミットポリシーはRejectに設定されています。
VMware vSphere 6.7では、分散型仮想スイッチはMACアドレス学習機能をサポートしています。これは、vSphere 6.7以降、標準的な仮想スイッチのPromiscuousモードとForged transmissionを有効にする代わりに、分散型仮想スイッチ(VDS) v6.6またはそれ以上を使用してVMwareネスト仮想化をネットワーク設定することができるということです。macManagementPolicyはVDS構成に有効になる必要があります。
VMwareネスト仮想化の設定方法
理論的な部分を終えた後、私たちはVMwareネスト仮想化の設定を実践的に行うことができます。この手順では、ESXi 7.0.3を実行している仮想マシンをデプロイし、ESXi VM上にネストされたWindows VMを実行します。私は物理的なサーバー上のvSphere 6.7を含むESXi 6.7とvCenter 6.7を使用しています。これは、既存のvSphere環境でVMware vSphereの最新版のESXiネスト仮想化を使用する例です。
I use the following machines:
- 192.168.101.205 – ESXi 6.7を実行している物理的なホスト。このホストには複数のVMFSデータストアが接続されています。
- 192.168.101.103 – 別のホスト上に実行されているVMware vCenter Server。ホスト名はvcenter6-7 (vcenter6-7.localdomain)。このvCenter Serverは、ESXi ホスト(192.168.101.205)の管理を行うために使用されます。
- 192.168.101.131 – ESXi 7.0 Update 3 (ESXi 7.0.3)を実行しているVM。VMの名前はESXi7-VMです。
- 192.168.101.0/24 – 物理および仮想マシンを接続するために使用されるネットワークのアドレスです。
同じ構成を使用するか、独自の構成を使用して、ラボでVMwareネスト仮想化を使用して仮想環境を展開できます。
ISOイメージをアップロードする
I need to upload the ESXi 7.0.3 installation ISO image to the datastore on ESXi 6.7, which is my physical ESXi host.
- VMware vSphereクライアントを開き、データストアに移動します。
- ファイルをアップロードするデータストアを選択します。私はESXi 6.7ホスト(192.168.101.205)にあるデータストア11を選択します。
- ファイルタブを選択します。
- ファイルをアップロードをクリックします。
- コンピューター上のESXi 7.0.3インストールISOイメージファイルを選択し、開くをクリックします。
ファイルがデータストアにアップロードされるまでお待ちください。
VMwareハイパーバイザーVMを作成する
次に、ESXI 7.0.3をインストールする新しいVMを作成します。
- ホストとクラスタに移動します。
- 必要なESXiホスト(この場合は192.168.101.205)を選択します。
- アクション > 新しい仮想マシンをクリックします。
A New Virtual Machine wizard opens. Follow the steps to create the machine.
1) 作成タイプを選択
- 新しい仮想マシンを作成をクリックします。
- ウィザードの各ステップで次へをクリックして続行します。
2) 名前とフォルダを選択
次に、次のパラメータを指定します。
- 仮想マシン名: ESXi7-VM
- VMの場所: Datacenter1
これらのパラメーターはあなたのインフラストラクチャーによっては異なる可能性があります。
3) 計算資源の選択
VMをデプロイするためにどの physical ESXi ホストを選ぶかを選択してください。ここでは 192.168.101.205 を選んでいます。
4) ストレージの選択
VM ファイルを配置するデータストアを選択してください。十分な空きスペースがあることを確認してください。この例では datastore42 を選んでいます。
5) 互換性の選択
選択された互換性は VM ハードウェアのバージョンを定義します。新しいバージョンはより多くの機能を提供しますが、古いバージョンは VMware ESXi や VMware Workstationの古いバージョン上で VM を実行することができます。VMware ESXi の古いハイバイサーのバージョンを実行したい場合は、互換性の较低バージョンを選択する必要があるかもしれません。ここでは ESX 6.7 上で VM を作成し、互換性に ESXi 6.5 以降 (VM バージョン 13) を選んでいます。记忆しておくことができますが、嵌套仮想化は VM ハードウェアのバージョン 9 以降でサポートされます。
6) ゲスト OS の選択
以下のパラメーターを選択してください。
- ゲスト OS ファミリ: その他
- ゲスト OS バージョン: VMware ESXi 6.5 以降
ESXi のバージョンを選択すると、警告メッセージが表示されます: このオペレーティングシステムはサポートされていません。これは VMware から VM 上で ESXi を使用して問題が発生した場合、技術サポートを要求することができないことを記録したメッセージです。このメッセージを無視してインストールを続行してください。
7) ハードウェアのカスタマイズ
このステップは ESXi 嵌套仮想化の適切な設定に重要です。新しい VM の仮想ハードウェアの設定が必要です。
CPU。少なくとも2CPUを選択してください。CPUに複数のコアを選択することができます。ゲストOSに対して硬体アシスト Virtua lizationを露出するチェックボックスを選択することで、このVMにVMware嵌套仮想化を有効にします。
注意:硬体アシスト Virtua lizationを露出しない場合、VM上でESXiをインストールする際に以下のエラーが発生します。<硬体仮想化警告: 硬体仮想化はCPUの機能ではないか、BIOSで有効化されていません>。このエラーが表示されると、仮想ESXiホスト上で嵌套VMを起動することはできません。
メモリ。少なくとも8GBのメモリを選択してください。ESXi自体が動作するためには4GBのメモリが必要です。嵌套VMを実行するためには4GBを超えるメモリを追加する必要があります。
ハードディスク。仮想ハードディスクのオプションを設定してください。新しい仮想ハードディスクのサイズを設定し、ESXi 7.0.3のストレージ要求(少なくとも32GBのディスクスペース)を満たすこと。ここで、ESXi 7.0.3をインストールするための40GBの仮想ディスクを作成します。
ディスクプロビジョニング。薄いプロビジョニングを選択してください。このオプションは、VMが所在するデータストア上のストレージ空间を節約することができます。
- ネットワーク。必要なVMネットワークを選択してください。私はVMXNET3をネットワークアダプタとして最適な性能を得るために使用しています。
- 新しいCD/DVDドライブ。新しいCD/DVDドライブを展開してください。
- ドロップダウンメニューでデータストアISOファイルを選択してください。
- CD/DVDメディアの行で、参照をクリックし、データストア内のISOファイルを選択します。
- 以前にアップロードしたESXi 7.0.3インストールISOイメージファイルをデータストア内で選択します。
8) 完了の準備ができました
VMの構成要約を確認し、すべてが正しい場合は完了をクリックします。
ESXi VMの起動
VMが作成されたら、このVMを起動します。VMware vSphere ClientでESXi7-VMを選択し、VMを右クリックし、操作メニューから電源>電源をオンをクリックします。
VMが起動したら、VMのコンソールをWebブラウザで開き、またはVMwareクライアント(VMware WorkstationやVMware Remote Consoleアプリケーションなど)で開き、通常の方法でESXi 7.0.3をインストールします。ESXiをインストール。ESXiでIPアドレスとホスト名を設定します(192.168.101.131は当ウォークスルーでESXi7-VMで使用されるIPアドレスです)。
VM上にESXi 7.0.3をインストールしたら、VMware vSphere ClientでVM名をクリックしてVMの情報を表示できます。以下のスクリーンショットで確認できるように、VMware ToolsがESXi 7.0.3 VMに自動的にインストールされています。
仮想スイッチの設定
外部のESXi VM(192.168.101.131)にネストされたVMを作成する前に、物理的なESXiホスト(192.168.101.205)に仮想スイッチを設定する必要があります。このブログ記事の理論的な部分で説明したように、ネストされたVMが仮想ESXiホストの外部でネットワーク接続を許可するために、物理ESXiホストの仮想スイッチでプロミスキャスモードと偽造送信を有効にする必要があります。
-
- VMware vSphere Clientのホストとクラスタに移動します。
- ESXi VMをインストールしたESXiホストを右クリックし、設定をクリックしてESXiの設定を開きます。 構成タブが開きます。
- ネットワークカテゴリで仮想スイッチをクリックします。
- 必要な仮想スイッチ(この場合はvSwitch0)を選択し、編集をクリックします。
- 仮想スイッチのセキュリティポリシーを構成します。 プロミスキャスモード、MACアドレスの変更、および偽造送信に対して許可を選択します。設定を保存してウィンドウを閉じるには、OKをクリックします。
仮想スイッチはESXiネスト仮想化のために設定されました。
ESXi VMでデータストアを作成する
ESXi 7.0.3 VMを作成する際、ESXのインストール用に40GBの仮想ディスクを1つ作成しました。ESXi 7のパーティションレイアウトが変更されたため、VMFSLパーティションが作成され、小さなディスク(128GB未満)にデータストアを作成するためのVMFSパーティションを作成するスペースがありません。そのため、ESXi 7.0.3のインストールに使用される仮想ディスクにVMを保存することはできず、ESX7 VMには別の仮想ディスクを作成する必要があります。
VMFSLパーティションは、ESXi OSデータ、コアダンプ、ツール、およびスクラッチを格納するために使用されます。ディスクサイズが128GBを超える場合、システムディスクの追加パーティションにVMFSデータストアが作成されます。
ESXi7-VM用の2番目の仮想ディスクを作成しましょう。この仮想ディスクを仮想ESXiホスト上のVMFSデータストアに使用します。これを行うには、仮想マシンをシャットダウンしてから仮想ディスクを追加します。
- VMware vSphere Clientに移動し、ESXi7-VMを選択します。
- VM名を右クリックし、開いたメニューで設定の編集をクリックします。
- 設定の編集ウィンドウで、新しいデバイスを追加をクリックし、ハードディスクを選択します。その後、新しいハードディスクのオプションを設定します。
I select the following configuration:
- ディスクサイズ:30GB
- タイプ:スレンダープロビジョニング
VM構成を保存してウィンドウを閉じるためにOKをクリックします。
ESXi7-VM上に第二の仮想ディスクを作成した後、VMを起動します。その後、webブラウザーを使用して、VM内のESXi 7.0.3に接続し(192.168.101.131)、VMware Host Clientにログインします。
ナビゲーターのパネルにあるStorageに移動して、New datastoreをクリックします。
1) Datastore名
新しいデータストアを作成する場合はCreate a new VMFS datastoreを選択し、例えばds-nested01という名前を付けます。各ステップでNextをクリックして進めます。
2) パーティション選択
空き仮想ディスクは1つだけありますので、この30-GBのディスクが選択されます。適切なドロップダウンリストでUse full diskおよびVMFS 6を選択します。
3) 完了準備
データストアの設定概要を確認し、Finishをクリックします。
A datastore is created. You can use this datastore to store a nested VM (for example, a VM running Windows) in a virtual VMware hypervisor, that is, ESXi 7.0.3 in my case.
嵌套VMのISO画像のアップロード
仮想ESXiホスト上で嵌套VMを作成し、VMwareの嵌套仮想化を実際に設定する方法を説明する準備はほぼ完了しました。この嵌套VMにWindows XPをインストールします。なぜならこのオペレーティングシステムは軽量で、嵌套環境で十分な性能があるからです。安全性问题に注意して、最新のWindows版本を使用してください。他のサポートされるゲストオペレーティングシステム(VMware Toolsが提供されるゲストOS)をインストールすることもできます。ゲストWindows OSをインストールするためには、WindowsのインストールISO画像ファイルを使用する必要があります。このOSインストールを実行するためには、OSインストールエージェントを起動し、嵌套VM上にゲストOSをインストールすることになります。
WindowsインストールISOイメージをアップロードするための2つの主要な方法があります。
- ISOイメージを仮想ESXiホストのデータストアにアップロードします(私の場合、ESXi 7.0.3 VMのIPは192.168.101.131です)。ネストされたWindows VMのCD/DVDドライブ設定でデータストアからISOイメージを使用するように選択します。
- ISOイメージを物理ESXiホストのデータストアにアップロードします。ESXi7-VMのVM設定でこのISOイメージをCD/DVDドライブにマウントします。新しいネストされたVMを作成する際に、Windows XPのVMのVM設定でホストデバイスを選択します。VMによって使用されるCD/DVDドライブのホストデバイスオプションは、パススルーモードを有効にし、VMを物理ESXiホストの物理CD/DVDドライブに接続します。私たちのESXiホスト7.0.3はVMwareのネスト仮想化の場合仮想ですので、ホストデバイスオプションはESXi7-VMの仮想CD/DVDドライブをネストされたVMの仮想CD/DVDドライブに接続します。
第2の方法の利点は、仮想ESXi VMのデータストアスペースを使用する必要がないこと、すべてのISOイメージを1つの場所に保存できること、および全体的なパフォーマンスがわずかに向上することです。この手順では、ESXiのネスト仮想化の構成を説明するために第2の方法を使用します。
Windows XPのインストールISOイメージファイルをデータストア(私たちの場合はデータストア11)にESXi 7.0.3のISOイメージファイルと同様にアップロードします。
- データストアに移動します。
- 必要なデータストアを選択します。
- ファイルタブをクリックします。
- ファイルをアップロードをクリックします。
- 必要なISOファイルを選択し、開くをクリックしてから、ISOファイルがデータストアにアップロードされるまで待ちます。
ESXi7-VMの設定を編集します(この目的でVMware vSphere Clientを使用します)。
- CD/DVD ドライブ 1を選択します。
- データストアのISOファイルオプションを選択します。
- CD/DVD メディアセクションの参照をクリックし、データストアにあるWindows ISOイメージを選択します。
- これらのチェックボックスが選択されていることを確認してください:接続済み、電源オン時に接続。
ネストされたVMを作成します
仮想ESXi 7ホストのWebインターフェースにログインします(私の場合、192.168.101.131)。
ナビゲータペインで仮想マシンを選択し、VMの作成/登録をクリックします。
A new virtual machine wizard opens in VMware Host Client.
1) 作成タイプを選択します
新しい仮想マシンを作成を選択します。ウィザードの各ステップで次へをクリックして続行します。
2) 名前とゲストOSを選択します
VMとOSの一意の名前を指定します。以下のパラメータを選択します。
- A VM name: WindowsXP
- 互換性:ESXi 7.0 U2 仮想マシン
- ゲストOSファミリー:Windows
- ゲストOSバージョン:Microsoft Windows XP Professional (32-bit)
他のゲストOSをVMにインストールする場合は、適切なOSをオプションで選択します。
3) ストレージを選択
既に作成したデータストアを仮想ESXiホスト上で選択してください。私はds-nested01をVMファイルを格納するために選びました。
4) 設定のカスタマイズ
VMのハードウェアと追加のVMオプションを設定してください。
I select:
- CPU: 1 CPU
- メモリ: 512 MBのRAM (Windows XP 32bit用に3.3 GBまで選択できる)
- ハードディスク: 8 GB
- ディスクプロビジョニング: 薄いプロビジョニング
CD/DVDドライブ1: ホストデバイス
他の設定についてはデフォルトの値を保持できます。
5) 完了の準備
嵌套VMの設定を確認し、すべて正しければ完了を押してください。
ESXi 7.0.3上で嵌套VMを電源を入れます。VMは仮想ESXi 7.0.3 VMに MountedされたISO画像から起動するはずです。嵌套VMにゲストオペレーティングシステムをインストールします。VMの画面预览をクリックしてVMコンソールを開き、WebインターフェースでゲストOSとやりとりすることができます。
嵌套VMにゲストOSをインストールした後、VMware Toolsをインストールしてください。ESXiのディストリビューションにISO画像とVMware Toolsを含むことがない場合は、VMware Toolsのインストール画像を公式VMwareウェブサイトから下载することができます。VMware Toolsのインストールに関する詳細な情報はこの記事を読んでください。
VMware Toolsをインストールした後、嵌套VMのネットワークは正しく機能するはずです。仮想ESXi ホストから嵌套VMにPingを試し、そして逆方向にも試してください。
ESXi VMの克隆
ESXiを1つのVMで構成した後、物理的なESXiサーバー上にさらにESXi VMを展開する必要があります。ネストされたvCenter Server Applianceと共有ストレージを持つVM(例:FreeNAS)を展開して、クラスタリング機能を含むさまざまなvSphere機能をテストすることもできます。
常に新しいVMにESXiをゼロからインストールできますが、複数の同一のESXi VMを展開する必要がある場合には、この操作を定期的に行う必要があるかもしれません。そのため、より良い解決策は1つのESXi VMを構成してこのVMをクローンすることです。ただし、適切に機能するVMクローンを作成するには、いくつかの追加手順が必要です。
- ESXCLIでコマンドを実行してVMkernel MACアドレスを変更します。
esxcli system settings advanced set -o /Net/FollowHardwareMac -i 1
- UUIDレコードをesx.confから削除します。UUID値はホストごとに一意である必要があります。
システムUUIDレコードは/etc/vmware/esx.confに格納されています。 - このファイルを開き、/system/uuidで始まる行を削除します。
- 元のESXi VMをシャットダウンします。これでESXi VMをクローンできます。次回VM(VMクローンを含む)を起動すると、新しいUUIDが生成されます。ESXi VMクローンを起動したら、それらのネットワーク設定(IPアドレス、ホスト名など)を変更してください。
今、実践的にVMwareのネスト仮想化の使用方法とESXiのネスト仮想化による仮想環境の展開方法を知りました。同じ考え方を使用して、他のハイパーバイザーでもネスト環境を展開することができます。
VMware Workstationでのネスト仮想化については、VMwareホームラボ6.7およびVMwareホームラボ7.0のブログ投稿で詳しく説明されています。
Hyper-Vのネスト仮想化とHyper-V VMにESXiをインストールする方法についても読むことができます。
Hyper-Vの仮想化ベースセキュリティについて詳しく学び、このホストではVMwareはネスト仮想化をサポートしていませんエラーを解決する方法を学ぶことができます。ESXi上で実行されているVM上にHyper-Vを展開し、仮想Hyper-Vサーバー上でネストされたVMを実行できます。
結論
ネスト仮想化は、仮想マシン(VM)内でVMを実行する機能です。このブログ投稿では、VMwareのネスト仮想化について説明し、ネストされたWindows VMを持つ仮想ESXiホストを展開する方法を説明しました。ESXiのネスト仮想化を構成する最も重要なステップは、ハードウェアアシスト仮想化をゲストハイパーバイザに公開し、正しいネットワーク動作のために仮想スイッチのセキュリティポリシーを構成することです。ESXi VM上で実行されるハイパーバイザVMとネストされたVMを通常通りバックアップすることができます。信頼性のあるVMware VMバックアップをお探しの場合は、NAKIVO Backup & Replicationをお試しください。
Source:
https://www.nakivo.com/blog/vmware-nested-virtualization-explained-use-cases-and-tutorial/