Обзор виртуальных машин поколения 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 необходимо отключить параметр безопасной загрузки.

Предупреждение

После создания виртуальной машины изменить поколение невозможно.

Особенности виртуальных машин поколения 2

PXE-загрузка с помощью стандартного сетевого адаптера;

В предыдущих версиях Hyper-V для удаленной установки гостевой операционной системы с помощью загрузки PXE требовалась установка традиционного сетевого адаптера. В виртуальных машинах поколения 2 традиционных сетевых адаптеров нет. Они поддерживают загрузку PXE с помощью стандартного сетевого адаптера.

Загрузка с SCSI-контроллера

В предыдущих версиях 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.

Можно ли запускать вместе виртуальные машины поколения 1 и поколения 2?

Да. Это связано с тем, что поколение 2 не поддерживает все гостевые операционные системы, которые поддерживает Hyper-V, Гостевые операционные системы, которые не поддерживаются виртуальными машинами поколения 2, необходимо устанавливать на виртуальную машину поколения 1.

Позволяют ли виртуальные машины поколения 2 повысить производительность?

В повседневной работе большой разницы в производительности между виртуальными машинами поколения 1 и поколения 2 нет. Виртуальные машины поколения 2 загружаются и устанавливаются немного быстрее.

В чем состоит преимущество виртуальных машин поколения 2?

Виртуальные машины поколения 2 обладают следующими преимуществами:

  • запускаются с любого устройства SCSI и со стандартного сетевого адаптера;

  • предотвращают выполнение посторонних встроенных программ, операционных систем или драйверов UEFI во время запуска системы (при включенной функции безопасной загрузки).

Как включить отладку ядра с помощью COM-порта на виртуальной машине поколения 2?

По умолчанию в виртуальных машинах поколения 2 COM-порты не отображаются. Для настройки COM-портов используйте Windows PowerShell или инструментарий управления Windows (WMI).

Чтобы включить отладку ядра с помощью COM-порта, выполните указанные ниже действия.

  1. Отключите безопасную загрузку. Отладка ядра несовместима с безопасной загрузкой, поэтому данную функцию на виртуальной машине следует выключить. Чтобы выключить безопасную загрузку на отключенной виртуальной машине, выполните командлет Set-VMFirmware в Windows PowerShell. Например, безопасную загрузку на виртуальной машине TestVM отключает следующая команда:

    Set-VMFirmware –Vmname TestVM –EnableSecureBoot Off
    
  2. Настройте COM-порт. Чтобы добавить COM-порт на виртуальную машину, выполните командлет Set-VMComPort в Windows PowerShell. Например, следующая команда настраивает первый COM-порт на виртуальной машине TestVM на подключение к указанному каналу TestPipe на локальном компьютере:

    Set-VMComPort –VMName TestVM 1 \\.\pipe\TestPipe
    

Примечание

Настроенные COM-порты не отображаются в параметрах виртуальной машины в консоли диспетчера Hyper-V.

Поддерживают ли виртуальные машины поколения 2 RemoteFX?

Нет. Виртуальные машины поколения 2 не поддерживают RemoteFX.

Можно ли подключить к виртуальной машине поколения 2 физический CD- или DVD-дисковод?

Нет. Виртуальный DVD-дисковод в виртуальных машинах поколения 2 поддерживает только файлы ISO-образов. Для создания ISO-файла образа среды Windows можно использовать средство командной строки Oscdimg. Дополнительные сведения см. в разделе Параметры командной строки Oscdimg.

Можно ли подключить виртуальной машине поколения 2 виртуальный жесткий диск в формате VHD?

Нет. Виртуальные машины поколения 2 поддерживают только виртуальные жесткие диски в формате VHDX. Вы можете конвертировать файлы VHD в формат VHDX с помощью мастера изменения виртуального жесткого диска в консоли диспетчера Hyper-V или командлета Convert-VHD в Windows PowerShell.

Можно ли использовать VHDX-файл, конвертированный из VHD-файла для запуска виртуальной машины поколения 2?

Нет. Требуется чистая установка операционной системы.

Можно ли изменить размер VHDX-файла, содержащего загрузочный том для виртуальной машины поколения 2, во время ее работы?

Да.

Какой максимальный размер VHDX-файла поддерживает виртуальная машина поколения 2?

64 ТБ

Можно ли создать VHDX-файл, позволяющий загружать виртуальные машины как первого, так и второго поколения?

Несмотря на то что технически это возможно, на практике вероятно возникновение непредвиденных ошибок. Таким образом, VHDX-файл, позволяющий загружать виртуальные машины как первого, так и второго поколения, не поддерживается и не рекомендуется к использованию.

Можно ли смонтировать VHDX-файл, используемый виртуальной машиной поколения 2?

Да. VHDX-файл служит контейнером для диска и, таким образом, может быть смонтирован независимо от поколения виртуальной машины.

Можно ли определить, был ли VHDX-файл создан виртуальной машиной первого или второго поколения?

Нет. Поколение виртуальной машины — это свойство виртуальной машины, а не виртуального жесткого диска.

Можно ли прикрепить VHDX-файл поколения 2 к виртуальной машине поколения 1?

Да. VHDX-файл можно прикрепить к контроллеру интерфейса IDE или к SCSI-контроллеру виртуальной машины поколения 1. Однако если это загрузочный VHDX-файл, виртуальная машина поколения 1 с него загружаться не будет.

Можно ли импортировать виртуальную машину поколения 2 в Hyper-V в Windows Server 2012?

Нет. Виртуальная машины поколения 2 — это новая функциональная возможность Windows Server 2012 R2.

Требуется ли безопасная загрузка или встроенное ПО UEFI на физическом сервере?

Нет. Виртуальное встроенное ПО и его конфигурация не зависят от физической платформы.

Поддерживает ли встроенное ПО UEFI виртуальной машины поколения 2 безопасную загрузку?

Нет.

Можно ли запустить оболочку UEFI или другое приложение UEFI в виртуальной машине поколения 2?

Майкрософт не предоставляет и не поддерживает оболочку UEFI или другие приложения UEFI. Использование оболочки UEFI или приложений UEFI других разработчиков технически возможно, если они компилируются непосредственно в источниках. Если такие приложения не имеют надлежащей цифровой подписи, безопасную загрузку виртуальной машины придется отключить.

Где хранятся загрузочные записи виртуальных машин поколения 2?

Загрузочные записи виртуальной машины поколения 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-разрядное встроенное ПО не включает модуль поддержки совместимости.

Можно ли использовать поколение 2 для виртуальных машин Linux?

Информацию о том, какие дистрибутивы Linux поддерживают виртуальные машины поколения 2, см. в статье Linux и FreeBSD виртуальных машин Hyper-v.

Предупреждение

На виртуальных машинах поколения 2 по умолчанию включается безопасная загрузка, а виртуальные машины Linux при включенной безопасной загрузке не загружаются.

Отключить безопасную загрузку можно в разделе Встроенное ПО параметров виртуальной машины в диспетчере Hyper-V или с помощью Windows Powershell:

Set-VMFirmware -VMName "VMname" -EnableSecureBoot Off

Какое максимальное количество сетевых адаптеров поддерживают виртуальные машины поколения 2?

До восьми. Кроме того, виртуальные машины поколения 2 не поддерживают традиционные сетевые адаптеры.

Какое максимальное число запоминающих устройств, VHDX-файлов или DVD-приводов поддерживает виртуальные машины поколения 2?

256. Виртуальные машины поколения 2 поддерживают до четырех SCSI-контроллеров, каждый из которых поддерживает 64 устройства. Виртуальные машины поколения 2 могут иметь более четырех DVD-приводов.

Почему при использовании командлета New-VM в Windows PowerShell виртуальная машина поколения 2 создается без DVD-привода?

Виртуальная машина поколения 2 позволяет добавить DVD-привод в процессе работы.

Поддерживает ли виртуальная машина поколения 2 загрузку по протоколу iSCSI или Fibre Channel?

Нет.

Можно ли выполнить инсталляцию сети, в которой используется протокол IPv6?

Да. По умолчанию виртуальные машины поколения 2 используют протокол IPv4. Настроить виртуальную машину на использование протокола IPv6 вместо IPv4 можно с помощью командлета Set-VMFirmware в Windows PowerShell. Например, следующая команда задает протокол IPv6 для виртуальной машины TestVM:

Set-VMFirmware –VMName TestVM –IPProtocolPreference IPv6

Можно ли использовать виртуальный гибкий диск (.VFD) как файл ответов в автоматической установке виртуальной машины поколения 2?

Нет. Виртуальные машины поколения 2 не поддерживают виртуальные гибкие диски. В качестве альтернативы можно использовать файл ISO-образа на DVD-диске.