Обзор виртуальных машин поколения 2
Применимо к:Windows Server 2012 R2
Виртуальное оборудование и функциональные возможности виртуальной машины определяются ее поколением. Hyper-V поддерживает два поколения виртуальных машин: поколение 1 и поколение 2. Виртуальные машины поколения 2 отличаются упрощенной моделью виртуального оборудования и вместо встроенного ПО на основе BIOS поддерживают единый интерфейс UEFI. Виртуальные машины поколения 2 уже избавлены от большинства устаревших устройств.
В этой статье рассматриваются различные преимущества и требования виртуальных машин поколения 2. Для Hyper-V на Windows Server 2016 Technical Preview или Windows 10 см. раздел Следует ли создавать виртуальные машины поколения 1 или 2 в Hyper-V?
Предыдущие версии Hyper-V включали только одно поколение виртуальных машин. В Windows Server 2012 R2 предлагаются два поколения виртуальных машин на выбор при создании новой виртуальной машины:
Поколение 1. Предоставляет виртуальной машине такое же виртуальное оборудование, как в предыдущих версиях Hyper-V.
Поколение 2. Предоставляет виртуальной машине следующие новые функциональные возможности:
PXE-загрузка с помощью стандартного сетевого адаптера;
загрузка с виртуального жесткого диска SCSI;
загрузка с виртуального DVD-диска SCSI;
безопасная загрузка (включена по умолчанию);
поддержка встроенного ПО UEFI.
Примечание
Поддержка дисков IDE и устаревших сетевых адаптеров удалена.
Виртуальные машины поколения 2 поддерживают следующие гостевые операционные системы Windows:
Windows Server 2012 R2
Windows Server 2012
64-разрядные версии Windows 8.1
64-разрядные версии Windows 8
Информацию о том, какие дистрибутивы Linux поддерживают виртуальные машины поколения 2, см. в статье Linux и FreeBSD виртуальных машин Hyper-v.
Предупреждение
Для запуска виртуальных машин Linux поколения 2 необходимо отключить параметр безопасной загрузки.
Предупреждение
После создания виртуальной машины изменить поколение невозможно.
В предыдущих версиях Hyper-V для удаленной установки гостевой операционной системы с помощью загрузки PXE требовалась установка традиционного сетевого адаптера. В виртуальных машинах поколения 2 традиционных сетевых адаптеров нет. Они поддерживают загрузку PXE с помощью стандартного сетевого адаптера.
В предыдущих версиях Hyper-V виртуальную машину можно быть загрузить с DVD или виртуального жесткого диска, подключенного через SCSI.
Виртуальные машины поколения 2 могут запускаться с DVD или виртуального жесткого диска, подключенного к SCSI-контроллеру. В виртуальных машинах поколения 2 виртуальный контроллер интерфейса IDE недоступен.
Безопасная загрузка — это функция, которая помогает предотвратить выполнение посторонних встроенных программ, операционных систем или драйверов UEFI (так называемого дополнительного ПЗУ) во время запуска системы.
Примечание
В виртуальных машинах поколения 2 безопасная загрузка включена по умолчанию. Изменить значение этого параметра можно после создания виртуальной машины. Дополнительные сведения см. в статье Безопасная загрузка.
Ниже приводится сравнение устройств в виртуальных машинах поколения 1 и поколения 2.
Устройство поколения 1 |
Замена в поколении 2 |
Усовершенствования в поколении 2 |
---|---|---|
Контроллер интерфейса IDE |
Виртуальный SCSI-контроллер |
Загрузка из файла .VHDX (максимальный размер 64 ТБ, возможность оперативного изменения размера) |
Дисковод IDE |
Виртуальный дисковод SCSI |
Поддержка до 64 DVD-устройств SCSI на SCSI-контроллер. |
Традиционная BIOS |
Встроенное ПО UEFI |
Безопасная загрузка |
Традиционный сетевой адаптер |
Синтетический сетевой адаптер |
Сетевая загрузка по протоколам IPv4 и IPv6 |
Контроллер гибких дисков и DMA |
Контроллер гибких дисков не поддерживается |
|
Универсальный асинхронный приемопередатчик (UART) для COM-портов |
Дополнительный UART для отладки |
Более быстрый и надежный |
Контроллер клавиатуры i8042 |
Программный ввод |
Использует меньше ресурсов, так как нет эмуляции. Также уменьшает уязвимость гостевой операционной системы |
Клавиатура PS/2 |
Программная клавиатура |
Использует меньше ресурсов, так как нет эмуляции. Также уменьшает уязвимость гостевой операционной системы |
Мышь PS/2 |
Программная мышь |
Использует меньше ресурсов, так как нет эмуляции. Также уменьшает уязвимость гостевой операционной системы |
S3-видео |
Программное видео |
Использует меньше ресурсов, так как нет эмуляции. Также уменьшает уязвимость гостевой операционной системы |
Шина PCI |
Больше не требуется |
|
Программируемый контроллер прерываний (PIC) |
Больше не требуется |
|
Программируемый интервальный таймер (PIT) |
Больше не требуется |
|
Устройство Super I/O |
Больше не требуется |
Ниже приводятся некоторые часто задаваемые вопросы о виртуальных машинах поколения 2.
Да. Это связано с тем, что поколение 2 не поддерживает все гостевые операционные системы, которые поддерживает Hyper-V, Гостевые операционные системы, которые не поддерживаются виртуальными машинами поколения 2, необходимо устанавливать на виртуальную машину поколения 1.
В повседневной работе большой разницы в производительности между виртуальными машинами поколения 1 и поколения 2 нет. Виртуальные машины поколения 2 загружаются и устанавливаются немного быстрее.
Виртуальные машины поколения 2 обладают следующими преимуществами:
запускаются с любого устройства SCSI и со стандартного сетевого адаптера;
предотвращают выполнение посторонних встроенных программ, операционных систем или драйверов UEFI во время запуска системы (при включенной функции безопасной загрузки).
По умолчанию в виртуальных машинах поколения 2 COM-порты не отображаются. Для настройки COM-портов используйте Windows PowerShell или инструментарий управления Windows (WMI).
Чтобы включить отладку ядра с помощью COM-порта, выполните указанные ниже действия.
Отключите безопасную загрузку. Отладка ядра несовместима с безопасной загрузкой, поэтому данную функцию на виртуальной машине следует выключить. Чтобы выключить безопасную загрузку на отключенной виртуальной машине, выполните командлет Set-VMFirmware в Windows PowerShell. Например, безопасную загрузку на виртуальной машине TestVM отключает следующая команда:
Set-VMFirmware –Vmname TestVM –EnableSecureBoot Off
Настройте COM-порт. Чтобы добавить COM-порт на виртуальную машину, выполните командлет Set-VMComPort в Windows PowerShell. Например, следующая команда настраивает первый COM-порт на виртуальной машине TestVM на подключение к указанному каналу TestPipe на локальном компьютере:
Set-VMComPort –VMName TestVM 1 \\.\pipe\TestPipe
Примечание
Настроенные COM-порты не отображаются в параметрах виртуальной машины в консоли диспетчера Hyper-V.
Нет. Виртуальные машины поколения 2 не поддерживают RemoteFX.
Нет. Виртуальный DVD-дисковод в виртуальных машинах поколения 2 поддерживает только файлы ISO-образов. Для создания ISO-файла образа среды Windows можно использовать средство командной строки Oscdimg. Дополнительные сведения см. в разделе Параметры командной строки Oscdimg.
Нет. Виртуальные машины поколения 2 поддерживают только виртуальные жесткие диски в формате VHDX. Вы можете конвертировать файлы VHD в формат VHDX с помощью мастера изменения виртуального жесткого диска в консоли диспетчера Hyper-V или командлета Convert-VHD в Windows PowerShell.
Можно ли использовать VHDX-файл, конвертированный из VHD-файла для запуска виртуальной машины поколения 2?
Нет. Требуется чистая установка операционной системы.
Можно ли изменить размер VHDX-файла, содержащего загрузочный том для виртуальной машины поколения 2, во время ее работы?
Да.
64 ТБ
Можно ли создать VHDX-файл, позволяющий загружать виртуальные машины как первого, так и второго поколения?
Несмотря на то что технически это возможно, на практике вероятно возникновение непредвиденных ошибок. Таким образом, VHDX-файл, позволяющий загружать виртуальные машины как первого, так и второго поколения, не поддерживается и не рекомендуется к использованию.
Да. VHDX-файл служит контейнером для диска и, таким образом, может быть смонтирован независимо от поколения виртуальной машины.
Нет. Поколение виртуальной машины — это свойство виртуальной машины, а не виртуального жесткого диска.
Да. VHDX-файл можно прикрепить к контроллеру интерфейса IDE или к SCSI-контроллеру виртуальной машины поколения 1. Однако если это загрузочный VHDX-файл, виртуальная машина поколения 1 с него загружаться не будет.
Нет. Виртуальная машины поколения 2 — это новая функциональная возможность Windows Server 2012 R2.
Нет. Виртуальное встроенное ПО и его конфигурация не зависят от физической платформы.
Нет.
Майкрософт не предоставляет и не поддерживает оболочку UEFI или другие приложения UEFI. Использование оболочки UEFI или приложений UEFI других разработчиков технически возможно, если они компилируются непосредственно в источниках. Если такие приложения не имеют надлежащей цифровой подписи, безопасную загрузку виртуальной машины придется отключить.
Загрузочные записи виртуальной машины поколения 2 хранятся в файле конфигурации виртуальной машины.
По умолчанию в мастере создания виртуальной машины или с помощью командлета New-VM Windows PowerShell создаются виртуальные машины поколения 1. В мастере создания виртуальной машины на странице Укажите поколение можно выбрать параметр Поколение 2. В Windows PowerShell для выбора поколения виртуальной машины можно использовать параметр –Generation.
Нет.
Почему 64-разрядные версии Windows Server 2008 R2 и Windows 7 не поддерживаются в качестве гостевых операционных систем виртуальных машин поколения 2?
Несмотря на то что Windows Server 2008 R2 и Windows 7 поддерживают UEFI, они используют программируемый контроллер прерываний (PIC), который отсутствует в оборудовании виртуальных машин поколения 2.
Почему 32-разрядные версии Windows 8.1 и Windows 8 не поддерживаются в качестве гостевых операционных систем виртуальных машин поколения 2?
Виртуальные машины поколения 2 не поддерживаются в 32-разрядных гостевых операционных системах, поскольку 64-разрядное встроенное ПО не включает модуль поддержки совместимости.
Информацию о том, какие дистрибутивы Linux поддерживают виртуальные машины поколения 2, см. в статье Linux и FreeBSD виртуальных машин Hyper-v.
Предупреждение
На виртуальных машинах поколения 2 по умолчанию включается безопасная загрузка, а виртуальные машины Linux при включенной безопасной загрузке не загружаются.
Отключить безопасную загрузку можно в разделе Встроенное ПО параметров виртуальной машины в диспетчере Hyper-V или с помощью Windows Powershell:
Set-VMFirmware -VMName "VMname" -EnableSecureBoot Off
До восьми. Кроме того, виртуальные машины поколения 2 не поддерживают традиционные сетевые адаптеры.
Какое максимальное число запоминающих устройств, VHDX-файлов или DVD-приводов поддерживает виртуальные машины поколения 2?
256. Виртуальные машины поколения 2 поддерживают до четырех SCSI-контроллеров, каждый из которых поддерживает 64 устройства. Виртуальные машины поколения 2 могут иметь более четырех DVD-приводов.
Почему при использовании командлета New-VM в Windows PowerShell виртуальная машина поколения 2 создается без DVD-привода?
Виртуальная машина поколения 2 позволяет добавить DVD-привод в процессе работы.
Нет.
Да. По умолчанию виртуальные машины поколения 2 используют протокол IPv4. Настроить виртуальную машину на использование протокола IPv6 вместо IPv4 можно с помощью командлета Set-VMFirmware в Windows PowerShell. Например, следующая команда задает протокол IPv6 для виртуальной машины TestVM:
Set-VMFirmware –VMName TestVM –IPProtocolPreference IPv6
Можно ли использовать виртуальный гибкий диск (.VFD) как файл ответов в автоматической установке виртуальной машины поколения 2?
Нет. Виртуальные машины поколения 2 не поддерживают виртуальные гибкие диски. В качестве альтернативы можно использовать файл ISO-образа на DVD-диске.