Вложенная виртуализация на Hyper-V (Nested Virtualization)
В предыдущей теме мы установили Hyper-V на VMware Workstation, сегодня установим Hyper-V внутри Hyper-V.
Начиная с версии Server 2016 и Windows 10 Anniversary Update и старше реализована технология SLAT, что позволяет включать вложенную виртуализацию (Nested Virtualization).
Требования для Nested Virtualization:
- Узел Hyper-V и виртуальная машина (ВМ) должны быть размещены в Windows Server 2016, Windows 10 Anniversary Update или более поздней версии.
- Версия конфигурации Виртуальной машины 8.0 или более поздняя.
- Процессор Intel с технологией Intel VT-x и EPT (вложение сейчас поддерживается только для процессоров Intel).
Поддерживает ли процессор SLAT?
Итак, если попробовать установить роль Hyper-V на виртуальную машину, то получим такой результат (на виртуальной машине установлен Server 2019)
Итак, если попробовать установить роль Hyper-V на виртуальную машину, то получим такой результат (на виртуальной машине установлен Server 2019)
Включим возможность процессора:
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
На ВМ не должно быть динамической памяти и live migration.
Попробуем еще раз установить роль Hyper-V
Роль Hyper-V устанавливается.
Если есть необходимость в сетевом взаимодействии с родительской Hyper-V, хостом и Интернетом, то нужно настроить сетевое взаимодействие.
По сути мы получаем виртуальную среду внутри виртуальной и логика должна быть сохранена. Т.е. мы должны разрешить виртуализацию MAC адресов (MacAddressSpoofing), создание виртуальных свитчей внутри самой виртуализации (режим NAT).
1. Спуфинг MAC-адресов:
Get-VMNetworkAdapter -VMName <VMName> | Set-VMNetworkAdapter -MacAddressSpoofing On
2. Режим NAT:
New-VMSwitch -Name VmNAT -SwitchType Internal
New-NetNat –Name LocalNAT –InternalIPInterfaceAddressPrefix “ipaddress/24”
Назначим IP-адрес для сетевого адаптера NAT свитча:
Здесь мы определили тип свитча (Internal) и задали IP адресацию и получили следующее:
Далее делаем настройки сети виртуальной машины:
Или так, кому как удобно
Настраиваем сетевое взаимодействие между ВМ и Hyper-V хоста. В настройках ВМ Network Adapter должен быть подключен к NAT свитчу
Проверим пинги
В конце хотел бы добавить, что возможность вложенной виртуализации — это отличный инструмент для всяких тестовых стендов и для разработчиков, но пока никак не механизм для продакшн среды, именно пока. Думаю, в скором времени мы увидим и эту реализацию как обычный механизм.
Комментарии
Отправить комментарий