跳至主要內容
  • 簡單快速地下訂單
  • 檢視訂單及追蹤商品運送狀態
  • 建立並存取您的產品清單

Third party Nested Virtualization in Windows Server 2019

摘要: Third Party Virtualization

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

症狀

What is nested virtualization?

Nested virtualization refers to virtualizing a virtual environment. In other words, it's the ability of a virtual machine to host another virtual machine within itself. Starting with Microsoft Windows Server 2016, support for nested virtualization is enabled in the Hyper-V layer of Windows operating system. As an advancement for the same, third party virtualization is introduced in Windows Server 2019. Click Here to get a brief introduction about nested virtualization.


What is third party nested virtualization?

Windows supports operating systems like Windows Server 2012 R2, Windows Server 2016 and also Linux distributions such as Red Hat Enterprise Linux, Suse Linux Enterprise Server, Fedora etc… as guest operating system within a VM. With the nested virtualization feature enabled in Windows Server 2016, we can enable the Hyper-V layer on the guest windows VMs. But nested VMs were supported on only Windows guest OS. Starting with Windows Server 2019, nested virtualization can be enabled on even the Linux VMs with the help of third party virtualization layers like QEMU. This enables customers to deploy and/or use a wider set of applications.

SLN316182_en_US__1image(8647)                            

                     Third party Nested Virtualization in Windows Server 2019

 

Enabling Third party Nested Virtualization in Windows Server 2019:

Below are the detailed steps to enable nested virtualization on Linux VMs and also on how to use QEMU to create a nested VM:

  1. Install Windows Server 2019 on the server and install Hyper-V role.
  2. Open the Hyper-V Manager and create a Gen-2 VM (VM creation) with these requirements:
  1. VM configuration version 8.0 or greater.
  2. The VM cannot use Dynamic Memory
  3. An Intel processor with VT-x and EPT technology - nesting is currently supported on systems with Intel processors only.

Example: This example uses Dell R640 server in UEFI mode with 'Virtualization technology' of the Processor (BIOS Settings -> Processor Settings) enabled as shown below.

SLN316182_en_US__2image(8648)

 

  1. Install any Linux distribution (Supported Linux VMs) as guest OS on the VM. This example uses Red Hat® Enterprise Linux® 7.5 as the OS on the VM.
  2. Next, we need to install QEMU and create a nested VM. 

    SLN316182_en_US__3image(8649)
    SLN316182_en_US__4image(8650)

  3. The step fails because prior to creating a nested VM the Virtualization Extensions must be enabled.
SLN316182_en_US__5image(8651)

       6. The nested virtualization must be configured on the VM using this command when the VM is in turned off state:

Set-VMProcessor -VMName -ExposeVirtualizationExtensions $true

 

  1. Confirm the configuration is complete using the command "Get-VMProcessor -VMName vm_name | fl *" where the field "ExposeVirtualizationExtensions" should show the result as True.

SLN316182_en_US__6image(8652)

  1. Enable the MACAddressSpoofing on the VM using below cmdlet :

"Get-VMNetworkAdapter -VMname vm_name | Set-VMNetworkAdapter -MacAddressSpoofing On"

 

SLN316182_en_US__7image(8653)

  1. Start the virtual machine and check for the availability of the virtualization extensions as shown below:

SLN316182_en_US__8image(8654)

SLN316182_en_US__9image(8655)

  1. Add all the necessary support modules to install QEMU using this command:

"yum install -y qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer"

Where,

  • qemu-kvm =  QEMU emulator
  • qemu-img = QEMU disk image manager
  • virt-install =  Command line tool to create virtual machines.
  • libvirt = Provides libvirtd daemon that manages virtual machines and controls hypervisor.
  • libvirt-client  = provides client-side API for accessing servers and also provides the virsh utility which provides command line tool to manage virtual machines.
  • virt-viewer - Graphical console
  1. Create a VM using the console or through CLI (Command Line Interface). To create using GUI type 'virt-manager' in the console terminal.
  2. Create the nested VM with QEMU and install the operating system on the same by providing the necessary parameters.                                                                                                                                                                                                                                                                                                                
SLN316182_en_US__10image(8656)

 

Use Cases of nested virtualization:

  1. Helps in creating multiple testing environments at one place which helps in both the development and testing purposes.
  2. Deployment testing of Virtual clouds.
It can offer greater flexibility and cost savings by avoiding to add on more hardware etc.

受影響的產品

Microsoft Windows Server 2019
文章屬性
文章編號: 000132088
文章類型: Solution
上次修改時間: 21 2月 2021
版本:  3
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。