Драйвер инфраструктуры виртуализации microsoft hyper v что это
Hyper-V — это продукт виртуализации оборудования Майкрософт. Она позволяет создавать и запускать программную версию компьютера, называемую виртуальной машиной. Каждая виртуальная машина действует как полноценный компьютер, запускающий операционную систему и программы. Если вам нужны вычислительные ресурсы, виртуальные машины предоставляют больше гибкости, помогают экономить время и деньги и являются более эффективным способом использования оборудования, чем запуск одной операционной системы на физическом оборудовании.
Hyper-V выполняет каждую виртуальную машину в отдельном изолированном пространстве. Это означает, что на одном и том же оборудовании можно запускать несколько виртуальных машин одновременно. Это можно сделать, чтобы избежать таких проблем, как сбой, влияющих на другие рабочие нагрузки, или предоставить другим пользователям, группам или службам доступ к разным системам.
Некоторые способы, с помощью которых Hyper-V может помочь
Hyper-V может помочь:
Создание или расширение частной облачной среды. Предоставление более гибких ИТ-служб по запросу путем перемещения или расширения использования общих ресурсов и корректировки использования по мере изменения спроса.
Более эффективное использование оборудования. Консолидируйте серверы и рабочие нагрузки на меньшее число более мощных физических компьютеров, чтобы использовать меньше энергии и физического пространства.
Непрерывные деловые операции. Сократите влияние запланированного и незапланированного простоя рабочих нагрузок.
Установка или расширение инфраструктуры виртуальных рабочих столов (VDI). Использование централизованной стратегии настольных систем с помощью VDI поможет повысить гибкость бизнеса и безопасность данных, а также упростить соответствие нормативным требованиям и управлять настольными операционными системами и приложениями. Разверните узлы Hyper-V и Узел виртуализации удаленных рабочих столов (узел виртуализации удаленных рабочих столов) на том же сервере, чтобы сделать личные виртуальные рабочие столы или пулы виртуальных рабочих столов доступными для пользователей.
Сделайте разработку и тестирование более эффективными. Воспроизведение различных вычислительных сред без необходимости покупать или поддерживать все необходимое оборудование, если используются только физические системы.
Hyper-V и другие продукты виртуализации
Hyper-V в Windows и Windows Server заменяет старые продукты виртуализации оборудования, такие как microsoft virtual pc, microsoft virtual Server и Windows Virtual pc. Hyper-V предлагает функции сети, производительности, хранения и безопасности, недоступные в этих старых продуктах.
Hyper-V и сторонние приложения виртуализации, для которых требуются одни и те же функции процессора, не совместимы. Это обусловлено тем, что функции процессора, известные как аппаратные расширения виртуализации, не предназначены для совместного использования. Дополнительные сведения см. в статье приложения виртуализации не работают вместе с Hyper-V, Device Guard и Credential Guard.
Какие функции имеет Hyper-V?
Hyper-V предлагает множество функций. Это обзор, сгруппированный по функциям, предоставляемым или помогающим в работе.
Вычислительная среда . Виртуальная машина Hyper-V включает те же основные компоненты, что и физический компьютер, например память, процессор, хранилище и сеть. Все эти части имеют функции и параметры, которые можно настроить разными способами для удовлетворения различных потребностей. служба хранилища и сети могут считаться своими категориями, из-за множества способов их настройки.
Аварийное восстановление и резервное копирование . для аварийного восстановления реплика Hyper-V создает копии виртуальных машин, предназначенные для хранения в другом физическом расположении, чтобы можно было восстановить виртуальную машину из копии. Для резервного копирования Hyper-V предлагает два типа. В одном из них используются сохраненные состояния, а в другом используется служба теневого копирования томов (VSS), что позволяет создавать резервные копии, совместимые с приложениями, для программ, поддерживающих VSS.
Оптимизация . Каждая поддерживаемая гостевая операционная система имеет настроенный набор служб и драйверов, называемый службами Integration Services, которые упрощают использование операционной системы на виртуальной машине Hyper-V.
Переносимость — такие функции, как динамическая миграция, миграция хранилища и импорт и экспорт, упрощают перемещение и распространение виртуальной машины.
удаленное подключение . Hyper-V включает подключение к виртуальной машине, средство удаленного подключения для использования с Windows и Linux. В отличие от удаленный рабочий стол, это средство предоставляет доступ к консоли, что позволяет увидеть, что происходит на гостевом компьютере, даже если операционная система еще не загружена.
Безопасность — безопасная загрузка и экранированные виртуальные машины помогают защититься от вредоносных программ и другого несанкционированного доступа к виртуальной машине и ее данным.
сводные сведения о функциях, появившихся в этой версии, см. в статье новые возможности Hyper-V на Windows Server. Некоторые функции или части имеют ограничение на количество, которое можно настроить. Дополнительные сведения см. в разделе Планирование масштабируемости Hyper-V в Windows Server 2016.
Как получить Hyper-V
Hyper-V доступен в Windows server и Windows, в качестве роли сервера, доступной для 64-разрядных версий Windows Server. инструкции по серверу см. в разделе установка роли Hyper-V на сервере Windows. На Windows он доступен в виде функции в некоторых 64-разрядных версиях Windows. он также доступен как загружаемый, изолированный серверный продукт Microsoft Hyper-V server.
Поддерживаемые операционные системы
На виртуальных машинах будут работать многие операционные системы. В общем случае операционная система, использующая архитектуру x86, будет работать на виртуальной машине Hyper-V. Однако не все операционные системы, которые могут быть запущены, протестированы и поддерживаются корпорацией Майкрософт. Список поддерживаемых возможностей см. в следующих статьях:
Как работает Hyper-V
Hyper-V — это технология виртуализации на основе низкоуровневой оболочки. Hyper-V использует Windows гипервизор, для которого требуется физический процессор с конкретными функциями. сведения об оборудовании см. в статье требования к системе для Hyper-V на Windows Server.
В большинстве случаев гипервизор управляет взаимодействием между оборудованием и виртуальными машинами. Этот управляемый гипервизором доступ к оборудованию предоставляет виртуальным машинам изолированную среду, в которой они выполняются. В некоторых конфигурациях виртуальная машина или операционная система, работающая на виртуальной машине, имеет прямой доступ к графике, сети или оборудованию хранилища.
Что состоит из Hyper-V?
Hyper-V содержит необходимые части, которые работают вместе, чтобы можно было создавать и запускать виртуальные машины. Вместе эти компоненты называются платформой виртуализации. Они устанавливаются в качестве набора при установке роли Hyper-V. в число необходимых компонентов входят Windows гипервизор, служба управления виртуальными машинами Hyper-V, поставщик WMI виртуализации, шина виртуальной машины (VMbus), поставщик службы виртуализации (VSP) и драйвер виртуальной инфраструктуры (VID).
Hyper-V также имеет средства для управления и подключения. Их можно установить на том же компьютере, на котором установлена роль Hyper-V, и на компьютерах без установленной роли Hyper-V. Эти средства:
- В диспетчере Hyper-V (иногда называется VMConnect)
Связанные технологии
Это некоторые технологии корпорации Майкрософт, которые часто используются с Hyper-V:
Различные технологии хранения: общие тома кластера, SMB 3,0, Локальные дисковые пространства
контейнеры Windows предлагают еще один подход к виртуализации. см. библиотеку контейнеров Windows в MSDN.
Всем занять свои места! Задраить люки! Приготовиться к погружению!
В этой статье я попытаюсь рассказать об архитектуре 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 и была подготовлена статья.
Hyper-V более известен как технология виртуализации серверов; однако, начиная с Windows 8, он также доступен в клиентской операционной системе. В Windows 10 мы значительно улучшили работу, сделав Hyper-V отличным решением для разработчиков и ИТ-специалистов.
Microsoft Hyper-V, кодовое название Viridian, — это нативный (тип 1) гипервизор, который, в отличие от VMware Workstation, VirtualBox и других гипервизоров типа 2, работает непосредственно на оборудовании. Впервые он был выпущен в Windows Server 2008 и позволяет запускать виртуальные машины в системах x86-64.
Hyper-V позволяет разработчикам быстро разгонять виртуальные машины для разработки на Windows 10 с превосходной производительностью, но он также используется в нескольких других функциях разработки в качестве серверной технологии, например, в таких как эмулятор Android, подсистема Windows для Linux 2 (WSL2) или контейнеры Docker. В этой статье мы кратко рассмотрим, как Hyper-V в Windows 10 может помочь разработчикам.
Быстрое создание коллекции виртуальных машин
Во-первых, давайте начнем с одной из основных функций для создания виртуальных машин. Теперь вы можете не только создавать виртуальные машины Hyper-V, устанавливая их с помощью файла ISO; вы можете использовать Hyper-V Quick Create VM Gallery, чтобы быстро создать новую среду разработки Windows 10 или даже виртуальную машину Ubuntu. Инструмент загрузит предварительно настроенную виртуальную машину Hyper-V с Windows 10 и средой разработки Visual Studio или Ubuntu 18.04 или 19.04. При желании вы также можете создавать собственные образы виртуальных машин Quick Create и даже делиться ими с другими разработчиками.
Подсистема Windows для Linux 2 (WSL 2)
С подсистемой Windows для Linux Microsoft перенесла среду Linux на Windows 10 desktop и позволяет запускать среду GNU/Linux — включая большинство инструментов, утилит и приложений командной строки — непосредственно в Windows без изменений, без издержек полноценных виртуальных машин. В последних версиях Windows 10 Insider Preview Microsoft выпустила превью WSL 2. WSL 2 использует технологию виртуализации Hyper-V для изоляции и виртуализации WSL в серверной части. Это обеспечивает не только преимущества безопасности, но и огромный прирост производительности. Подробнее о подсистеме Windows для Linux 2 вы можете узнать здесь.
Расширенный режим сеанса для обмена устройствами с вашей виртуальной машиной
Одной из трудных частей в прошлом было взаимодействие между виртуальной машиной и хост-машиной. С добавлением Enhanced Session Mode , Microsoft упростила копи-паст файлов между ними, а также теперь можно совместно использовать устройства. В том числе:
- Делает виртуальные машины изменяемого размера и с высоким DPI
- Улучшает интеграцию виртуальной машины
- Позволяет совместное использование устройств
Чекпоинты
Огромным преимуществом виртуализации является возможность легко сохранять состояние виртуальной машины, что позволяет вам возвращаться назад или вперед в определенный момент времени. В Hyper-V эта функция называется контрольной точкой виртуальной машины, ранее была известна как снимок виртуальной машины.
Hyper-V знает типы контрольных точек:
- Стандартные контрольные точки: делает снимок состояния виртуальной машины и памяти виртуальной машины в момент запуска контрольной точки.
- Продакшн-контрольные точки: использует службу теневого копирования томов или Freeze File System на виртуальной машине Linux для создания согласованной с данными резервной копии виртуальной машины. Снимок состояния памяти виртуальной машины не создается.
Тип контрольной точки может быть установлен виртуальной машиной. Оба типа чекпоинтов имеют разные преимущества и недостатки. В последних версиях Hyper-V продакшн-контрольные точки выбираются по умолчанию. Однако вы можете легко изменить это с помощью настроек диспетчера Hyper-V или PowerShell. На моем клиентском компьютере с Windows 10 я предпочитаю использовать стандартные контрольные точки, поскольку он также сохраняет состояние памяти виртуальной машины, однако в системах с продакшн-серверами я настоятельно рекомендую использовать продакшн-контрольные точки, и даже в этом случае вам следует соблюдать осторожность.
NAT сети
Одной из особенностей, которые были очень болезненными в прошлом, была сеть. С появлением опции переключения NAT в виртуальном коммутаторе Hyper-V теперь вы можете легко подключить все ваши виртуальные машины к сети, к которой подключен ваш хост. В Windows 10 вы получите переключатель по умолчанию для подключения ваших виртуальных машин. Если этого недостаточно или вы хотите использовать виртуальный коммутатор NAT на сервере Hyper-V, вы можете использовать следующие команды для создания виртуального коммутатора и правила NAT.
Вы можете узнать больше о Hyper-V NAT сетях здесь.
Запускайте контейнеры Windows и Linux в Windows 10
Контейнеры являются одной из самых популярных технологий прямо сейчас, с Docker Desktop для Windows вы можете запускать их на своем компьютере с Windows 10. По умолчанию Windows использует технологию Hyper-V, чтобы создать дополнительную защиту между контейнером и операционной системой хоста, так называемыми контейнерами Hyper-V. Эта функция также позволяет запускать Windows и Контейнеры Linux в Windows side-by-side без необходимости запуска полной виртуальной машины Linux в Windows 10.
PowerShell Direct и HVC
Если вы хотите взаимодействовать с вашей виртуальной машиной, работающей под управлением Windows 10, вы можете использовать диспетчер Hyper-V и консоль для непосредственного взаимодействия с операционной системой. Однако есть также два других варианта, которые позволяют вам управлять виртуальными машинами и получать к ним доступ с помощью командной строки. PowerShell Direct позволяет создавать сеанс удаленного взаимодействия PowerShell для виртуальной машины с использованием шины VM, так что никаких сетей не требуется. То же самое касается виртуальных машин Linux и инструмента HVC, который позволяет создавать SSH-соединение непосредственно с виртуальной машиной. Оба варианта также позволяют копировать файлы на виртуальные машины и с них.
Это очень удобно, если вы настроили некоторую автоматизацию, и вам нужно выполнить некоторые команды на виртуальной машине.
Windows песочница
Песочница Windows — это новая функция в Windows 10, выпущенная в версии 1903. Песочница Windows использует технологию Hyper-V для предоставления Windows 10 Sandbox. Песочница позволяет раскрутить изолированную временную среду рабочего стола, где вы можете запускать ненадежное программное обеспечение. Песочница отлично подходит для демонстраций, разработки, тестирования, устранения неполадок или для работы с вредоносными программами. Если вы закроете песочницу, все программное обеспечение со всеми его файлами и состоянием будет удалено навсегда. Это виртуальные машины с Windows 10, их преимущество в том, что они встроены в Windows 10, поэтому они используют существующую ОС, что обеспечивает более быстрый запуск, лучшую эффективность и удобство в обращении без потери безопасности.
Опыт Windows Sandbox также можно настроить с помощью файлов конфигурации. Таким образом, вы можете добавить дополнительное программное обеспечение и инструменты в свою Windows Sandbox.
Windows Defender Application Guard
Это может быть не связано непосредственно с развитием. Тем не менее, я думаю, что такое происходило с каждым. Мы видим ссылку, и мы не уверены, точно ли это доверенный сайт или это вредоносный сайт. С Windows Defender Application Guard мы получаем изолированный браузер, который защищает нас от вредоносных веб-сайтов и программного обеспечения. Если пользователь переходит на ненадежный сайт через Microsoft Edge или Internet Explorer, Microsoft Edge открывает сайт в изолированном контейнере с поддержкой Hyper-V, который отделен от операционной системы хоста.
Hyper-V Battery Pass-through
Эта особенность больше об удобстве. Если вы работаете и разрабатываете внутри виртуальной машины и используете консоль виртуальной машины в полноэкранном режиме, вы можете не заметить, когда у вашего ноутбука разрядился аккумулятор. Благодаря функции Hyper-V Battery Pass-through гостевая операционная система внутри виртуальной машины знает о состоянии батареи. Функция виртуальной батареи Hyper-V включена по умолчанию и работает с виртуальными машинами Windows и Linux.
Вложенная (Nested) виртуализация
Вложенная виртуализация позволяет запускать виртуализацию на виртуальной машине, в основном, как на начальном этапе для виртуальных машин. С Hyper-V вы можете запускать Hyper-V на виртуальной машине Hyper-V. Это интересно для пары разных сценариев. Во-первых, вы можете создать виртуальный хост Hyper-V для тестирования и лабораторных работ, или, что еще важнее, вы можете запускать контейнеры Hyper-V или Windows Sandbox на виртуальной машине. И еще одна замечательная особенность Nested Virtualization: она также работает с виртуальными машинами в Microsoft Azure.
Для включения nested-виртуализации внутри Hyper-V, вы можете изучить этот гайд.
Эмулятор Visual Studio для Android
Если вы используете Visual Studio для создания приложений Android, я уверен, что вы уже использовали Эмулятор Visual Studio для Android. Фича позволяет разработчикам использовать эмулятор Android с аппаратным ускорением, не переключаясь на гипервизор Intel HAXM, что обеспечивает им еще большую производительность и скорость.
Как настроить Hyper-V на Windows 10
Теперь, как вы можете видеть, Hyper-V является отличным инструментом для разработчиков и используется для множества различных функций. Чтобы установить Hyper-V, вы должны проверить следующие требования на вашем компьютере:
- Windows 10 Enterprise, Pro, или Education.
- 64-битный процессор с Second Level Address Translation (SLAT).
- Поддержка CPU для VM Monitor Mode Extension (VT-c на Intel CPUs).
- Как минимум 4 GB памяти.
Для получения дополнительной информации о том, как установить Hyper-V в Windows 10, изучайте документацию Microsoft .
В этой статье мы поговорим о том, что такое Hyper-V «изнутри», и чем он отличается от VMware ESX с точки зрения архитектуры, а не маркетинговых листовок. Статья будет делиться на три части. В первой части я расскажу о самой архитектуре гипервизора, в двух других – о том, как Hyper-V работает с устройствами хранения данных и с сетью.
Итак, как мы уже знаем, Hyper-V – это платформа виртуализауции серверов от Microsoft, пришедшая на смену Virtual Server. В отличие от последнего, Hyper-V – это не самостоятельный продукт, а всего-навсего компонента ОС Windows Server 2008. Итак, давайте посмотрим, что происходит с Windows Server 2008 после установки роли Hyper-V:
Как мы видим, после установки роли Hyper-V архитектура системы очень сильно меняется: если до этого ОС работала с памятью, процессором и железом напрямую, то после установки распределением памяти и процессорного времени управляет уже гипервизор. Так же появляются некоторые новые компоненты, о которых будет рассказано далее. После установки Hyper-V система создает изолированные окружения, в которых запускаются гостевые ОС, так называемые партиции (partitions). Не путать с разделами (partitions) жесткого диска. Сама хостовая ОС, в свою очередь, с момента установки Hyper-V точно так же работает в изолированной партиции, которая именуется родительской (parent partition). Партиции, в которых запускаются гостевые ОС именуются дочерними. Разница между родительской партиции и дочерними состоит в том, что только из родительской партиции может осуществляться прямой доступ к аппаратному обеспечению сервера. Все остальные партиции полностью изолированы как друг от друга, так и от аппаратного обеспечения самого сервера. Все взаимодействие с железом идет через драйверы, работающие внутри хостовой ОС, то есть через родительскую партицию. Каждая виртуальная машина имеет набор виртуальных устройств (сетевой адаптер, видеоадаптер, контроллер дисков, и т.д.), которые взаимодействуют с родительской партицией посредством так называемой шины виртуальных устройств (VMBus). И уже в родительской партиции все обращения к виртуальным устройствам передаются драйверам железа. В этом – коренное отличие Hyper-V от VMware ESX: в ESX драйверы устройств «вмонтированы» в сам гипервизор. Хорошо это или плохо – однозначно сказать невозможно. С одной стороны – безусловно хорошо: гипервизор ESX может работать самостоятельно, без необходимости в хостовой ОС, и поэтому имеет намного меньшие требования по памяти и дисковому пространству. С другой же стороны, список поддерживаемого железа очень сильно ограничен, и установить новые драйверы в ESX невозможно. Поэтому может сложиться ситуация, что при использовании VMware ESX когда появляется, к примеру, новый драйвер, поддерживающий какие-то особые функции железа – придется ждать новой версии гипервизора. Возможна и обратная ситуация: при замене железа на новое может возникнуть необходимость в переходе на новый гипервизор. В Hyper-V же будет достаточно просто установить соответствующие драйверы в хостовой ОС.
- WMI-провайдеры – позволяют управлять виртуальными машинами как локально, так и удаленно.
- Сервис управления виртуальными машинами (VMMS) – собственно говоря, управляет виртуальными машинами.
- Рабочие процессы виртуальных машин (VMWP) – процессы, в которых выполняются все действия виртуальных машин – обращение к виртуальным процессорам, устройствам, и т.д.
- Драйвер виртуальной инфраструктуры (VID) – осуществляет управление партициями, а так же процессорами и памятью виртуальных машин.
- Провайдер сервисов виртуализации (VSP) – предоставляет специфические функции виртуальных устройств (так называемые «синтетические устройства) посредством VMBus и при наличии интеграционных компонент на стороне гостевой ОС.
- Шина виртуальных устройств (VMBus) – осуществляет обмен информацией между виртуальными устройствами внутри дочерних партиций и родительской партицией.
- Драйверы устройств – как уже говорилось выше, только родительская партиция имеет прямой доступ к аппаратным устройствам, и потому именно внутри нее работают все драйверы.
- Windows Kernel – собственно ядро хостовой ОС.
На этом, пожалуй, первую часть я закончу. В следующей статье я расскажу о том, как Hyper-V работает с устройствами хранения данных (жесткие диски, внешние СХД, и т.п.).
Данный компонент является виртуальной машиной Microsoft, позволяющая запускать другие операционные системы внутри работающей Windows.
Гипервизор — что это такое? На самом деле это сложное слово означает просто программу, которая умеет создавать и запускать виртуальные компьютеры на одном физическом. То есть виртуальные машины или гостевые операционные системы.
Простыми словами: ПО Hyper-V позволяет создавать в некотором смысле виртуальные компьютеры, внутри которых функционирует операционная система. При создании такой виртуальный ПК настраивается, например можно указать размер жесткого диска, обьем оперативной памяти:
После создания — виртуальный ПК, или виртуальную машину можно запустить. Такой ПК реализован в отдельном окне. Внутри — обычная операционная система, например OS Windows, в которой можно устанавливать софт и работать с ней так, будто это совсем отдельный ПК. Встроенное решение виртуальных машин Microsoft — можно назвать базовым, существует профессиональные программы, специализирующимися на этом деле, например VMware Workstation (платная), Oracle VM VirtualBox (бесплатная).
Диспетчер Hyper-V — менеджер виртуальных машин, их может быть несколько. Каждую можно запустить, если физический компьютер потянет. На картинке выше пример виртуальной машины, маленькое окошко, которое по факту является целым настоящим виртуальным ПК, где своя операционка, обьем оперативки (RAM), процессор (CPU), жесткий диск (HDD).
Для корректной работы Hyper-V необходима активация функций виртуализации в BIOS, позволяющие виртуальным машинам отправлять команды напрямую. Данные функции у Intel — это VT-x (или Intel Virtualization Technology), а также дополнительно VT-d, у AMD — SVM Mode. PS: название параметров может отличаться в зависимости от модели материнской платы.
Hyper-V — как отключить?
Hyper-V является системным компонентом. Деактивировать нужно через системные параметры отключения встроенных компонентов.
Важно: проблема в том, что некоторое ПО, которое использует технологии виртуализации — может глючить при активном Hyper-V. Пример такого ПО: эмулятор Android BlueStacks, виртуальная машина VirtualBox, это может касаться и NoxPlayer.
Стандартный способ деактивации Hyper-V:
- Откройте Панель управления. Зажмите Win + R, вставьте команду control panel, кликните ОК.
- Далее найдите значок Программы и компоненты, запустите.
- Слева выберите пункт Включение или отключение компонентов Windows.
- Далее снимаем галочку с Hyper-V, кликаем ОК.
Снимаем галочку с данного пункта:
Другие названия пункта, могут идти как дополнительные, их тоже стоит отключить: Windows Hypervisor Platform, Virtual Machine Platform.
Также существует способ отключения через консоль PowerShell, однако работоспособность не гарантируется. Запустите консоль PowerShell от имени администратора, далее укажите команду: Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All, нажмите энтер.
Надеюсь данная информация оказалась полезной. Удачи и добра, до новых встреч друзья!
Читайте также: