Поколение виртуальной машины hyper v какое выбрать
Перейти к содержимому

Поколение виртуальной машины hyper v какое выбрать

  • автор:

Второе поколение виртуальных машин Hyper-V

date

07.05.2020

user

itpro

directory

Windows Server 2012 R2

comments

комментариев 17

Одним из главных нововведений в гипервизоре Windows Server 2012 R2 – возможность создавать виртуальные машины второго поколения (Generation 2). Какова же цель разработки второго поколения виртуальных машин Hyper-V, в чем их преимущества и в каких случаях предпочтительно их использовать? В этой статье мы попробуем ответить на все эти вопросы.

�� Онлайн-курс по устройству компьютерных сетей
На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

В Hyper-V на Windows Server 2012 R2 теперь поддерживаются два поколения виртуальных машин: поколение 1 (Generation 1) и поколение 2 (Generation 2). Виртуальные машины первого поколения (Generation 1) являлись единственным типом виртуальных машин, доступных в предыдущих версиях Hyper-V. В Hyper-V на базе Windows Server 2012 R2 при создании новой виртуальной машины теперь можно указать к какому поколению будет относиться создаваемая виртуальная машина.

Второе поколение (Generation 2) виртуальных машин Hyper-V на Windows Server 2012 r2

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

Новое поколение виртуальных машин отличается от предыдущего одним главным принципом – оно разработано специально для оптимизации работы ОС исключительно (и только) в виртуальном окружении Hyper-V. Поколение виртуальной машины определяет набор виртуального «железа» и функционал виртуальной машины. И если предыдущее поколение содержало в себе эволюционные анахронизмы, вытекающие из изначально «физической» архитектуры компьютеров, то виртуальные машины Gen 2 избавлены от этой необходимости, что дает ряд преимуществ.

Главная задача при создании любой виртуальной машины – создание надежной программной эмуляции физического оборудования, которое изначально проектировалось и разрабатывалось без учета возможностей виртуализации. Со временем в архитектуру ОС и аппаратного обеспечения компьютеров вносилось все больше и больше изменений. В результате разработчикам виртуальных платформ для того, чтобы запустить ОС в среде виртуализации, приходилось прибегать к эмуляции различного (в том числе морально устаревшего) оборудования: это BIOS, стандартные порты ввода-вывода (COM, LPT, PS/2), IDE-контроллеры, контроллеры флоппи дисков, контроллеры прерываний, мосты PCI-to-ISA и многое другое.

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

Современные ОС, которые проектируются с учетом возможностей работы в виртуальной среде, и уже на этапе загрузки могут понять, что работают внутри ВМ, и не ожидать появления контроллера прерываний или чипсета определенного типа, а напрямую общаться с гипервизором через шину VMBus. Основываясь на этих концепциях, Microsoft решила рискнуть и отказаться от необходимости эмуляции унаследованных устройств и создать для эмуляции оборудования новую платформу с минимальным набором компонентов.

Вот каким образом могут выглядеть списки эмулируемых устройств в Device Manager на ВМ Hyper-V:

1 поколения виртуальных машин Hyper-V:

устройства 1 поколения виртуальных машин Hyper-V

устройства в device manager 2 -го поколения виртуальных машин Hyper-V

2 поколения виртуальных машин Hyper-V:

Возможности виртуальных машин Hyper-V второго поколения

