Как включить роль Hyper-V в Windows 10 на VMWare ESXi

Как включить роль Hyper-V в Windows 10 на VMWare ESXi

В одной из тестовых задач понадобилось установить компонент виртуализации Hyper-V на виртуальной машине с ОС Windows 10 (применимо и к Windows Server 2016), запущенной на гипервизоре VMWare ESXi. Т.е. нужно организовать вложенную виртуализацию Hyper-V на VMWare ESXi.

Сначала пару слов в вложенной виртуализации. Вложенная виртуализация (Nested Virtualization) – возможность запускать гипервизор внутри виртуальной машины на другом гипервизоре. В Hyper-V полноценная поддержка вложенной виртуализации появилась Windows Server 2016 / Windows 10 Anniversary Update, в VMWare технология вложенной виртуализации работает уже давно (появилась еще в ESXi 5.0).

Имеем: хост виртуализации VMWare ESXi 6.0, на нем запущена виртуальная машина с Windows 10 1709.

При попытке установить роль гипервизор Hyper-V (компонент называется Низкоуровневая оболочка Hyper-V) с помощью функции включения/ отключения компонентов в классической панели управления Windows 10, данная опция оказалась недоступна. В качестве причины указывается:

Невозможно установить Hyper-V: у процессора отсутствуют необходимые возможности виртуализации

Hyper-V cannot be installed: The processor does not have the required virtualization capabilities

Невозможно установить Hyper-V: у процессора отсутствуют необходимые возможности виртуализации

Чтобы включить вложенную виртуализацию для данной ВМ, откройте настройки виртуальной машины с помощью веб клиента vSphere (ВМ должна быть выключена). В разделе CPU включите опцию «Expose hardware assisted virtualization to the guest OS» (эта опция не доступна в “тяжелом” C# клиенте vCenter)

Expose hardware assisted virtualization to the guest OS

Примечание. В более старых версиях ESXi, в которых отсутствует данная опция, а также в настольном VMWare Workstation аналогичный эффект вызывается за счет добавления следующих опций в конфигурационный файл виртуальной машины (*.vmx).

hypervisor.cpuid.v0 = “FALSE”
mce.enable = “TRUE”
vhv.enable= "TRUE"

d0bad0b0d0ba d0b2d0bad0bbd18ed187d0b8d182d18c d180d0bed0bbd18c hyper v d0b2 windows 10 d0bdd0b0 vmware

В клиенте vSphere данные опции можно добавить в настройках ВМ. Вкладка Options-> General -> Configure parameters. Добавьте две новые строки с данными параметрами (кнопка Add Row).

hypervisor.cpuid.v0

Включаем виртуальную машину с Windows 10 и еще раз пытаемся установить роль Hyper-V. Система теперь перестала определять, что она работает внутри другого гипервизора, но теперь появилась другая ошибка:

Не удается установить Hyper-V: у процессора отсутствуют возможности преобразования адресов второго уровня (SLAT)

Hyper-V cannot be installed: the processor dose not support second level address translation (SLAT).

Т.е. процессор виртуальной машины помимо поддержки виртуализации должен поддерживать технологию SLAT — возможность виртуализации страниц памяти и передачи их под прямой контроль гостевой ОС. В терминологии Intel эта фича называется Еxtended Page Tables (EPT), у AMD — Rapid Virtualization Indexing (RVI).

Не удается установить Hyper-V: у процессора отсутствуют возможности преобразования адресов второго уровня (SLAT)

Проверим поддержку SLAT процессором с помощью команды:

systeminfo

Команда в разделе «Требования Hyper-V» должна вернуть, что отсутствует поддержка SLAT.

Second Level Address Translation: No

Преобразование адресов второго уровня: Нет

Преобразование адресов второго уровня: Нет поддержки

В этом случае нужно изменить параметры процессора виртуальной машины. В веб клиенте в секции CPU/MMU Virtualization нужно выбрать Hardware CPU and MMU.

Hardware CPU and MMU включить в VMWare

В «классическом» клиенте аналогичная опция находится на вкладке Options в секции CPU/MMU Virtualization и называется ”Use Intel VT-x/AMD-V for instruction set virtualization and Inet EPT/AMD RVI for MMU virtualization”.

Use Intel VT-x/AMD-V for instruction set virtualization and Inet EPT/AMD RVI for MMU virtualization

Запустите виртуальную машину Windows 10 и убедитесь, что ее процессор теперь поддерживает SLAT. Теперь можно установить все компоненты роли Hyper-V и запускать внутри виртуалки Win10 собственные виртуальные машины.

VMware
Как включить роль Hyper-V в Windows 10 на VMWare ESXi