Для домашнего стенда мне понадобилось установить гипервизор VMWare ESXi -V в качестве виртуальной машины Hyper-V на Windows 10. Hyper-V и VMWare ESXi поддерживают вложенную виртуализацию (nested virtualization) и в принципе этот сценарий возможен (хотя официально не поддерживается). Однако есть несколько особенностей установки ESXi под Hyper-V, которые нужно обязательно отметить.
В установочном образе ESXi отсутствуют драйвера для виртуальных адаптеров Hyper-V и этот адаптер не поддерживается VMWare (не входит в VMware Hardware Compatibility List — HCL). Поэтому перед тем как устанавливать образ VMWare ESXi на виртуальную машину Hyper-V, нужно интегрировать драйвер для сетевого адаптера Hyper-V (net-tulip) в установочный образ ESXi.
Если установщик ESXi не находит сетевых адаптеров, он выводить ошибку и не позволяет продолжить установку:
No Network Adapters. No network adapters were detected. Either no network adapters are physically connected to the system, or a suitable driver could not be located. A third party driver may be required.
Чтобы добавить драйвер net-tulip в образ ESXi, вам понадобится установить на ваш компьютер модуль VMWare PowerCLI.
Вы можете добавить драйвер net-tulip в образ с помощью PowerShell командлетов из модуля VMware.ImageBuilder (Add-EsxSoftwareDepot, Add-EsxSoftwarePackage, Export-EsxImageProfile). В этом случае вам придется вручную скачать образ ESXi и драйвер net-tulip (http://vibsdepot.v-front.de/depot/bundles/net-tulip-1.1.15-1-offline_bundle.zip).
Или намного проще воспользоваться готовым модулем ESXi-Customizer-PS (мы рассматривали его раньше в статье про интеграцию драйверов в образ ESXi).
Последнюю версию модуля ESXi-Customizer-PS 2.8.1 можно скачать с GitHub https://github.com/VFrontDe/ESXi-Customizer-PS/blob/master/ESXi-Customizer-PS.ps1 (в этой версии скрипта поддерживаются современные версии VMWare ESXi 7.0 и 6.7).
Выведите список доступных для загрузки версий ESXi:
.\ESXi-Customizer-PS-v2.8.1.ps1 -sip –ozip
В нашем случае нужно скачать образ с номером 203 (ESXi-6.0.0-20170604001-standard). Укажите 203 и нажмите Enter.
Дождитесь, пока скрипт загрузит zip архив с образом в текущий каталог.
Чтобы интегрировать в данный zip образ драйвер net-tulip и получить ISO образ, выполните команду:
.\ESXi-Customizer-PS-v2.8.1.ps1 -iZip "C:\Ps\ESXi-6.0.0-20170604001-standard.zip" -vft -load net-tulip
This is ESXi-Customizer-PS Version 2.8.1 (visit https://ESXi-Customizer-PS.v-front.de for more information!) (Call with -help for instructions) Logging to C:\Users\user\AppData\Local\Temp\ESXi-Customizer-PS-15076.log ... Running with PowerShell version 5.1 and VMware PowerCLI version .. build Adding base Offline bundle C:\Ps\ESXi-6.0.0-20170604001-standard.zip ... [OK] Connecting the V-Front Online depot ... [OK] Getting Imageprofiles, please wait ... [OK] Using Imageprofile ESXi-6.0.0-20170604001-standard ... (Dated 02/07/2020 11:36:33, AcceptanceLevel: PartnerSupported, For more information, see http://kb.vmware.com/kb/2149958.) Load additional VIBs from Online depots ... Add VIB net-tulip 1.1.15-1 [New AcceptanceLevel: CommunitySupported] [OK, added] Exporting the Imageprofile to 'C:\PS\ESXi-6.0.0-20170604001-standard-customized.iso'. Please be patient ... All done.
-vft
указывает, что нужно загрузить актуальный vib драйвер из онлайн хранилища V-Front.Итак, вы у вас есть установочный ISO образ ESXi. Теперь нужно создать виртуальную машину на сервере Hyper-V. При создании ВМ используйте следующие настройки:
- Создайте ВМ типа Generation 1;
- Добавьте как минимум 2 vCPU для ВМ;
- В свойствах ВМ удалите стандартные сетевой адаптер (Network Adapter) и добавьте новую сетевую карту типа Legacy Network Adapter;
- Разрешите использовать функцию вложенной виртуализации (Nested virtualization) для этой ВМ:
Set-VMProcessor -VMName srv-esxi1 -ExposeVirtualizationExtensions $true
- Подключите ваш ISO образ с ESXi к ВМ.
Если попробовать загрузить виртуальную машину с вашего образа, появится ошибка, вызванная отсутствием совместимого с VMkernel видеоадаптера:
Shutting down firmware services… Relocating modules and starting up the kernel…
Чтобы игнорировать эту проблему и продолжить установку ESXi, нужно при загрузке ВМ нажать TAB и добавить следующий параметр:
ignoreHeadless=TRUE
Установщик ESXi проверит конфигурацию оборудования, обнаружит сетевую карту и предложит продолжить установку образа ESXi на виртуальный диск.
Затем следуйте мастеру установки VMWare ESXi (шаги подробно описаны в статье Установка и первоначальная настройки Free VMWare Hypervisor).
После окончания установки вам нужно перезагрузить ВМ и на этапе выбора параметров загрузки ESXi нажать Shift+O. Здесь нужно также указать, что ESXi должен запускаться без проверки видеокарты. Для этого в конце строки допишите ignoreHeadless=TRUE и нажмите Enter.
Чтобы каждый раз при загрузке не указывать эту опцию, нужно изменить конфигурацию ESXi:
- После загрузки ESXi нажмите F2, укажите пароль root;
- В DCUI ESXi выберите Troubleshooting Options -> Enable ESXi Shell;
- Чтобы открыть консоль ESXi нажмите Alt+F2;
- В открывшейся консоли выполните команду:
Esxcfg-advcfg -k TRUE ignoreHeadless
Закройте консоль, нажав ALT+F2. Осталось в DCUI настроить параметры сети для ESXi и перезагрузить ВМ. Проверьте, что ESXi теперь загружается нормально и вы можете подключиться к ней с помощью vSphere Web Client.
Итак, мы рассмотрели, как запустить ESXi в виртуальной машине на Hyper-V. Хоть это и официально не поддерживаемая конфигурация, но она позволит вам попробовать поработать со старыми версиями VMWare ESXi в песочнице на своем домашнем компьютере с Windows 10.
Я такое самое проделывал с WMvare Workstation.
Поставил на виртуалку ESXi и запустил.
Процесс почти такой же.
Описывать отдельно, наверное не имеет смысла.
Добрый день.
При загрузке с созданного образа, после поясления на секунду желтого экрана появляется пурпурный с ошибкой
«ap 1 is incompatible with bsp cannot start»
cr0=0x80001003d cr2=0x0 cr3=0xb52a7000 cr4=0x12c
One or more MTRR Fixed Region register values do not match the BSP for AP 1 cand could not be reset, please update the BIOS
Странная ошибка несоотвествеи по железу. Какая версия Hyper-V?
Какое поколение у ВМ hyper-v? попробуйте 1, или 2 с отключенным secure boot.
Вм стандартная по виртуальному железу? Ничего эксзотического?
Ну а так во 2 поколении нет legacy network adapter
Из экзотического — Windows Preview канал Dev — для того чтобы работало nested virtualization.
Скриншот с ошибкой и свойства машины https://imgur.com/a/Q5U6lTw.
Если забыть и оставить стандартный (не legacy) сетевой адаптер — установка запускается (но ругается что нет сетевого адаптера). Если оставить 1 ядро процессора то установка запускается но ругается что нужно хотя бы 2 ядра..
У машины стоит Configuration Version 10.0, пробую создать машину через New-VM -Version 9.0 (вдруг поможет) — машина создается и запускается, но после -ExposeVirtualizationExtensions не стартует с ошибкой «he virtual machine could not be started because of a configuration error. Disable nested virtualization (stop exposing virtualization extensions to the virtual machine), or upgrade the virtual machine version.».. вот..
Добрый день, Я сделала всё по инструкции, ESXi запустился на Hyper -v. Но я не могу установить с ним соединения, тоесть я создаю виртуальный внутренний коммутатор, прописываю статичный IP адрес EXSi, коммутатору, но не могу пропинговать EXSi
На DCUI консоль ESXI получается зайти?
Вы пингуете ESXi непосредственно с Hyper-V хоста или с внешнего компьютера (может дело в WIndows Firewall?)
Попробуйте с нее пропинговать ваш Hyper-V хост…
Да на DCUI консоль захожу. Нет EXSi не могу пропинговать ни с хоста, ни с внешнего конпьютера, ни с другой ВМ. WIndows Firewall и антивирус отключала, ничего не помогло.
Саму виртуальную машину не запустить из-за конфликта hyper-v и ESXI. Что-то одно.
ESXi 6.5 и 6.7 на Hyper-V 2019 не запускается, даже последние сборки 6.0 тоже не подходят, подстава со стороны Microsoft((
Microsoft то здесь при чём?! o_O
vmware вам драва не кладёт, а виновата MS ? Странный вы человек…
Почему номер 203 ?
ok, ясно по билду, сейчас это другой номер.
Таки как запустить виртуалки в esxi при его конфликте с hyper-v ?
Всем привет,
Я как то делал по этому гайду и у меня всё работало.
К сожалению сейчас уже не работает и выдёт ошибку :
Running with PowerShell version 5.1 and VMware PowerCLI version 13.2.1 build 22851661
Connecting the VMware ESXi Software depot …
An unexpected error occurred:
Failed to initialize the VMware.ImageBuilder PowerCLI module because of error: Unsupported Python version. VMware.ImageBuilder supports Python 3.7.1 and higher.
Make sure that Python 3.7.1 or higher is installed and that you have set the path to the Python executable by using Set-PowerCLIConfiguration -PythonPath . See the PowerCLI Compatibility Matrixes for information on the Python requirements.
If requesting support please be sure to include the log file
Пробовал фиксить но не получилось.Если у кого то осталься образ 6.0 для Hyper-V дайте знать. У меня возможность развернуть лабу только на лаптопе, хочу получить сертификацию
Всем привет, не актуально. Сделал всё на vmware. Пока работает исправно.