Какие же базовые изменения внесены в виртуальные машины Hyper-V Generation 2:

  • Поддержка UEFI— стандартный BIOS замен на firmware на базе UEFI
  • Secure Boot – как следствие первого пункта, поддержка технологии безопасной загрузки (Secure Boot), позволяющий защитить систему от руткитов и буткитов в процессе загрузки (по умолчанию, Secure Boot активна) Поддержка uefi на hyper-v в windows server 2012 r2
  • Отказ от эмуляции IDE контроллеров – взаимодействие с файлами виртуальных машин VHDX осуществляется с помощью нативных команд SCSI, что приводит к значительному увеличению производительности виртуальных машин.
  • Загрузка с виртуального SCSI или SCSI-DVD диска – виртуальный IDE-контроллер полностью «выпилен».
  • Возможность сетевой PXE загрузки с использованием синтетического сетевого адаптера, которая происходит быстрее чем при использовании Legacy Network Adapter в первом поколении виртуальных машин
  • Отсутствие Legacy устройств – остались только синтетические устройства
  • Enhanced Session Mode – новый функционал консоли управления Hyper-V, позволяющий подключаться к рабочему столу виртуальной машины непосредственно из консоли через шину VMBus (даже без наличия подключения виртуальной машины к сети). При этом администратор получает в свое распоряжение все преимущества RDP-сеанса: возможность выбора разрешения экрана, поддержку буфера обмена, смарт-карт, перенаправления USB-устройств (подробности есть тут).hyper v enhanced session mode - rdp возможности
  • Совет. За данный функционал отвечает опция Enhanced Session Mode в настройках виртуальной машины Hyper-V.

    За счет отказа от эмуляции устаревших типов оборудования существенно увеличилась скорость загрузки виртуальной машины и уменьшилось время на установку гостевой ОС. В различных тестах разница в скорости загрузки и развертывания ВМ 1 и 2 поколения достигает 20% и 50% соответственно, что особенно интересно в различных VDI сценариях.

    Примечание. В процесс работы ВМ повышение скорости работы виртуальной машины малозаметно, т.к. интеграционные компоненты Hyper-V позволяют виртуальной машины работать на максимально эффективном уровне.

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

    В качестве гостевых ОС в виртуальных машинах Hyper-V второго поколения поддерживаются:

    • Windows Server 2012
    • Windows Server 2012 R2
    • Windows 8 x64
    • Windows 8.1 x64

    Судя по всему данное ограничение связано с тем, что именно эти версии ОС поддерживают спецификацию UEFI 2.3.1 с Secure Boot.

    Важно. После создания виртуальной машины сменить поколение напрямую невозможно, что не удивительно, т.к. в одном случае используется BIOS, а в другом – UEFI (однако существуют косвенные методы миграции с помощью сторонних утилит или конвертацию V2V).

    2-ое поколение виртуальных машин Hyper-V в Windows Server 2012 R2 обеспечивает прирост производительности виртуальных машин, особенно на этапах установки и загрузки, обладает повышенной безопасностью, работает на UEFI и освобождено от необходимости поддержки эмуляции устаревшего оборудования.

    �� Онлайн-курс по устройству компьютерных сетей
    На углубленном курсе «Архитектура современных компьютерных сетей» вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

    Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

    Обновление версии виртуальной машины в Hyper-V в Windows или Windows Server

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

    • Вы обновляете узлы Hyper-V до последней версии Windows или Windows Server.
    • Вы обновляете функциональный уровень кластера.
    • Вы уверены, что вам не нужно переместить виртуальную машину обратно в узел Hyper-V, на котором выполняется предыдущая версия Windows или Windows Server.

    Дополнительные сведения см. в статье «Последовательное обновление операционной системы кластера» и последовательное обновление кластера узлов Hyper-V в VMM.

    Шаг 1. Проверка версий конфигурации виртуальной машины

    1. На рабочем столе Windows нажмите кнопку «Пуск» и введите любую часть имени Windows PowerShell.
    2. Щелкните Правой кнопкой мыши Windows PowerShell и выберите «Запуск от имени» Администратор istrator.
    3. Используйте командлет Get-VM. Выполните следующую команду, чтобы получить версии виртуальных машин.
    Get-VM * | Format-Table Name, Version 

    Вы также можете просмотреть версию конфигурации в диспетчере Hyper-V, выбрав виртуальную машину и выбрав вкладку «Сводка «.

    Шаг 2. Обновление версии конфигурации виртуальной машины

    1. Завершите работу виртуальной машины в диспетчере Hyper-V.
    2. Выберите версию конфигурации обновления действия > . Если этот параметр недоступен для виртуальной машины, он уже находится в самой высокой версии конфигурации, поддерживаемой узлом Hyper-V.

    Чтобы обновить версию конфигурации виртуальной машины с помощью Windows PowerShell, используйте командлет Update-VMVersion . Выполните следующую команду, где имя виртуальной машины — это имя виртуальной машины.

    Update-VMVersion

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

    С помощью командлета PowerShell Get-VMHostSupportedVersion можно просмотреть версии конфигурации виртуальных машин, поддерживаемые узлом Hyper-V. При создании виртуальной машины она создается с версией конфигурации по умолчанию. Чтобы узнать, какие версии конфигурации виртуальной машины поддерживает узел Hyper-V и что такое по умолчанию, выполните следующую команду.

    Get-VMHostSupportedVersion 

    Если необходимо создать виртуальную машину, которую можно переместить на узел Hyper-V, на котором запущена более ранняя версия Windows, используйте командлет New-VM с параметром -Version . Например, чтобы создать виртуальную машину с именем WindowsCV5 с конфигурацией 5.0, выполните следующую команду:

    New-VM -Name "WindowsCV5" -Version 5.0 

    Виртуальную машину можно импортировать только в том случае, если узел Hyper-V поддерживает эту версию конфигурации. Как правило, это означает, что вы можете импортировать виртуальную машину на узел Hyper-V под управлением более новой версии Hyper-V, но вы не можете импортировать виртуальную машину, созданную на более новой версии Hyper-V, в более раннюю версию Hyper-V.

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

    Поддерживаемые версии конфигурации виртуальных машин для долгосрочных узлов обслуживания

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

    Версия Windows для узла Hyper-V 10.0 9.3 9,2 9.1 9.0 8.3 8.2 8.1 8.0 7.1 7.0 6.2 5,0
    Windows Server 2022
    Windows 10 Корпоративная 2021 с долгосрочным обслуживанием
    Windows Server 2019
    Windows 10 Корпоративная LTSC 2019
    Windows Server 2016
    Windows 10 Корпоративная 2016 с долгосрочным обслуживанием
    Windows 10 Корпоративная 2015 с долгосрочным обслуживанием
    Windows Server 2012 R2
    Windows 8.1

    Поддерживаемые версии конфигурации виртуальных машин для узлов Semi-Annual Channel

    В следующей таблице перечислены версии конфигурации виртуальной машины для узлов с версией Windows с полугодовым каналом. Дополнительные сведения о версиях Windows с полугодовым каналом см. на следующих страницах windows Server и Windows.

    Версия Windows для узла Hyper-V 10.0 9.3 9,2 9.1 9.0 8.3 8.2 8.1 8.0 7.1 7.0 6.2 5,0
    Windows 11 (версия 21H2)
    Обновление Windows 10 ноября 2021 г. (версия 21H2)
    Обновление Windows 10 мая 2021 г. (версия 21H1)
    Windows Server версии 20H2
    Обновление Windows 10 за октябрь 2020 г. (версия 20H2)
    Windows Server версии 2004
    Обновление Windows 10 мая 2020 г. (версия 2004)
    Windows Server, версия 1909
    Обновление Windows 10 ноября 2019 г. (версия 1909)
    Windows Server, версия 1903
    обновление Windows 10 за май 2019 г. (версия 1903)
    Windows Server, версия 1809
    обновлении Windows 10 за октябрь 2018 г. (версия 1809);
    Windows Server версии 1803
    Windows 10, обновление за апрель 2018 г. (версия 1803)
    Windows 10 Fall Creators Update (версия 1709)
    Обновление Windows 10 Creators Update (версия 1703)
    Юбилейное обновление Windows 10 Anniversary Update (версия 1607)

    Почему следует обновить версию конфигурации виртуальной машины?

    При перемещении или импорте виртуальной машины на компьютер под управлением Hyper-V в Windows Server 2019, Windows Server 2016 или Windows 10 конфигурация виртуальной машины не обновляется автоматически. Это означает, что виртуальную машину можно переместить обратно на узел Hyper-V, на котором выполняется предыдущая версия Windows или Windows Server. Но это также означает, что некоторые из новых функций виртуальной машины нельзя использовать до тех пор, пока вы вручную не обновите версию конфигурации.

    После обновления версии конфигурации виртуальной машины вы не можете перейти на более раннюю версию.

    Версия конфигурации виртуальной машины представляет совместимость конфигурации виртуальной машины, сохраненных состояний и файлов моментальных снимков с версией Hyper-V. При обновлении версии конфигурации вы изменяете структуру файлов, которая используется для хранения конфигурации виртуальных машин и файлов проверка point. Вы также обновляете версию конфигурации до последней версии, поддерживаемой этим узлом Hyper-V. Обновленные виртуальные машины используют новый формат файлов конфигурации, который повышает эффективность чтения и записи данных. Кроме того, при обновлении снижается вероятность повреждения данных в случае ошибки хранилища.

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

    Типы файлов виртуальной машины Description
    Настройка Сведения о конфигурации виртуальной машины, хранящиеся в формате двоичного файла.
    Расширение имени файла: VMCX
    Расположение по умолчанию: C:\ProgramData\Microsoft\Windows\Hyper-V\Виртуальные машины
    Состояние среды выполнения Сведения о состоянии среды выполнения виртуальной машины, хранящиеся в двоичном формате файла.
    Расширение имени файла: .vmrs и VMGS
    Расположение по умолчанию: C:\ProgramData\Microsoft\Windows\Hyper-V\Виртуальные машины
    Виртуальный жесткий диск Хранит виртуальные жесткие диски для виртуальной машины.
    Расширение имени файла: VHD или VHDX
    Расположение по умолчанию: C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Hard Disks
    Автоматический виртуальный жесткий диск Разностные файлы дисков, используемые для проверка точек виртуальной машины.
    Расширение имени файла: AVHDX
    Расположение по умолчанию: C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Hard Disks
    Контрольная точка Контрольные точки хранятся в нескольких файлах. Каждая контрольная точка создает файл конфигурации и файл состояния среды выполнения
    Расширения имен файлов: VMRS и VMCX
    Расположение по умолчанию: C:\ProgramData\Microsoft\Windows\Snapshots

    Что произойдет, если я не обновляю версию конфигурации виртуальной машины?

    Если у вас есть виртуальные машины, созданные с более ранней версией Hyper-V, некоторые функции, доступные на более новой ОС узла, могут не работать с этими виртуальными машинами, пока не обновите версию конфигурации.

    В качестве общего руководства рекомендуется обновить версию конфигурации после успешного обновления узлов виртуализации до более новой версии Windows и убедиться, что откат не требуется. При использовании функции последовательного обновления ОС кластера это обычно происходит после обновления функционального уровня кластера. Таким образом, вы также сможете воспользоваться новыми функциями и внутренними изменениями и оптимизацией.

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

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

    Компонент Минимальная версия конфигурации виртуальной машины
    Разрешить дополнительные функции процессора для PerfMon 9.0
    Автоматическая предоставление одновременной многопоточной конфигурации для виртуальных машин, работающих на узлах с помощью основного планировщика 9.0
    Поддержка спящего режима 9.0
    Увеличьте максимальное число виртуальных устройств по умолчанию до 64 на устройство (например, сетевые и назначенные устройства). 8.3
    Поддержка безопасности на основе гостевой виртуализации (VBS) 8.0
    Диск для хранения ключей 8.0
    Виртуальные машины с большими объемами памяти 8.0
    вложенная виртуализация 8.0
    Число виртуальных процессоров 8.0
    Поддержка XSAVE 8.0
    Много очередей виртуальных машин (VMMQ) 7.1
    Виртуальный доверенный платформенный модуль (vTPM) 7.0
    Горячее добавление и удаление памяти 6.2
    PowerShell Direct 6.2
    Рабочие контрольные точки 6.2
    Безопасная загрузка виртуальных машин Linux 6.2
    Группирование виртуальных машин 6.2

    Дополнительные сведения об этих функциях см. в статье «Новые возможности Hyper-V в Windows Server».

    Should I create a generation 1 or 2 virtual machine in Hyper-V? (Следует ли создавать виртуальные машины 1-го и 2-го поколения в Hyper-V?).

    Если вы планируете когда-либо отправлять виртуальные машины Windows из локальной среды в Microsoft Azure, виртуальные машины поколения 1 и поколения 2 поддерживаются, если они используют формат VHD-файла и имеют фиксированный (не динамически расширяющийся) размер диска. Ознакомьтесь с виртуальными машинами поколения 2 в Azure , чтобы узнать больше о возможностях поколения 2, поддерживаемых в Azure. Дополнительные сведения о отправке виртуального жесткого диска Windows или VHDX см. в статье «Подготовка виртуального жесткого диска Windows или VHDX для отправки в Azure».

    Выбор для создания виртуальной машины поколения 1 или поколения 2 зависит от того, какая гостевая операционная система требуется установить, и метод загрузки, который вы хотите использовать для развертывания виртуальной машины. Рекомендуется создать виртуальную машину поколения 2, чтобы воспользоваться преимуществами таких функций, как Безопасная загрузка, если одно из следующих инструкций не имеет значения true:

    • Вы используете существующий предварительно созданный виртуальный диск (VHD или VHDX), который несовместим с UEFI.
    • Поколение 2 не поддерживает операционную систему, которую вы хотите запустить на виртуальной машине.
    • Поколение 2 не поддерживает метод загрузки, который вы хотите использовать.

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

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

    Какие гостевые операционные системы поддерживаются?

    Виртуальные машины поколения 1 поддерживают большинство гостевых операционных систем. Виртуальные машины поколения 2 поддерживают большинство 64-разрядных версий Windows и более актуальных версий операционных систем Linux и FreeBSD. Используйте следующие разделы, чтобы узнать, какое поколение виртуальных машин поддерживает гостевую операционную систему, которую вы хотите установить.

    • Поддержка гостевой операционной системы Windows
    • Поддержка гостевой операционной системы CentOS и Red Hat Enterprise Linux
    • Поддержка гостевой операционной системы Debian
    • Поддержка гостевой операционной системы FreeBSD
    • Поддержка гостевой операционной системы Oracle Linux
    • Поддержка гостевой операционной системы SUSE
    • Поддержка гостевой операционной системы Ubuntu

    Поддержка гостевой операционной системы Windows

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

    64-разрядные версии Windows 1-го поколения 2-е поколение
    Windows Server 2022
    Windows Server 2019
    Windows Server 2016
    Windows Server 2012 R2
    Windows Server 2012
    Windows Server 2008 R2
    Windows Server 2008
    Windows 11
    Windows 10
    Windows 8.1
    Windows 8
    Windows 7

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

    32-разрядные версии Windows 1-го поколения 2-е поколение
    Windows 10
    Windows 8.1
    Windows 8
    Windows 7

    Поддержка гостевой операционной системы CentOS и Red Hat Enterprise Linux

    В следующей таблице показаны версии Red Hat Enterprise Linux (RHEL) и CentOS, которые можно использовать в качестве гостевой операционной системы для виртуальных машин поколения 1 и поколения 2.

    Версии операционной системы 1-го поколения 2-е поколение
    Серия RHEL/CentOS 8.x
    Серия RHEL/CentOS 7.x
    Серия RHEL/CentOS 6.x
    Примечание. Поддерживается только в Windows Server 2016 и более поздних версиях.
    Серия RHEL/CentOS 5.x

    Поддержка гостевой операционной системы Debian

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

    Версии операционной системы 1-го поколения 2-е поколение
    Серия Debian 10.x (бюстер)
    Серия Debian 9.x (stretch)
    Серия Debian 8.x (jessie)
    Серия Debian 7.x (wheezy)

    Поддержка гостевой операционной системы FreeBSD

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

    Версии операционной системы 1-го поколения 2-е поколение
    FreeBSD 12–12.1
    FreeBSD 11.1 –11.3
    FreeBSD 11
    FreeBSD 10–10.3
    FreeBSD 9.1 и 9.3
    FreeBSD 8.4

    Поддержка гостевой операционной системы Oracle Linux

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

    Версии серии ядер, совместимых с Red Hat 1-го поколения 2-е поколение
    Серия Oracle Linux 8.x
    Серия Oracle Linux 7.x
    Серия Oracle Linux 6.x

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

    Неразрывные версии корпоративного ядра (UEK) 1-го поколения 2-е поколение
    Oracle Linux UEK R3 QU3
    Oracle Linux UEK R3 QU2
    Oracle Linux UEK R3 QU1

    Поддержка гостевой операционной системы SUSE

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

    Версии операционной системы 1-го поколения 2-е поколение
    Серия SUSE Linux Enterprise Server 15
    Серия SUSE Linux Enterprise Server 12
    Серия SUSE Linux Enterprise Server 11
    Открытие SUSE 12.3

    Поддержка гостевой операционной системы Ubuntu

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

    Версии операционной системы 1-го поколения 2-е поколение
    Ubuntu 20.04
    Ubuntu 18.04
    Ubuntu 16.04
    Ubuntu 14.04
    Ubuntu 12.04

    Как загрузить виртуальную машину?

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

    Метод загрузки 1-го поколения 2-е поколение
    PXE-загрузка с помощью стандартного сетевого адаптера;
    Загрузка PXE с помощью устаревшего сетевого адаптера
    Загрузка с виртуального жесткого диска SCSI (). VHDX) или виртуальный DVD-диск (. ISO)
    Загрузка с виртуального жесткого диска контроллера IDE (). VHD), виртуальный DVD-диск (. ISO) или физический диск CD/DVD
    Загрузка из виртуального floppy (. VFD)

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

    Ниже приведены некоторые преимущества, которые вы получаете при использовании виртуальной машины поколения 2:

    • Безопасная загрузка Это функция, которая проверяет, что загрузчик подписан доверенным центром в базе данных UEFI, чтобы предотвратить несанкционированное выполнение встроенного ПО, операционных систем или драйверов UEFI во время загрузки. В виртуальных машинах поколения 2 безопасная загрузка включена по умолчанию. Если вам нужно запустить гостевую операционную систему, которая не поддерживается безопасной загрузкой, ее можно отключить после создания виртуальной машины. Дополнительные сведения см. в статье Безопасная загрузка. Чтобы защитить виртуальные машины Linux поколения 2, необходимо выбрать шаблон безопасной загрузки ЦС UEFI при создании виртуальной машины.
    • Максимальный объем загрузки для виртуальных машин поколения 2 — 64 ТБ. Это максимальный размер диска, поддерживаемый параметром . VHDX. Для виртуальных машин поколения 1 максимальный объем загрузки составляет 2 ТБ. VHDX и 2040 ГБ для . VHD. Дополнительные сведения см. в разделе «Обзор формата виртуального жесткого диска Hyper-V». Вы также можете увидеть небольшое улучшение времени загрузки и установки виртуальной машины с виртуальными машинами поколения 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.

    Подключение или добавление DVD-диска

    • Вы не можете подключить физический компакт-диск или DVD-диск к виртуальной машине поколения 2. Виртуальный DVD-дисковод в виртуальных машинах поколения 2 поддерживает только файлы ISO-образов. Чтобы создать ISO-файл образа среды Windows, можно использовать средство командной строки OScdimg . Дополнительные сведения см. в разделе Параметры командной строки Oscdimg.
    • При создании новой виртуальной машины с помощью командлета New-VM Windows PowerShell виртуальная машина поколения 2 не имеет DVD-диска. Вы можете добавить DVD-диск во время работы виртуальной машины.

    Использование встроенного ПО UEFI

    • Безопасная загрузка или встроенное ПО UEFI не требуются на физическом узле Hyper-V. Hyper-V предоставляет виртуальные встроенное ПО виртуальным машинам, которые не зависят от того, что находится на узле Hyper-V.
    • Встроенное ПО UEFI в виртуальной машине поколения 2 не поддерживает режим установки для безопасной загрузки.
    • Мы не поддерживаем запуск оболочки UEFI или других приложений UEFI в виртуальной машине поколения 2. Использование оболочки UEFI или приложений UEFI, отличных от Майкрософт, технически возможно, если они компилируются непосредственно из источников. Если эти приложения не соответствуют цифровой подписи, необходимо отключить безопасную загрузку для виртуальной машины.

    Работа с файлами VHDX

    • Вы можете изменить размер VHDX-файла, содержащего загрузочный том для виртуальной машины поколения 2 во время работы виртуальной машины.
    • Мы не поддерживаем или рекомендуем создать один виртуальный диск (VHD или VHDX-файл), который можно загрузить как для виртуальных машин поколения 1, так и поколения 2. Вместо этого создайте загрузочные файлы VHDX, предназначенные только для виртуальных машин поколения 1 или поколения 2.
    • Поколение виртуальной машины — это свойство виртуальной машины, а не виртуального жесткого диска. Поэтому невозможно определить, был ли VHDX-файл создан виртуальной машиной поколения 1 или поколения 2.
    • VHDX-файл, созданный с виртуальной машиной поколения 2, можно подключить к контроллеру интегрированной среды разработки или контроллеру SCSI виртуальной машины поколения 1. Однако если это загрузочный VHDX-файл, виртуальная машина поколения 1 не загрузится.

    Использование IPv6 вместо IPv4

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

    Set-VMFirmware -VMName 'TestVM' -IPProtocolPreference IPv6 

    Добавление COM-порта для отладки ядра

    COM-порты недоступны в виртуальных машинах поколения 2, пока не добавите их. Это можно сделать с помощью Windows PowerShell или инструментария управления Windows (WMI). В этих шагах показано, как это сделать с помощью Windows PowerShell.

    Чтобы добавить COM-порт, выполните приведенные действия.

      Отключите безопасную загрузку. Отладка ядра несовместима с безопасной загрузкой. Убедитесь, что виртуальная машина находится в состоянии off, а затем используйте командлет Set-VMFirmware . Например, следующая команда отключает безопасную загрузку на виртуальной машине TestVM:

    Set-VMFirmware -VMName 'TestVM' -EnableSecureBoot Off 
    Set-VMComPort -VMName 'TestVM' -Number 1 -Path '\\.\pipe\TestPipe' 

    Настроенные com-порты не перечислены в параметрах виртуальной машины в диспетчере Hyper-V.

    См. также

    • Supported Linux and FreeBSD virtual machines for Hyper-V on Windows (Поддерживаемые виртуальные машины Linux и FreeBSD для Hyper-V в Windos).
    • Use local resources on Hyper-V virtual machine with VMConnect (Использование локальных ресурсов на виртуальной машине с VMConnect)
    • Планирование масштабируемости Hyper-V в Windows Server 2016

    Конвертация виртуальных машин Hyper-V во 2-е поколение

    img

    Начиная с Windows Server 2012 R2 в Hyper-v появились машины второго поколения. Они добавляют некоторые преимущества по сравнению с виртуальными машинами первого поколения, поэтому следует подумать о переходе. Хотя автоматического преобразования не существует, есть способ избежать новой установки и настройки виртуальной машины.

    Конвертация виртуальных машин Hyper-V во 2-е поколение

    Есть несколько причин, по которым рабочие системы до сих пор работают на виртуальных машинах первого поколения. Часто они существуют уже несколько лет и были созданы в версии Hyper-V, которая поддерживает только виртуальные машины 1-го поколения. Их по-прежнему можно использовать в более новой версии гипервизора, и они полностью поддерживаются.

    И наоборот, также возможно, что версия Windows была изначально установлена на виртуальной машине, которая поддерживает только виртуальные машины 1-го поколения. Гостевая ОС, возможно, за это время была обновлена, но функции 2-го поколения в старой виртуальной машине заблокированы.

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

    Может случиться и так, что Gen 1 будет случайно выбран при создании виртуальной машины, поскольку это по-прежнему выбирается по умолчанию в диспетчере Hyper-V.

    Преимущества 2 поколения

    Одним из наиболее важных преимуществ новых виртуальных машин является более высокая производительность, поскольку гостевая ОС «знает», что она работает на гипервизоре, и, следовательно, не требует эмуляции оборудования. Виртуальные машины второго поколения обладают поддержкой UEFI, работают под управлением только 64-разрядной гостевой ОС, могут загружаться с виртуального контроллера SCSI. Подключенные к контроллеру виртуальные жесткие диски можно добавлять, удалять и изменять их размер во время работы. Сетевые адаптеры также могут быть добавлены во время работы системы.

    Если вы хотите настроить виртуальную машину с UEFI, вы можете сделать это только с виртуальной машиной поколения 2, т.е. безопасная загрузка доступна только в ней. Виртуальные машины поколения 1 поддерживают только BIOS и, следовательно, ограничены структурой MBR дисков и это основное препятствие при миграции.

    Параметры Безопасности виртуальной машины Hyper-v 2-го поколения

    Поиск старых виртуальных машин

    Первым шагом будет обзор того, какие виртуальные машины относятся к Gen 1 (Поколение 1). С помощью PowerShell это относительно легко узнать:

    Get-VM | select vmname, generation

    Эта команда выведет вам список всех виртуальных машин на локальном хосте, их имена и поколение.

    Список всех виртуальных машин на локальном хосте, включая имя и поколение

    По сути, теперь вы можете приступить к преобразованию старых виртуальных машин. Однако это невозможно, если гостевая ОС старше Windows Server 2012 R2 или имеет 32-разрядную версию.

    Следовательно, вам необходимо выяснить, какая ОС установлена на виртуальной машине. Это можно относительно легко определить через PowerShell:

    Get-ComputerInfo -Property WindowsProductName, OsArchitecture

    Определение имени и разрядности гостевой ОС через Get-ComputerInfo

    Изменение таблицы разделов на GPT

    После того как вы определили, какие виртуальные машины подходят для преобразования, вам следует сначала обновить гостевую ОС до версии Windows, которую вы запланировали для новой среды.

    Затем преобразовать системный диск в GPT. Начиная с Windows 10 1703, Microsoft предоставляет для этой цели MBR2GPT.exe . Программа запускается на рабочей системе со следующими параметрами:

    mbr2gpt.exe /convert /allowFullOS

    Утилита находится в %SystemRoot%system32 и может быть легко скопирована на другие компьютеры, если ее там нет. Это относится, например, и к серверам Windows.

    Однако в случае более старых версий ОС Microsoft рекомендует выключить виртуальную машину, загрузиться в среду предустановки Windows и начать преобразование в GPT оттуда. Тогда команда выглядит немного иначе:

    mbr2gpt.exe /convert /disk:

    Номера дисков можно посмотреть программой diskpart с помощью:

    list disk

    Перенос виртуального диска на новую виртуальную машину

    Поскольку преобразовать виртуальную машину поколения 1 в поколение 2 невозможно, теперь необходимо создать новую виртуальную машину Gen 2 и подключить к ней виртуальный жесткий диск. Одним из побочных эффектов этого действия является то, что оно также поднимает версию виртуальной машины до текущего уровня. Это необходимо, чтобы воспользоваться преимуществами новых функций Hyper-V, доступных в Server 2016 или 2019. Новая виртуальная машина больше не будет работать на более старом гипервизоре.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *