Hyper-V — виртуальная машина от Майкрософт
Hyper-V — виртуальная машина от Майкрософт, созданная на основе гипервизора, с аппаратной поддержкой виртуализации для 64 битных систем. Ранее гипервизор использовался только в серверных операционных системах Microsoft.
Microsoft Hyper-V работает только на 64 битных операционных системах Windows, в редакциях Pro (Профессиональная) и Enterprise (Корпоративная), в операционных системах Windows 8, Windows 8.1, Windows 10, а также в серверных операционных системах (Windows Server).
В редакциях указанных операционных систем присутствует компонент Hyper-V, отключенный по умолчанию. Пользователь может включить виртуальную машину Hyper-V, не устанавливая на свой компьютер посторонние программы для виртуализации (например, VirtualBox).
Гипервизор Hyper-V
Виртуальный гипервизор (Hyper-V) позволяет создать виртуальную машину для установки гостевой операционной системы. Используя виртуальную гостевую операционную систему, можно знакомиться с работой в новой операционной системе, тестировать настройки, экспериментировать, устанавливать незнакомые программы и т. д. Все эти действия никак не повлияют на работу и настройки реальной операционной системы, установленной на компьютере.
Гипервизор изначально создан для серверных операционных систем, поэтому работа в виртуальной машине Hyper-V имеет некоторые ограничения: отсутствует поддержка звуковых карт и записи CD/DVD дисков, в приложении имеются ограниченные, по сравнению с конкурентами, параметры визуальных настроек, нет возможности прямого копирования или вставки файлов между реальной и гостевой системами и т. д.
Для тестирования это не самое главное, поэтому более аскетические настройки Hyper-V, для некоторых пользователей будут более по душе, чем подобные настройки у более продвинутых конкурентов.
Имейте в виду, что при одновременной работе реальной (хостовой) и гостевой операционных систем, потребляются ресурсы одного компьютера, поэтому не стоит пробовать работу в виртуальной машине на слабом компьютере. Во время работы в виртуальной ОС, не используйте на реальном компьютере ресурсоемкие приложения для того, чтобы не тормозить работу компьютера.
В статье будет рассмотрена установка и настройка Hyper-V в операционной системе Windows 10. В Windows 8.1 или в Windows 8 настройки производятся подобным образом.
Установка Hyper-V
Сначала необходимо включить компонент Hyper-V. Войдите в «Панель управления», далее «Программы и компоненты», нажмите на «Включение или отключение компонентов Windows».
В окне «Компоненты Windows» поставьте галку напротив «Hyper-V», а затем нажмите на кнопку «ОК».
После поиска требуемых файлов и применения изменений, необходимо перезагрузить компьютер.
В меню «Пуск», в папке «Средства администрирования Windows», вы увидите классическое приложение Диспетчер Hyper-V. Запустите программу на компьютере.

В окне приложения нажмите на имя компьютера, справа откроется колонка со списком команд, которые доступны из меню «Действия».

Теперь можно настроить соединение с интернетом.
Нажмите на пункт «Диспетчер виртуальных коммутаторов». В следующем окне, в разделе «Создать виртуальный коммутатор» выберите тип коммутатора «Внешняя», а затем нажмите на кнопку «Создать виртуальный коммутатор».

Далее в пункте «Внешняя сеть» придумайте имя для виртуального коммутатора, затем из списка доступных сетевых адаптеров, выберите адаптер, используемый для подключения к интернету на вашем компьютере. После выбора настроек, нажмите на кнопку «ОК».

В открывшемся окне с предупреждением, согласитесь на применение изменений на компьютере.
Создание виртуальной машины Hyper-V
Для запуска процесса создания виртуальной машины, пройдите по пути: меню «Действие», «Создать», «Виртуальная машина…». Далее откроется мастер создания виртуальной машины.
В первом окне «Приступая к работе» нажмите на кнопку «Далее». В следующем окне «Укажите имя и местонахождение» дайте понятное имя для создаваемой виртуальной машины (я назвал «Windows 7×64»), и выберите место для ее сохранения.
По умолчанию, файлы виртуальной машины сохраняются на диске «С» в папке «ProgramData»:
На моем компьютере виртуальные машины сохраняются не на системном, а на другом диске в специальной папке («Virtual Machines»). Поэтому, если вы хотите сохранить виртуальную машину не в папке по умолчанию, поставьте галку напротив пункта «Сохранить виртуальную машину в другом месте», а затем выберите папку для сохранения. Папку для хранения файлов виртуальной машины создайте заранее.

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

В окне «Выделите память» необходимо выбрать объем выделяемой памяти для этой виртуальной машины. Я выделил 2 ГБ памяти со своего компьютера из 8 ГБ.

В следующем окне «Настройка сети» выберите ранее созданный сетевой адаптер (виртуальный коммутатор).

В окне «Подключить виртуальный жесткий диск» отобразится информация об имени виртуальной машины, о ее расположении на жестком диске, объем дискового пространства, выделяемого для виртуальной машины (по умолчанию предлагалось 127 ГБ, я выбрал — 50 ГБ).

В окне «Параметры установки» можно выбрать вариант установки операционной системы: установить позднее или выбрать предпочтительный вариант установки.
Для установки ОС выберите пункт «Установить операционную систему с загрузочного компакт- или DVD-диска». Здесь выберите «Физический CD или DVD-диск» для установки системы с диска, помещенного в оптический привод, или выберите «Файл образа (.iso)» для установки операционной системы непосредственно с ISO образа ОС, который находится на компьютере.
При помощи кнопки «Обзор…» я выбрал образ операционной системы Windows 7 Максимальная SP1 x64, расположенный на внешнем жестком диске, который в данный момент подключен к моему компьютеру.

В окне «Завершение работы мастера создания виртуальной машины» отображена конфигурация созданной виртуальной машины. Нажмите на кнопку «Готово» для завершения создания ВМ.

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

Для запуска процесса установки, выделите виртуальную машину, в контекстном меню выберите «Подключить…».
В открывшемся окне войдите в меню «Действие», выберите команду «Пуск», или просто нажмите на зеленую кнопку «Пуск».

Далее в окне виртуальной машины Windows Hyper-V начнется процесс установки операционной системы на компьютер, в данном случае Windows 7.
На моем сайте вы можете прочитать подробные статьи о процессе установки операционных систем Windows.
После завершения установки операционной системы, гостевая ОС готова к работе. На этом изображении видно, что на моем (хостовом) компьютере работает операционная система Windows 10, а в окне запущена виртуальная машина Hyper-V с операционной системой Windows 7.

В виртуальной машине можно создавать снимки виртуальной системы (контрольные точки) для того, чтобы сохранить состояние операционной системы на определенный период времени.
Создать контрольную точку можно из окна приложения, Управлять контрольными точками (восстановить состояние виртуальной машины, удалить ненужные точки) можно из раздела «Контрольные точки» в Диспетчере Hyper-V.
Обмен файлами в Hyper-V
В виртуальной машине Hyper-V не работает перетаскивание и копирование файлов между физической и виртуальной операционными системами так, как это реализовано в VMware Workstation или в VirtualBox. Обмен данными между гостевой и установленной на ПК системами, можно реализовать с помощью общих сетевых папок.
Создайте и настройте в реальной операционной системе общую папку для доступа к общей папке из виртуальной системы. Затем создайте и настройте общую папку на виртуальной машине для доступа к общей папке с реальной системы. Как это сделать, читайте в статье на этом сайте.
После завершения настроек вы можете обмениваться данными по сети, передавая файлы с компьютера в общую папку на виртуальной машине, или в обратном порядке, с виртуальной машины в общую папку, расположенную в операционной системе на компьютере.
Выводы статьи
Виртуальная машина Hyper-V от Microsoft встроена в редакции Pro и Enterprise в 64 битных операционных системах Windows 10, Windows 8.1, Windows 8. После установки и настройки гипервизора Hyper-V, создайте и установите виртуальную машину с гостевой операционной системой для тестирования программного обеспечения, которая не затрагивает основную операционную систему, установленную на компьютере.
Архитектура Hyper-V: Глубокое погружение

Hyper-V – это одна из технологий виртуализации серверов, позволяющая запускать на одном физическом сервере множество виртуальных ОС. Эти ОС именуются «гостевыми», а ОС, установленная на физическом сервере – «хостовой». Каждая гостевая операционная система запускается в своем изолированном окружении, и «думает», что работает на отдельном компьютере. О существовании других гостевых ОС и хостовой ОС они «не знают».
Эти изолированные окружения именуются «виртуальными машинами» (или сокращенно — ВМ). Виртуальные машины реализуются программно, и предоставляют гостевой ОС и приложениям доступ к аппаратным ресурсам сервера посредством гипервизора и виртуальных устройств. Как уже было сказано, гостевая ОС ведет себя так, как будто полностью контролирует физический сервер, и не имеет представления о существовании других виртуальных машин. Так же эти виртуальные окружения могут именоваться «партициями» (не путать с разделами на жестких дисках).
Впервые появившись в составе Windows Server 2008, ныне Hyper-V существует в виде самостоятельного продукта Hyper-V Server (де-факто являющегося сильно урезанной Windows Server 2008), и в новой версии – R2 – вышедшего на рынок систем виртуализации Enterprise-класса. Версия R2 поддерживает некоторые новые функции, и речь в статье пойдет именно об этой версии.
Гипервизор
Термин «гипервизор» уходит корнями в 1972 год, когда компания IBM реализовала виртуализацию в своих мэйнфреймах System/370. Это стало прорывом в ИТ, поскольку позволило обойти архитектурные ограничения и высокую цену использования мэйнфреймов.
Гипервизор – это платформа виртуализации, позволяющая запускать на одном физическом компьютере несколько операционных систем. Именно гипервизор предоставляет изолированное окружение для каждой виртуальной машины, и именно он предоставляет гостевым ОС доступ к аппаратному обеспечению компьютера.
Гипервизоры можно разделить на два типа по способу запуска (на «голом железе» или внутри ОС) и на два типа по архитектуре (монолитная и микроядерная).
Гипервизор 1 рода
Гипервизор 1 типа запускается непосредственно на физическом «железе» и управляет им самостоятельно. Гостевые ОС, запущенные внутри виртуальных машин, располагаются уровнем выше, как показано на рис.1.
Рис.1 Гипервизор 1 рода запускается на «голом железе».
- Microsoft Hyper-V
- VMware ESX Server
- Citrix XenServer
Гипервизор 2 рода
В отличие от 1 рода, гипервизор 2 рода запускается внутри хостовой ОС (см. рис.2).
Рис.2 Гипервизор 2 рода запускается внутри гостевых ОС
Виртуальные машины при этом запускаются в пользовательском пространстве хостовой ОС, что не самым лучшим образом сказывается на производительности.
Примерами гипервизоров 2 рода служат MS Virtual Server и VMware Server, а так же продукты десктопной виртуализации – MS VirtualPC и VMware Workstation.
Монолитный гипервизор
Гипервизоры монолитной архитектуры включают драйверы аппаратных устройств в свой код (см. рис. 3).
Рис. 3. Монолитная архитектура
- Более высокую (теоретически) производительность из-за нахождения драйверов в пространстве гипервизора
- Более высокую надежность, так как сбои в работе управляющей ОС (в терминах VMware – «Service Console») не приведет к сбою всех запущенных виртуальных машин.
- Поддерживается только то оборудование, драйверы на которое имеются в гипервизоре. Из-за этого вендор гипервизора должен тесно сотрудничать с вендорами оборудования, чтобы драйвера для работы всего нового оборудования с гипервизором вовремя писались и добавлялись в код гипервизора. По той же причине при переходе на новую аппаратную платформу может понадобиться переход на другую версию гипервизора, и наоборот – при переходе на новую версию гипервизора может понадобиться смена аппаратной платформы, поскольку старое оборудование уже не поддерживается.
- Потенциально более низкая безопасность – из-за включения в гипервизор стороннего кода в виде драйверов устройств. Поскольку код драйверов выполняется в пространстве гипервизора, существует теоретическая возможность воспользоваться уязвимостью в коде и получить контроль как над хостовой ОС, так и над всеми гостевыми.
Микроядерная архитектура
При микроядерной архитектуре драйверы устройств работают внутри хостовой ОС.
Хостовая ОС в этом случае запускается в таком же виртуальном окружении, как и все ВМ, и именуется «родительской партицией». Все остальные окружения, соответственно – «дочерние». Единственная разница между родительской и дочерними партициями состоит в том, что только родительская партиция имеет непосредственный доступ к оборудованию сервера. Выделением памяти же и планировкой процессорного времени занимается сам гипервизор.
Рис. 4. Микроядерная архитектура
- Не требуются драйвера, «заточенные» под гипервизор. Гипервизор микроядерной архитектуры совместим с любым оборудованием, имеющим драйверы для ОС родительской партиции.
- Поскольку драйверы выполняются внутри родительской партиции – у гипервизора остается больше времени на более важные задачи – управление памятью и работу планировщика.
- Более высокая безопасность. Гипервизор не содержит постороннего кода, соответственно и возможностей для атаки на него становится меньше.
Архитектура Hyper-V
На рис.5 показаны основные элементы архитектуры Hyper-V.
Рис.5 Архитектура Hyper-V
Как видно из рисунка, гипервизор работает на следующем уровне после железа – что характерно для гипервизоров 1 рода. Уровнем выше гипервизора работают родительская и дочерние партиции. Партиции в данном случае – это области изоляции, внутри которых работают операционные системы. Не нужно путать их, к примеру, с разделами на жестком диске. В родительской партиции запускается хостовая ОС (Windows Server 2008 R2) и стек виртуализации. Так же именно из родительской партиции происходит управление внешними устройствами, а так же дочерними партициями. Дочерние же партиции, как легко догадаться – создаются из родительской партиции и предназначены для запуска гостевых ОС. Все партиции связаны с гипервизором через интерфейс гипервызовов, предоставляющий операционным системам специальный API. Если кого-то из разработчиков интересуют подробности API гипервызовов — информация имеется в MSDN.
Родительская партиция
- Создание, удаление и управление дочерними партициями, в том числе и удаленное, посредством WMI-провайдера.
- Управление доступом к аппаратным устройствам, за исключением выделения процессорного времени и памяти – этим занимается гипервизор.
- Управление питанием и обработка аппаратных ошибок, если таковые возникают.
Рис.6 Компоненты родительской партиции Hyper-V
Стек виртуализации
- Служба управления виртуальными машинами (VMMS)
- Рабочие процессы виртуальных машин (VMWP)
- Виртуальные устройства
- Драйвер виртуальной инфраструктуры (VID)
- Библиотека интерфейсов гипервизора
- Управление состоянием виртуальных машин (включено/выключено)
- Добавление/удаление виртуальных устройств
- Управление моментальными снимками
- Starting
- Active
- Not Active
- Taking Snapshot
- Applying Snapshot
- Deleting Snapshot
- Merging Disk
Рабочий процесс виртуальной машины (VMWP)
Для управления виртуальной машиной из родительской партиции запускается особый процесс – рабочий процесс виртуальной машины (VMWP). Процесс этот работает на уровне пользователя. Для каждой запущенной виртуальной машины служба VMMS запускает отдельный рабочий процесс. Это позволяет изолировать виртуальные машины друг от друга. Для повышения безопасности, рабочие процессы запускаются под встроенным пользовательским аккаунтом Network Service.
Процесс VMWP используется для управления соответствующей виртуальной машиной. В его задачи входит:
Создание, конфигурация и запуск виртуальной машины
Пауза и продолжение работы (Pause/Resume)
Сохранение и восстановление состояния (Save/Restore State)
Создание моментальных снимков (снапшотов)
Кроме того, именно рабочий процесс эмулирует виртуальную материнскую плату (VMB), которая используется для предоставления памяти гостевой ОС, управления прерываниями и виртуальными устройствами.
Виртуальные устройства
- Эмулируемые устройства – эмулируют определенные аппаратные устройства, такие, к примеру, как видеоадаптер VESA. Эмулируемых устройств достаточно много, к примеру: BIOS, DMA, APIC, шины ISA и PCI, контроллеры прерываний, таймеры, управление питанием, контроллеры последовательных портов, системный динамик, контроллер PS/2 клавиатуры и мыши, эмулируемый (Legacy) Ethernet-адаптер (DEC/Intel 21140), FDD, IDE-контроллер и видеоадаптер VESA/VGA. Именно поэтому для загрузки гостевой ОС может использоваться только виртуальный IDE-контроллер, а не SCSI, который является синтетическим устройством.
- Синтетические устройства – не эмулируют реально существующие в природе железки. Примерами служат синтетический видеоадаптер, устройства взаимодействия с человеком (HID), сетевой адаптер, SCSI-контроллер, синтетический контроллер прерывания и контроллер памяти. Синтетические устройства могут использоваться только при условии установки компонент интеграции в гостевой ОС. Синтетические устройства обращаются к аппаратным устройствам сервера посредством провайдеров служб виртуализации, работающих в родительской партиции. Обращение идет через виртуальную шину VMBus, что намного быстрее, чем эмуляция физических устройств.
Драйвер виртуальной инфраструктуры (VID)
Драйвер виртуальной инфраструктуры (vid.sys) работает на уровне ядра и осуществляет управление партициями, виртуальными процессорами и памятью. Так же этот драйвер является промежуточным звеном между гипервизором и компонентами стека виртуализации уровня пользователя.
Библиотека интерфейса гипервизора
Библиотека интерфейса гипервизора (WinHv.sys) – это DLL уровня ядра, которая загружается как в хостовой, так и в гостевых ОС, при условии установки компонент интеграции. Эта библиотека предоставляет интерфейс гипервызовов, использующийся для взаимодействия ОС и гипервизора.
Провайдеры служб виртуализации (VSP)
Провайдеры служб виртуализации работают в родительской партиции и предоставляют гостевым ОС доступ к аппаратным устройствам через клиент служб виртуализации (VSC). Связь между VSP и VSC осуществляется через виртуальную шину VMBus.
Шина виртуальных машин (VMBus)
Назначение VMBus состоит в предоставлении высокоскоростного доступа между родительской и дочерними партициями, в то время как остальные способы доступа значительно медленнее из-за высоких накладных расходах при эмуляции устройств.
Если гостевая ОС не поддерживает работу интеграционных компонент – приходится использовать эмуляцию устройств. Это означает, что гипервизору приходится перехватывать вызовы гостевых ОС и перенаправлять их к эмулируемым устройствам, которые, напоминаю, эмулируются рабочим процессом виртуальной машины. Поскольку рабочий процесс запускается в пространстве пользователя, использование эмулируемых устройств приводит к значительному снижению производительности по сравнению с использованием VMBus. Именно поэтому рекомендуется устанавливать компоненты интеграции сразу же после установки гостевой ОС.
Как уже было сказано, при использовании VMBus взаимодействие между хостовой и гостевой ОС происходит по клиент-серверной модели. В родительской партиции запущены провайдеры служб виртуализации (VSP), которые являются серверной частью, а в дочерних партициях – клиентская часть – VSC. VSC перенаправляет запросы гостевой ОС через VMBus к VSP в родительской партиции, а сам VSP переадресовывает запрос драйверу устройства. Этот процесс взаимодействия абсолютно прозрачен для гостевой ОС.
Дочерние партиции
Вернемся к нашему рисунку с архитектурой Hyper-V, только немного сократим его, поскольку нас интересуют лишь дочерние партиции.
Рис. 7 Дочерние партиции
- ОС Windows, с установленными компонентами интеграции (в нашем случае – Windows 7)
- ОС не из семейства Windows, но поддерживающая компоненты интеграции (Red Hat Enterprise Linux в нашем случае)
- ОС, не поддерживающие компоненты интеграции (например, FreeBSD).
ОС Windows с установленными компонентами интеграции
- Клиенты служб виртуализации. VSC представляют собой синтетические устройства, позволяющие осуществлять доступ к физическим устройствам посредством VMBus через VSP. VSC появляются в системе только после установки компонент интеграции, и позволяют использовать синтетические устройства. Без установки интеграционных компонент гостевая ОС может использовать только эмулируемые устройства. ОС Windows 7 и Windows Server 2008 R2 включает в себя компоненты интеграции, так что их не нужно устанавливать дополнительно.
- Улучшения. Под этим имеются в виду модификации в коде ОС чтобы обеспечить работу ОС с гипервизором и тем самым повысить эффективность ее работы в виртуальной среде. Эти модификации касаются дисковой, сетевой, графической подсистем и подсистемы ввода-вывода. Windows Server 2008 R2 и Windows 7 уже содержат в себе необходимые модификации, на другие поддерживаемые ОС для этого необходимо установить компоненты интеграции.
- Heartbeat – помогает определить, отвечает ли дочерняя партиция на запросы из родительской.
- Обмен ключами реестра – позволяет обмениваться ключами реестра между дочерней и родительской партицией.
- Синхронизация времени между хостовой и гостевой ОС
- Завершение работы гостевой ОС
- Служба теневого копирования томов (VSS), позволяющая получать консистентные резервные копии.
ОС не из семейства Windows, но поддерживающая компоненты интеграции
Существуют так же ОС, не относящиеся к семейству Windows, но поддерживающие компоненты интеграции.На данный момент – это только SUSE Linux Enterprise Server и Red Hat Enterprise Linux. Такие ОС при установке компонент интеграции используют VSC сторонних разработчиков для взаимодействия с VSC по VMBus и доступа к оборудованию. Компоненты интеграции для Linux разработаны компанией Microsoft совместно с Citrix и доступны для загрузки в Microsoft Download Center. Поскольку компоненты интеграции для Linux были выпущены под лицензией GPL v2, ведутся работы по интеграции их в ядро Linux через Linux Driver Project, что позволит значительно расширить список поддерживаемых гостевых ОС.
Вместо заключения
На этом я, пожалуй, закончу свою вторую статью, посвященную архитектуре Hyper-V. Предыдущая статья вызвала у некоторых читателей вопросы, и надеюсь, что теперь я на них ответил.
Надеюсь, что чтение не было слишком скучным. Я достаточно часто использовал «академический язык», но это было необходимо, поскольку тематика статьи предполагает очень большой объем теории и практически нуль целых нуль десятых практики.
Выражаю огромную благодарность Mitch Tulloch и Microsoft Virtualization Team. На основе их книги Understanding Microsoft Virtualization Solutions и была подготовлена статья.
Microsoft Hyper-V: Установка и настройка на Windows 10.

Технология виртуализации Microsoft Hyper-V — это система встроенной аппаратной виртуализации предоставляющая гостевым системам прямой доступ без участия промежуточных виртуальных драйверов, замедляющих работу, к устройствам компьютера: диск, память, процессор и так далее.
Технология виртуализации Hyper-V включена во многие версии Windows 10. Hyper-V позволяет запускать виртуализированные компьютерные системы поверх физического узла. Эти виртуализированные системы можно использовать и контролировать как физические компьютерные системы, но они находятся в виртуализированной и изолированной среде. Специальное программное обеспечение, называемое низкоуровневой оболочкой, управляет доступом между виртуальными системами и физическими аппаратными ресурсами. Виртуализация обеспечивает быстрое развертывание компьютерных систем, быстрое восстановление системы до предыдущего рабочего состояния и возможность миграции систем между физическими узлами.
В частности, Hyper-V предоставляет возможность выполнять виртуализацию оборудования. Это означает, что каждая виртуальная машина работает на виртуальном оборудовании. Hyper-V позволяет создавать виртуальные жесткие диски, виртуальные коммутаторы и ряд других виртуальных устройств, каждое из которых можно добавить в виртуальную машину.
Механизм Hyper-V встроен в Windows 10 в качестве дополнительной функции. Скачать Hyper-V нельзя.
Виртуализация позволяет выполнять следующие операции:
- Запуск программного обеспечения, для которого требуются более старые версии Windows или операционные системы, отличные от Windows.
- Эксперименты с другими операционными системами. Hyper-V существенно упрощает создание и удаление различных операционных систем.
- Тестирование программного обеспечения в нескольких операционных системах с помощью нескольких виртуальных машин. Благодаря Hyper-V их можно запускать на настольном компьютере или ноутбуке. Эти виртуальные машины можно экспортировать, а затем импортировать в любую другую систему Hyper-V, включая Azure.
Microsoft Azure – облачная платформа компании Microsoft. Предоставляет возможность разработки, выполнения приложений и хранения данных на серверах, расположенных в распределённых дата-центрах.
Системные требования:
Hyper-V доступен в 64-разрядных версиях Windows 10: профессиональная, корпоративная и для образовательных учреждений. Он недоступен в версии Windows 10: домашняя.
Большинство компьютеров работают под управлением Hyper-V, однако каждая виртуальная машина работает под управлением полностью отдельной операционной системы. Как правило, на компьютере с 4 ГБ ОЗУ можно запустить одну или несколько виртуальных машин, однако для запуска дополнительных виртуальных машин либо установки и запуска ресурсоемкого программного обеспечения, такого как: игры, видеоредакторы или программы для технического проектирования, потребуются дополнительные ресурсы.
Преимущества:
- высокая производительность, гибкая настройка потребления ресурсов (поскольку виртуальная машина напрямую обращается к аппаратным ресурсам);
- виртуальная машина не прекращает работать в фоновом режиме;
- быстрая работа виртуального жесткого диска в фирменном формате VHDX.
Недостатки:
- по умолчанию гостевая операционная система не работает с флеш-картами и USB-накопителями, не воспроизводит звук;
- буфер обмена по умолчанию односторонний (с физического компьютера – в гостевую операционную систему);
- установка виртуальной машины 2-го поколения производится только из сети или через ISO-образ.
Основные возможности:
- выделение памяти и места на жестком диске для виртуальной гостевой операционной системы;
- интернет-доступ из созданной виртуальной операционной системы;
- быстрый запуск и отключение виртуальной машины;
- предусмотрена опция установки в качестве гостевой Linux;
- создание локальной сети между системами на виртуальной машине;
- запись контрольных точек, фиксирующих состояние операционной системы, которая установлена виртуально;
- копирование и восстановление виртуальных операционных систем;
- перенос виртуального HDD с одного на другой компьютер.
Ограничения:
Программы, которые зависят от наличия определенного оборудования, не будут нормально работать на виртуальной машине. Например, это игры или приложения, которым нужны графические процессоры. С приложениями, использующими таймеры длительностью менее 10 мс, например приложениями для микширования музыки в режиме реального времени или приложениями, чувствительными к задержкам, также возможны проблемы.
Кроме того, если включен Hyper-V, проблемы могут возникать и с чувствительными к задержкам высокоточными приложениями, работающими в операционной системе сервера виртуальных машин.
Это связано с тем, что при включенной виртуализации операционная система сервера виртуальных машин тоже работает поверх уровня виртуализации Hyper-V, как и гостевые операционные системы. Однако отличие операционной системы сервера виртуальных машин от гостевых операционных систем заключается в том, что она имеет прямой доступ к оборудованию, что обеспечивает правильную работу приложений с особыми требованиями к оборудованию.
Где взять:
Данный гипервизор невозможно просто скачать и установить на свой рабочий компьютер, потому что он уже интегрирован в современные операционные системы Windows, кроме версии Windows Home (Домашняя).
Так же может идти в виде отдельного гипервизора Windows Hyper-V Server для сервера.
Поддерживаемые операционные системы на виртуальной машине:
- Почти всё семейство Windows,
- CentOS и Red Hat Enterprise Linux,
- Виртуальные машины Debian на узле Hyper-V,
- SUSE,
- Oracle Linux,
- Ubuntu,
- FreeBSD.
2. Установка гипервизора.
По умолчанию гипервизор в Windows деактивирован. Для его активации требуется выполнить некоторые действия, добавить его в компонентах Windows и установить. Для всех операционных систем семейства Windows установка будет примерно одинаковая. Разница будет заключаться только в графическом оформлении установки, которая зависит от версии операционной системы Windows в вашем распоряжении.
Если в вашем распоряжении версия Windows Home, то смело можете пропускать данный раздел курсов и переходить к описанию Oracle VM VirtualBox, так как в версию Windows Home гипервизор не интегрирован и его нужно будет устанавливать с помощью специального установщика с сайта Microsoft. Рассматривать как это сделать, в рамках программы этих курсов, мы не будем.
Убедитесь, что в настройках BIOS включена поддержка аппаратной виртуализации, как показано ниже.

Давайте посмотрим, как установить роль Hyper-V в Windows, выполнив следующие шаги:
1. Откройте стандартный Проводник Windows и перейдите в Панель управления.

2. В Панели управления переходим во вкладку Удаление программ.

3. В Удалении программ переходим во вкладку включение или отключение компонентов Windows.

4. Откроется окно с компонентами. Выбираем компонент Hyper-V и ставим галочки на оба пункта, которые содержатся в нём: Платформа Hyper-V и Средства управления Hyper-V. После выбора компонентов нажимаем клавишу ОК.

5. Начнется установка Hyper-V. Это займёт некоторое время.

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

После перезагрузки компьютера в системе Windows появится Диспетчер Hyper-V. Любым удобным способом ищем и запускаем данную программу.
3. Как запустить гипервизор.
1. Нажмите сочетание клавиш Клавиша Windows + R, в открывшемся окне Выполнить введите (скопируйте и вставьте) virtmgmt.msc и нажмите клавишу Enter.

2. Вы можете воспользоваться поиском, для этого нажмите на значок поиска на панели задач или нажмите сочетание клавиш Клавиша Windows + S, в появившемся окне в поле поиска введите Диспетчер Hyper-v .

В результатах поисковой выдачи выберите Диспетчер Hyper-V или нажмите правой кнопкой мыши и в контекстном меню выберите пункт На начальный экран или Закрепить на панели задач (если вы часто будете использовать Диспетчер Hyper-V).

3. Также запустить Диспетчер Hyper-V, вы можете из списка программ меню Пуск в папке Средства администрирования.

4. Также вы можете создать ярлык для запуска Диспетчера Hyper-V, для этого нажмите правой кнопкой мыши на рабочем столе и в появившемся контекстном меню выберите Создать —> Ярлык, затем в окне Создать ярлык в поле Укажите расположение объекта: введите virtmgmt.msc и нажмите кнопку Далее.

В следующем окне, в поле Введите имя ярлыка введите например Диспетчер Hyper-V и нажмите кнопку Готово, в результате чего будет создан ярлык на рабочем столе с помощью которого вы сможете запустить Диспетчер Hyper-V.

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

Так как у вас гипервизор установлен локально, то и подключаться мы будем к Локальному компьютеру:

Далее гипервизор раскроет вам весь свой потенциал:

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

Диспетчер виртуальных коммутаторов помогает настроить vSwitch и глобальные сетевые параметры, которые просто позволяют вам изменить диапазон MAC-адресов по умолчанию, если вы видите какую-либо причину для этого.
Создать виртуальный коммутатор легко и доступно три типа vSwitch, которые описаны ниже:
- Внешний vSwitch свяжет физический сетевой адаптер хоста Hyper-V с виртуальным, а затем предоставит доступ вашим виртуальным машинам за пределами хоста. Это означает, что ваша физическая сеть и интернет (если ваша физическая сеть подключена к интернету).
- Внешняя – этот тип использует сетевую карту или адаптер Wi-Fi физического компьютера и подключает виртуальную машину к той же сети, в которой находится физический компьютер. Соответственно, это тип сети, предусматривает доступ виртуальной машины к Интернету.
- Внутренний vSwitch следует использовать для построения независимой виртуальной сети, когда вам необходимо подключить виртуальные машины друг к другу, а также к гипервизору.
- Внутренняя – этот тип обеспечивает сеть между физическим компьютером и виртуальными машинами Hyper-V, но не предусматривает их доступ к Интернету.
- Private vSwitch создаст виртуальную сеть, в которой все подключенные виртуальные машины будут видеть друг друга, но не хост Hyper-V. Это полностью изолирует виртуальные машины в этой песочнице. Частная – этот тип позволяет создать сеть между виртуальными машинами Hyper-V, но в этой сети не будет физического компьютера, равно как и не будет выхода в Интернет.
В данном случае доступ виртуальной машины к интернету необходим, поэтому выбираем первый тип — внешнюю сеть и нажимаем Создать виртуальный коммутатор.

В окне свойств виртуального коммутатора задаем ему имя, это может быть какое угодно имя, в данном примере Virtual Network. Если на вашем компьютере есть и Wi-Fi адаптер и сетевая карта, выберите в пункте Внешняя сеть тот из сетевых адаптеров, который используется для доступа в Интернет. В данном случае используется Wi-Fi адаптер.
Будет открыта таблица с настройкой vSwitch, где мы будем заполнять поля, как показано ниже
- Имя – это имя, которое мы будем указывать для идентификации vSwitch.
- Примечания – это описание для нас, как правило, мы ставим дружественные описания, которые следует понимать.
- Тип подключения – внешний, как объяснено ранее, и выбирает физическую сетевую карту на моем сервере.
После проделанных настроек нажмите кнопку OK.

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

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

5. Как создать виртуальную машину.
Для создания виртуальной машины в диспетчере Hyper-V нажмите правой кнопкой мыши на имени компьютера и в появившемся контекстном меню выберите Создать —> Виртуальная машина.

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

В следующем окне задаем виртуальной машине имя, также можно сменить ее месторасположение (стандартное расположение для виртуальных машин – папка C:\ProgramData\Microsoft\Windows\Hyper-V ) на диске физического компьютера, указав нужный раздел диска и нужную папку с помощью кнопки Обзор, нажимаем кнопку Далее >.

Следующий шаг — это выбор поколения виртуальной машины. Выберите необходимое Поколение виртуальной машины (в данном случае выбрано Поколение 2) и нажмите кнопку Далее >.
- Поколение 1 – это виртуальные машины, поддерживающие 32-битные и 64-битные системы Windows. Поколение 1 совместимо с прежними версиями Hyper-V.
- Поколение 2 – виртуальные машины нового формата со встроенным программным обеспечением на базе UEFI. Такие виртуальные машины поддерживают ряд новых возможностей и способны обеспечить небольшой прирост производительности. На виртуальные машины Поколения 2 в качестве гостевых операционных систем устанавливаются только 64-битные версии Windows 8.1 и Windows 10, а также серверные Windows Server 2012, Windows Server 2012 R2 и Windows Server 2016.

Далее в окне выделения памяти оставляем предустановленные параметры, если физический компьютер имеет не более 4 Гб оперативной памяти. Если оперативной памяти больше 4 Гб, можно увеличить показатель, выделяемый при запуске виртуальной машины. Выберите нужный объем памяти и нажмите кнопку Далее >.

В окне Настройка сети в выпадающем списке Подключение: выберите ранее созданный виртуальный коммутатор и нажмите кнопку Далее >.

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

Следующим шагом будет указание пути к дистрибутиву Windows. Виртуальные машины второго поколения не предусматривают загрузку с физического CD/DVD-привода. Источниками загрузки дистрибутива гостевой операционной системы могут быть только сеть и ISO-образ. В данном случае это ISO-образ. Нажмите кнопку Далее >.

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

После создания виртуальной машины, она появится в списке виртуальных машин Диспетчера Hyper-V.
6. Подключение и запуск виртуальной машины.
Перед запуском виртуальной машины требуется разрешить начало исполнения программного обеспечения с образа диска ISO. Для этого в Параметрах виртуальной машины в разделе Безопасность требуется Отключить безопасную загрузку.

Теперь виртуальную машину нужно подключить. Для этого нажмите правой кнопкой мыши на виртуальной машине и в контекстном меню выберите пункт Подключить. Команда Подключить присутствует и в правой части окна Диспетчера Hyper-V. Для подключения также можно сделать двойной клик левой кнопкой мыши на окне-превью выбранной виртуальной машины.

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

Далее нажимаем любую кнопку, чтобы виртуальная машина загрузилась с ISO-образа.

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

Как только начнется копирование файлов установки, можно закрыть окно подключения к виртуальной машине.

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

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

7. Как удалить виртуальную машину.
При необходимости вы можете удалить виртуальную машину Hyper-V, при этом виртуальная машина удаляется только из диспетчера Hyper-V.
При удалении виртуальной машины Hyper-V удаляется файл конфигурации виртуальной машины, но не удаляются виртуальные жесткие диски (*.VHDX-файлы).
Если виртуальная машина имеет какие-либо контрольные точки (snapshots), они удаляются и объединяются в файлы виртуального жесткого диска после удаления виртуальной машины.
Чтобы удалить виртуальную машину, откройте Диспетчер Hyper-V ( virtmgmt.msc ).
В списке установленных виртуальных машин выберите виртуальную машину Hyper-V, которую вы хотите удалить и выполните одно из следующих действий:
- Нажмите правой кнопкой мыши на выбранной виртуальной машине и в появившемся контекстном меню выберите пункт Удалить.
- В правом нижнем углу в панели действий выберите пункт Удалить.
- Нажмите на клавиатуре клавишу Del.

При появлении запроса на удаление виртуальной машины, нажмите кнопку Удалить.
8. Работа с контрольными точками.
Одно из главных преимуществ виртуализации — это возможность сохранять состояние виртуальной машины. В Hyper-V для этого используются контрольные точки виртуальной машины. Контрольную точку виртуальной машины можно создать перед изменением конфигурации программного обеспечения, применением обновления или установкой нового программного обеспечения. Если после изменения системы возникла проблема, виртуальную машину можно вернуть в состояние на момент создания контрольной точки.
8.1. Типы контрольных точек.
Hyper-V в Windows 10 включает два типа контрольных точек:
- Стандартные контрольные точки — контрольные точки, при инициировании которых создается моментальный снимок виртуальной машины и состояния ее памяти. Моментальный снимок не является полной резервной копией и может приводить к проблемам с согласованностью данных в системах, которые реплицируют данные между различными узлами, например Active Directory. До Windows 10 Hyper-V предоставлял только стандартные контрольные точки (прежде называвшиеся моментальными снимками).
- Рабочие контрольные точки — контрольные точки, при инициировании которых создается согласованная (на уровне данных) резервная копия виртуальной машины при помощи службы теневого копирования томов или заморозки файловой системы (на виртуальной машине Linux). Моментальный снимок состояния памяти для виртуальной машины не создается.
По умолчанию используются рабочие контрольные точки, но с помощью Диспетчера Hyper-V это можно изменить.
Как настроить тип контрольной точки:
- Откройте Диспетчер Hyper-V.
- Щелкните правой кнопкой мыши виртуальную машину и выберите Параметры.
- В разделе Управление выберите Контрольные точки.
- Выберите необходимый тип контрольной точки.

8.2. Создание контрольных точек.
Создает контрольную точку того типа, который настроен для данной виртуальной машины. Сведения о том, как изменить тип контрольной точки, смотрите выше в этом же документе.
Чтобы создать контрольную точку, выполните указанные ниже действия:
- В Диспетчере Hyper-V выберите нужную виртуальную машину.
- Щелкните имя виртуальной машины правой кнопкой мыши и выберите пункт Контрольная точка.
- По завершении процесса контрольная точка будет отображаться в разделе Контрольные точки Диспетчера Hyper-V.
8.3. Применение контрольных точек.
Если вы хотите вернуть виртуальную машину в состояние на определенный момент времени, примените существующую контрольную точку.
Как применить контрольную точку:
- В разделе Виртуальные машиныДиспетчера Hyper-V выберите виртуальную машину.
- В разделе Контрольные точки щелкните правой кнопкой мыши контрольную точку, которую хотите использовать, и выберите пункт Применить.
- Появится диалоговое окно со следующими параметрами:
- Создать и применить контрольную точку: создает новую контрольную точку виртуальной машины до применения более ранней контрольной точки.
- Применить: применяет только выбранную контрольную точку. Это действие нельзя отменить.
- Отменить: закрывает диалоговое окно, не выполняя никаких действий.
Выберите один из вариантов применения для создания и применения контрольной точки.
8.4. Переименование контрольных точек.
В определенной точке могут быть созданы много контрольных точек. Предоставление им понятного имени упрощает запоминание подробностей о состоянии системы при создании контрольной точки.
По умолчанию имя контрольной точки — имя виртуальной машины в сочетании с указанием даты и времени создания контрольной точки.
Имя должно содержать не более 100 знаков и не может быть пустым.
Как переименовать контрольную точку:
- В Диспетчере Hyper-V выберите виртуальную машину.
- Щелкните правой кнопкой мыши контрольную точку и выберите команду Переименовать.
- Введите новое имя для контрольной точки. Длина этого имени не должна превышать 100 знаков. Поле не может быть пустым.
- По завершении нажмите клавишу Enter.
8.5. Удаление контрольных точек.
Удаление контрольных точек помогает освободить пространство на узле Hyper-V.
Контрольные точки хранятся в виде AVHDX-файлов в том же расположении, что и VHDX-файлы для виртуальной машины. При удалении контрольной точки Hyper-V для удобства объединяет AVHDX- и VHDX-файлы. После завершения AVHDX-файл данной контрольной точки будет удален из файловой системы.
Не следует удалять непосредственно AVHDX-файлы.
Чтобы полностью удалить контрольную точку:
- В Диспетчере Hyper-V выберите виртуальную машину.
- В разделе Контрольные точки щелкните правой кнопкой мыши контрольную точку, которую хотите удалить, и выберите пункт Удалить. Можно также удалить контрольную точку и все последующие контрольные точки. Для этого щелкните правой кнопкой мыши самую раннюю контрольную точку, которую хотите удалить, и выберите элемент Удалить поддерево контрольных точек.
- Возможно, вам будет предложено подтвердить удаление контрольной точки. Убедитесь, что выбрана правильная контрольная точка и выберите элемент Удалить.
8.6. Экспорт контрольных точек.
Экспорт объединяет контрольные точки в пакет как виртуальную машину, так что контрольную точку можно переместить в новое место. После выполнения импорта контрольная точка восстанавливается как виртуальная машина. Экспортированные контрольные точки можно использовать для резервного копирования.
8.7. Включение и отключение контрольных точек.
- В Диспетчере Hyper-V щелкните имя виртуальной машины правой кнопкой мыши и выберите Параметры.
- В разделе Управление выберите элемент Контрольные точки.
- Чтобы разрешить создание контрольных точек для этой виртуальной машины, установите флажок Включить контрольные точки. Это поведение по умолчанию.
- Чтобы отключить контрольные точки, снимите флажок Включить контрольные точки.
- Выберите элемент Применить, чтобы применить внесенные изменения. После этого нажмите кнопку ОК, чтобы закрыть диалоговое окно.
8.8. Настройка расположения контрольной точки.
Если у виртуальной машины нет контрольных точек, можно изменить место, в котором хранятся файлы конфигурации контрольных точек и файлы состояний сохранения.
- В Диспетчере Hyper-V щелкните имя виртуальной машины правой кнопкой мыши и выберите Параметры.
- В разделе Управление выберите Контрольные точки или Расположение файла контрольной точки.
- В окне Расположение файла контрольной точки введите путь к папке, где вы хотите хранить файлы.
- Выберите элемент Применить, чтобы применить внесенные изменения. После этого нажмите кнопку ОК, чтобы закрыть диалоговое окно.
По умолчанию для хранения файлов конфигурации контрольных точек используется расположение:
8.9. Демонстрация контрольной точки.
Создадим и применим стандартную и рабочую контрольные точки.
В этом примере вы внесете простое изменение в виртуальную машину и увидите изменение ее поведения.
8.9.1. Стандартная контрольная точка.
- Войдите в виртуальную машину и создайте текстовый файл на рабочем столе.
- Откройте файл в Блокноте и введите текст «Это стандартная контрольная точка» . Не сохраняйте файл и не закрывайте Блокнот.
- Инструкции по изменению контрольной точки на стандартную смотрите выше по тексту.
- Создание новой контрольной точки.

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

Обратите внимание, что после применения контрольной точки восстановлен не только текстовый файл, но и состояние системы на момент создания контрольной точки. В этом случае Блокнот будет открыт с загруженным текстовым файлом.
8.9.2. Рабочая контрольная точка.
Теперь рассмотрим рабочие контрольные точки. Эта процедура почти идентична работе со стандартными контрольными точками, но имеет немного другие результаты. Перед началом работы убедитесь, что у вас есть виртуальная машина и выбран рабочий тип контрольной точки.
Изменение виртуальной машины и создание рабочей контрольной точки:
- Войдите в виртуальную машину и создайте текстовый файл. Если вы выполнили предыдущее упражнение, можно использовать существующий текстовый файл.
- В этом файле введите текст «Это рабочая контрольная точка» , сохраните его, но не закрывайте Блокнот.
- Откройте Диспетчер Hyper-V щелкните правой кнопкой мыши виртуальную машину и выберите пункт Контрольная точка.
- В окне Создана рабочая контрольная точка нажмите кнопку ОК.

Теперь, когда контрольная точка создана, внесите изменения в систему, а затем примените контрольную точку, чтобы возвратить виртуальную машину в сохраненное состояние.
- Если текстовый файл еще открыт, закройте его и удалите с рабочего стола виртуальной машины.
- Откройте Диспетчер Hyper-V, щелкните правой кнопкой мыши рабочую контрольную точку и выберите пункт Применить.
- В диалоговом окне Применить контрольную точку нажмите кнопку Применить.
Обратите внимание, что после применения рабочей контрольной точки виртуальная машина отключается.
Hyper-V
Microsoft Hyper-V (кодовое имя Viridian), [1] — система виртуализации для x64-систем на основе гипервизора. [2] Бета-версия Hyper-V была включена в x64-версии Windows Server 2008, а финальная версия для этих версий была выпущена 26 июня 2008. [3] Ранее была известна как виртуализация Windows Server (Windows Server Virtualization)
Содержание
Версии и варианты
Hyper-V существует в двух вариантах: отдельный продукт Microsoft Hyper-V Server 2008 (Hyper-V Server 2008 R2 для второй версии) или же как роль в Windows Server 2008 и Windows Server 2008 R2.
Отдельная версия Hyper-V Server является бесплатной. Она была выпущена 1 октября 2008. Является базовым («Server Core») вариантом Windows Server 2008, то есть включает в себя полную функциональность Hyper-V; прочие роли Windows 2008 Server отключены, также лимитированы службы Windows. [4] Бесплатная 64-битная Core-версия Hyper-V ограничена интерфейсом командной строки (CLI PowerShell), где конфигурация текущей ОС, физического аппаратного и программного оборудования выполняется при помощи команд оболочки. Новое меню интерфейса управления позволяет выполнить простую первичную конфигурацию, а некоторые свободно распространяемые скрипты расширяют данную концепцию. Администрирование и конфигурирование виртуального сервера (или гостевых ОС) осуществляется при помощи ПО, установленного на ПК под управлением Windows Vista, Windows 7 или Windows 2008 Server с установленным дополнением для администрирования Hyper-V из MMC. Другим вариантом администрирования/конфигурирования сервера Windows 2008 Core является использование удаленной Windows или Windows Server при перенаправлении (некоторой) консоли управления (MMC), указывающей на Core Server. Это значительно упрощает настройку, сводя её к нескольким кликам мыши.
В Windows Server 2012 включена обновленная версия Hyper-V.
Архитектура

Hyper-V поддерживает разграничение согласно понятию раздел. Раздел — логическая единица разграничения, поддерживаемая гипервизором, в котором работают операционные системы. Каждый экземпляр гипервизора должен иметь один родительский раздел, с запущенной Windows Server 2008. Стек виртуализации запускается на родительском разделе и обладает прямым доступом к аппаратным устройствам. Затем родительский раздел порождает дочерние разделы, на которых и располагаются гостевые ОС. Дочерний раздел также может породить собственные дочерние разделы. Родительский раздел создает дочерние при помощи API гипервызова, представленного в Hyper-V.
Виртуализированные разделы не имеют ни доступа к физическому процессору, ни возможностью управлять его реальными прерываниями. Вместо этого, у них есть виртуальное представление процессора и гостевой виртуальный адрес, зависящий от конфигурации гипервизора, вовсе необязательно при этом занимающий все виртуальное адресное пространство. Гипервизор может определять подмножество процессоров для каждого раздела. Гипервизор управляет прерываниями процессора и перенаправляет их в соответствующий раздел, используя логический контроллер искусственных прерываний (Synthetic Interrupt Controller или сокр. SynIC). Hyper-V может аппаратно ускорять трансляцию адресов между различными гостевыми виртуальными адресными пространствами при помощи IOMMU (I/O Memory Management Unit — Устройство управления вводом-выводом памяти), которое работает независимо от аппаратного управления памятью, используемого процессором.
Дочерние разделы не имеют непосредственного доступа к аппаратным ресурсам, но зато получают виртуальное представление ресурсов, называемое виртуальными устройствами. Любая попытка обращения к виртуальным устройствам перенаправляется через VMBus к устройствам родительского раздела, которые и обработают данный запрос. VMBus — это логический канал, осуществляющий взаимодействие между разделами. Ответ возвращается также через VMBus. Если устройства родительского раздела также являются виртуальными устройствами, то запрос будет передаваться дальше пока не достигнет такого родительского раздела, где он получит доступ к физическим устройствам. Родительские разделы запускают провайдер сервиса виртуализации (Virtualization Service Provider или сокр. VSP), который соединяется с VMBus и обрабатывает запросы доступа к устройствам от дочерних разделов. Виртуальные устройства дочернего раздела работают с клиентом сервиса виртуализации (Virtualization Service Client или сокр. VSC), который перенаправляет запрос через VMBus к VSP родительского раздела. Этот процесс прозрачен для гостевой ОС.
Виртуальные устройства также поддерживают технологию Windows Server Virtualization, называемую прогрессивный ввод/вывод (англ. Enlightened I/O), для накопителей, сетевых и графических подсистем в том числе. Enlightened I/O — специализированая виртуализационая реализация высокоуровневых протоколов как, например, SCSI, для возможности работать с VMBus напрямую, что позволяет параллельно обрабатывать любые уровни эмуляции устройства. Это делает взаимодействие более эффективным, но взамен требует от гостевой ОС поддержки Enlightened I/O. Только Windows Server 2008, Windows Vista, Red Hat Enterprise Linux и SUSE Linux сейчас обладают поддержкой Enlightened I/O, позволяющей им работать быстрее в качестве гостевых ОС под Hyper-V по сравнению с прочими операционными системами, которым требуется более медленная эмуляция устройств.
Системные требования / Спецификации
- x64-совместимый процессор, поддерживающий запуск x64-версии Windows Server 2008 Standard, Windows Server 2008 Enterprise или Windows Server 2008 Datacenter. . Эта особенность процессоров, дающая возможность аппаратной виртуализации; касается технологий Intel VT и AMD Virtualization (AMD-V, ранее известная как Pacifica). -совместимый процессор и активированая аппаратная поддержка Data Execution Prevention (DEP).
- Память объёмом минимум 2 Гб (каждая виртуальная ОС требует собственного объёма памяти, поэтому реально нужно больше).
- Windows 2008 Standard (64-bit) Hyper-V Core требует примерно 3 Гб дискового пространства в установленном виде.
- Windows 2008 Standard (64-bit) Hyper-V с GUI требует примерно 8 Гб дискового пространства в установленном виде.
- Windows 2008 Standard (64-bit) Hyper-V с GUI или в виде Core версии поддерживает до 31 Гб памяти для работы VM, плюс 1 Гб для родительской ОС Hyper-V. [1]
- Windows 2008 Standard (64-bit) Hyper-V с GUI или в виде Core поддерживает до 8 процессоров с 1, 2 или 4 ядрами.
- Windows 2008 Standard (64-bit) Hyper-V с GUI или в виде Core поддерживает до 384 гостевых ОС [2].
- Windows 2008 Standard (64-bit) Hyper-V с GUI или в виде Core поддерживает 32-битные (x86) и 64-битные (x86_64) гостевые виртуальные машины.
Отдельный Hyper-V Server не требует установленного Windows Server 2008, а требование к минимуму памяти составляет 1Гб и дискового пространства 2Гб.
Поддержка гостевых ОС
Список поддерживаемых/протестированных операционных систем включает [5]
-
x86/x64 SP1/SP2 и R2
- Windows HPC Server 2008 x86/x64 SP2 R2
- Windows 2000 Server SP4 и Advanced Server SP4 [6] (кроме Home editions) SP1/SP2 (кроме Home editions) Professional SP2/SP3/x64 Enterprise Server (SLES) 10 SP3 и 11 (RHEL) 5.2 — 5.6 (x86 Edition или x86_64 Edition) [7] (RHEL) 6.0, 6.1 (x86 Edition или x86_64 Edition) 5.2 — 5.6, 6.0 8.2-8.3 [8] 12.04
Гостевые Windows Server 2008 и Windows HPC Server 2008 могут быть сконфигурированы для 1-, 2-, или 4-процессорного SMP, Windows Server 2003 и Windows Vista для 1- или 2-процессорного SMP. Прочие гостевые ОС, такие как Ubuntu Linux 6.06/6.10/7.10 или Fedora 8/9 не поддерживаются, но, тем не менее, могут успешно запускаться. [9] [10] [11]
Гостевые ОС с поддержкой технологии Enlightened I/O и ядром с поддержкой режима гипервизора как, например, Windows Server 2008, Windows Vista SP1 и готовящееся предложение от Citrix XenServer и Novell позволят использовать ресурсы хоста более эффективно благодаря тому, что VSC-драйверы в этих гостевых ОС будут взаимодействовать напрямую с VSP через VMbus. [12] ОС без поддержки Enlightened I/O будут запускаться с эмуляцией ввода-вывода; [13] тем не менее, компоненты интеграции (которые включают в себя VSC-драйверы) доступны для Windows Server 2003 SP2, Windows XP SP3, Windows Vista SP1 и Linux, и позволяют достичь большей производительности.
Гостевые системы Linux также могут быть паравиртуализованы в Hyper-V. Однако сейчас подобным образом только SLES 10 SP3, SLES 11, RHEL и CentOS 5.2, 5.3, 5.4, 5.5, 5.6, 6.0 и 6.1 для x86 и x64 официально поддерживаются Microsoft при установке компонентов интеграции.
При использовании гостевых ОС Windows версий до Server 2003 невозможно использование виртуальных SCSI дисков и адаптеров в них. Это связано с тем, что гостевой драйвер виртуального SCSI контроллера (STORVSC) основан на подсистеме STORPORT, которая появилась только в Server 2003.
Поддержка Linux
Hyper-V обеспечивает базовую поддержку виртуализации гостевых Linux-систем в режиме эмуляции устройств, не требуя никаких изменений. Эмулируются контроллеры дисков IDE PIIX4 и PCI Ethernet адаптер DEC 21140 Tulip, однако скорость работы может быть невысокой и существует ограничение 128Гб на диск.
Паравиртуализация достижима при включении модулей ядра Linux или при установке дополнительных компонентов интеграции (Integration Components). Ранние версии компонентов интеграции функционировали как прослойка между интерфейсом гостевого ядра Xen и Hyper-V (Hypercall Translator). Позднее была реализована прямая поддержка шины VMBbus без Xen. 20 июля 2009 Microsoft опубликовала эти драйверы под лицензией GPL, и они были официально включены в ядро Linux (опция STAGING/HYPERV). В процессе работы над драйверами, различные компоненты постепенно покидали ветку STAGING и начиная с версии ядра Linux 3.4 были перенесены в основное дерево [14] . Таким образом, дистрибутивы с ядрами новее, чем 2.6.32 могут включать встроенную поддержку паравиртуализации Hyper-V (однако, как правило, не включают). Данные драйвера содержат поддержку шины VMbus и позволяют гостевой операционной системе Linux работать c устройствами в режиме Enlightened I/O. Поддерживаются устройства Synthetic IDE, Synthetic SCSI и Synthetic Ethernet. Поддерживаются SMP до 4 ядер и такие функции, как синхронизация времени (в RHEL5 только для 32-битных систем), остановка системы (shutdown) и проверка активности (heartbeat).
Для поддерживаемых систем SLES, RHEL и CentOS компания Microsoft бесплатно распространяет Linux Integration Components 2.1 (для SuSe и RHEL5), Linux Integration Components 3.4 (для RHEL6), которые содержат исходные тексты и скрипты для компиляции, автоматической установки драйверов и автоматической загрузки модулей при старте.
Интеграция функций мыши гостевой системы Linux ранее достигалось при установке драйверов Citrix XEN Satori InputVSC (являются комбинацией исходных текстов под GPL2 и проприетарных бинарных объектных файлов). В ядре Linux 2.6.39 появилась свободная поддержка InputVSC-мыши. Linux IС 3 также содержат модули поддержки мыши.
Гостевая машина c RedHat Enterprise Linux, работающая под Hyper-V может пользоваться службами RedHat Networks благодаря лицензии Flex Guest Entitlements [15] (начиная с версии RHEL 5.5). Однако, при автоматическом обновлении ядра гостевой системы RHEL 5 может возникнуть проблема, описанная в статье KB2387594.
Совместимость VHD с Virtual Server 2005 и Virtual PC 2004/2007
Hyper-V, как Virtual Server 2005 и Virtual PC 2004/2007, хранит виртуальные диски (в том числе системные тома гостевых ОС) в файлах с расширением .VHD. Этот файл содержит гостевую ОС целиком, хотя для некоторых файлов можно настроить откаты и пр.
Старые .vhd файлы от Virtual Server 2005 и Virtual PC 2004/2007 можно скопировать и использовать при помощи Windows 2008 Hyper-V server, но некоторые изменения в виртуальном оборудовании (видео и сетевая карта) будут означать потребность гостевых ОС в обновлении драйверов, и как следствие, в случае последних версий Windows может потребоваться повторная активация.
Microsoft не представляет ни DLL, ни API для посекторного доступа к .vhd файлам, однако формат открыт и опубликован [16] , и многие фирмы разработали такую поддержку сами.
Ограничения
По состоянию на декабрь 2008 Hyper-V не поддерживает доступ к USB-устройствам или воспроизведение звуков в гостевых ВМ. Тем не менее, обходным маневром для доступа к USB-накопителям в гостевых ВМ может послужить использование Microsoft Remote Desktop Client для открытия доступа к накопителям хоста для «гостей» через соединение Remote Desktop Connection. [17] Другая возможность — использовать устройства типа USB-over-Network с установкой драйверов в каждую виртуальную машину.
Также Hyper-V весьма слаб в поддержке старых приложений для MS-DOS, в том числе игр. Unreal mode в «гостях» не поддерживается вовсе, хотя он правильно поддерживается в Virtual PC.
Также, Hyper-V поддерживает живую миграцию (начиная с Windows Server 2008 R2) гостевых ВМ, где живая миграция понимается как поддержка сетевых соединений и отсутствие прерываний выполнения служб во время переноса ВМ. Ранее вместо этого, Hyper-V на Server 2008 Enterprise и Datacenter Editions поддерживал быструю миграцию, во время которой гостевая ВМ приостанавливается на одном хосте и «пробуждается» уже на другом. Такая операция занимает столько времени, сколько потребуется для передачи активной памяти гостевой ВМ по сети от первого хоста второму. [18]