гипервизор что это такое

Архитектура 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 рода запускается на «голом железе».

Гипервизор 2 рода

В отличие от 1 рода, гипервизор 2 рода запускается внутри хостовой ОС (см. рис.2).

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое
Рис.2 Гипервизор 2 рода запускается внутри гостевых ОС

Виртуальные машины при этом запускаются в пользовательском пространстве хостовой ОС, что не самым лучшим образом сказывается на производительности.
Примерами гипервизоров 2 рода служат MS Virtual Server и VMware Server, а так же продукты десктопной виртуализации – MS VirtualPC и VMware Workstation.

Монолитный гипервизор

Гипервизоры монолитной архитектуры включают драйверы аппаратных устройств в свой код (см. рис. 3).

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое
Рис. 3. Монолитная архитектура

Микроядерная архитектура

При микроядерной архитектуре драйверы устройств работают внутри хостовой ОС.
Хостовая ОС в этом случае запускается в таком же виртуальном окружении, как и все ВМ, и именуется «родительской партицией». Все остальные окружения, соответственно – «дочерние». Единственная разница между родительской и дочерними партициями состоит в том, что только родительская партиция имеет непосредственный доступ к оборудованию сервера. Выделением памяти же и планировкой процессорного времени занимается сам гипервизор.

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое
Рис. 4. Микроядерная архитектура

Архитектура Hyper-V

На рис.5 показаны основные элементы архитектуры Hyper-V.

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое
Рис.5 Архитектура Hyper-V

Как видно из рисунка, гипервизор работает на следующем уровне после железа – что характерно для гипервизоров 1 рода. Уровнем выше гипервизора работают родительская и дочерние партиции. Партиции в данном случае – это области изоляции, внутри которых работают операционные системы. Не нужно путать их, к примеру, с разделами на жестком диске. В родительской партиции запускается хостовая ОС (Windows Server 2008 R2) и стек виртуализации. Так же именно из родительской партиции происходит управление внешними устройствами, а так же дочерними партициями. Дочерние же партиции, как легко догадаться – создаются из родительской партиции и предназначены для запуска гостевых ОС. Все партиции связаны с гипервизором через интерфейс гипервызовов, предоставляющий операционным системам специальный API. Если кого-то из разработчиков интересуют подробности API гипервызовов — информация имеется в MSDN.

Родительская партиция

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое
Рис.6 Компоненты родительской партиции Hyper-V

Стек виртуализации
Рабочий процесс виртуальной машины (VMWP)

Для управления виртуальной машиной из родительской партиции запускается особый процесс – рабочий процесс виртуальной машины (VMWP). Процесс этот работает на уровне пользователя. Для каждой запущенной виртуальной машины служба VMMS запускает отдельный рабочий процесс. Это позволяет изолировать виртуальные машины друг от друга. Для повышения безопасности, рабочие процессы запускаются под встроенным пользовательским аккаунтом Network Service.
Процесс VMWP используется для управления соответствующей виртуальной машиной. В его задачи входит:
Создание, конфигурация и запуск виртуальной машины
Пауза и продолжение работы (Pause/Resume)
Сохранение и восстановление состояния (Save/Restore State)
Создание моментальных снимков (снапшотов)
Кроме того, именно рабочий процесс эмулирует виртуальную материнскую плату (VMB), которая используется для предоставления памяти гостевой ОС, управления прерываниями и виртуальными устройствами.

Виртуальные устройства
Драйвер виртуальной инфраструктуры (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, но поддерживающая компоненты интеграции

Существуют так же ОС, не относящиеся к семейству 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 и была подготовлена статья.

Источник

Гипервизор: что это такое, роль в виртуализации, типы и сравнение

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

Гипервизор — технология развертывания программного обеспечения на физическом оборудовании с использованием виртуализации.

Инструмент ускоряет и упрощает разработку, тестирование и поддержку программного обеспечения, а также экономит ресурсы на развертывании дорогостоящих серверных систем.

Selectel предлагает современные технологии виртуализации серверов (VPS/VDS), а также рабочих мест (VDI). Мы используем аппаратные ресурсы на базе процессоров Intel® Xeon®, а также SSD-накопителей, обеспечивая минимальное время отклика, высокую производительность и надежность. Для серверной виртуализации применяются решения VMware и KVM.

Основные задачи гипервизора:

История гипервизоров

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

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

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

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

Проблемы безопасности гипервизоров

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

В настоящее время разрабатываются различные подходы по обнаружению руткитов на базе гипервизоров:

Контейнеры или гипервизоры

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

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

Гипервизор виртуализирует необходимые для работы ОС аппаратные ресурсы. При использовании гипервизоров возрастает потребность в наращивании аппаратных мощностей (дисковых устройств, CPU, памяти и пр.).

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

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

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

Также стоит обратить внимание и на Jailhouse. Решение компании Siemens работает на «железе», при этом запускается из-под работающей ОС Linux. При работе контейнер создает в ОС изолированные разделы для выполнения пользовательских приложений.

Типы гипервизоров

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

Существует два основных вида гипервизоров. Гипервизоры первого типа (сюда входят решения Hyper-V, KVM, ESXi) работают на аппаратном уровне без необходимости установки какой-либо ОС на хост. Поэтому их еще называют аппаратными. Гипервизорам второго типа (VMware Workstation, Oracle Virtual Box, OpenVZ) необходима ОС для доступа монитора виртуальных машин к аппаратным ресурсам хоста.

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

Сравнение гипервизоров

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

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

Hyper-V: для серверного оборудования под управлением Windows Server есть базовая роль Hyper-V. Кроме того, на рынке есть специальное решение Hyper-V Server. Операционная система Windows Server может поставляться в двух редакциях — Datacenter и Standard. Стандартная версия на одной лицензионной копии позволяет развернуть только две виртуальные машины. В версии Datacenter их число не ограничивается.

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

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

Эти особенности не критичны, за исключением момента с лицензированием. Кроме того, как и отмечалось ранее, решение может подойти IT-специалистам, планирующим разворачивать только Linux-виртуализацию.

VMware ESXi: в основе решения находится облегченное Linux-ядро VMkernel, содержащее необходимые для виртуализации технологии и приложения. Поставляется внутри продукта VMware vSphere. Лицензия покупается на каждый физический CPU сервера. Объем ОЗУ и виртуальных машин не учитываются при расчете стоимости лицензии.

VMware также предлагает и бесплатные решения для виртуализации, однако, они подходят только для любительского или полупрофессионального использования, поскольку имеют ряд существенных ограничений по функционалу. Так, например, бесплатная версия этого гипервизора 1 типа предоставляет API только для чтения данных. У виртуальной машины не может быть больше 8 vCPU, не предусмотрена работа с бэкапами с помощью продуктов Veeam и другие технологии, необходимые для корпоративного сегмента.

Основной недостаток Hyper-V по сравнению с VMware — это отсутствие USB Redirection. Она необходима для подключения USB оборудования к виртуальным машинам. Вместо нее в Hyper-V предлагается Discrete Device Assignment. Однако, Hyper-V может уменьшать дисковое пространство виртуальных машин, а не только расширять его, как VMware.

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

При выборе гипервизора особое внимание следует уделить инструментам управления виртуальными машинами. У Hyper-V это Virtual Machine Manager (VMM), поддерживающий создание, клонирование, развертывание и другие операции с виртуальными машинами.

Инструмент управления от VMware называется vSphere. Он предполагает наличие ESXi хостов и vCenter Server для централизованного управления.

KVM — open-source гипервизор: предназначен для серверов на базе Linux/x86, поддерживает аппаратные расширения (Intel-VT и AMD-V).

Первоначально работал только с архитектурой x86, но актуальные версии KVM поддерживают различные CPU и гостевые ОС, в т.ч. Windows, Linux, BSD и пр.

Богатый функционал KVM сделал его популярным и широко распространенным. В настоящее время гипервизор активно используется во многих сетевых проектах (Wiki-ресурсы, финансовые сервисы, транспортные системы, государственный сектор и пр.).

Решение считается быстрым и за счет интеграции в ядро Linux.

Xen (XenServer, Citrix Hypervisor): первый публичный релиз тонкого гипервизора был выпущен в 2003 году. В 2007 году проект был поглощен Citrix. Продукт является кроссплатформенным гипервизором с поддержкой аппаратной виртуализации и паравиртуализации (из-за этого его часто относят к гибридным гипервизорам). Объем кода минимален, т.к. большая часть модулей вынесена за пределы гипервизора. Исходный код открыт, что дает специалистам неограниченные возможности для модификаций продукта.

Oracle VM VirtualBox: кроссплатформенный модульный гипервизор для операционных систем Linux, macOS, FreeBSD и др. Создан в корпорации Sun Microsystems в 2007 году. После поглощения разработчика Oracle проект продолжил развитие под другим брендом. Исходный код базовой версии открыт и распространяется по лицензии GNU GPL, что послужило причиной высокой популярности гипервизора. Отличительная особенность гипервизора — возможность работы с 64-битными гостевыми ОС, даже если ОС хоста 32-битная.

VMware Workstation: первая версия гипервизора вышла в 1999 году. Решение является проприетарным для x86-64 ОС хоста Windows, Linux, Ubuntu, CentOS. Поддерживает более 200 гостевых операционных систем. Для ознакомления и тестирования предоставляется бесплатная версия с ограничениями по функциональности.

Гибридные гипервизоры: для улучшения стабильности, безопасности и производительности описанные выше подходы к виртуализации (непосредственная работа «на железе» и использование основной ОС хоста) комбинируются. В результате на рынке появляются гибридные решения. В последние годы в IT-сообществе к гибридным гипервизорам причисляют Xen и Hyper-V, поскольку их актуальные версии сочетают в себе оба подхода. Таким образом, просматривается тенденция к размытию границ между видами гипервизоров.

Источник

Гипервизор – что это? Как работает виртуализация

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

Системы виртуализации и гипервизор

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

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

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

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

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

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такоеСхема работы виртуальной машины

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

Гипервизоры принято делить на два типа. Но есть еще и так называемый гибридный гипервизор, сочетающий в себе свойства обоих типов.

Одно из важнейших требований к гипервизору – безопасность

В чем особенности работы гипервизоров 1 типа?

Гипервизор первого типа называют еще микроядром, тонким гипервизором, автономным гипервизором, исполняемым на «голом железе». Гипервизор первого типа проще всего воспринимать как специфическую компактную операционную систему, которая устанавливается прямо на «железо» (bare-metal server) и имеет основные признаки ОС:

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

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такоеПринцип работы гипервизора 1 типа

Супервизор – центральный управляющий модуль, ядро операционной системы. Может состоять из нескольких частей: супервизора программ, диспетчера задач, супервизора ввода-вывода и других.

Большинство современных процессоров Intel и AMD для десктопов и серверов на аппаратном уровне поддерживает технологию виртуализации и разделение работы ОС на два уровня привилегий: режим ядра (привилегированный) и пользовательский режим. При этом полномочия прикладной программы по управлению ресурсами компьютера существенно урезаны.

У ПО гипервизора первого типа есть очень важная особенность – размер его кода на два порядка (т.е. в сотни раз) меньше, чем у большинства современных операционных систем. Это обеспечивает настолько же меньшее количество возможных ошибок, приводящих к зависанию всей системы. Сбой в работе ОС на одной из виртуальных машин пользователя не должен повлиять на работу всех соседних машин на том же физическом оборудовании.

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

Системные вызовы также перехватываются и выполняются внутри гипервизора, но со стороны каждой гостевой ОС все выглядит так, как должно быть при обычном выполнении инструкций в ее режиме ядра. Иными словами, гипервизор создает «иллюзию» для гостевой операционной системы, что ее код выполняется хостом на уровне железа, в привилегированном режиме, хотя де-факто она функционирует в режиме пользователя. Если произойдет крах одной из гостевых систем, работа остальных будет продолжаться.

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

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

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

К первому типу гипервизоров можно отнести Xen, VMware ESXi, Hyper-V и ряд других.

Xen (Xenserver, Citrix Hypervisor)

Тонкий гипервизор Xen был разработан в рамках исследовательского проекта лаборатории Кембриджского университета и в 2003 году компанией XenSource выпущен первый публичный релиз. С 2007 года XenSource поглощена Citrix, в результате чего часть продуктов получила новые названия. Xen представляет собой кроссплатформенный гипервизор, поддерживающий аппаратную виртуализацию и паравиртуализацию. Содержит минимальный объем кода, поскольку большая часть компонентов вынесена за пределы гипервизора. Xen – гипервизор с полностью открытым кодом, лицензии GNU GPL 2, что дает неограниченные возможности модифицировать продукт. За счет поддержки паравиртуализации и аппаратной виртуализации Xen относят также к гибридному типу гипервизоров.

VMWARE ESXI

Автономный гипервизор VMware ESXi – решение для виртуализации класса Enterprise, разработанное компанией VMware. Как и у других продуктов VMware, ESXi доступен в бесплатной версии, с ограниченным функционалом, и платной, с расширенными возможностями, – например, централизованное управление всеми виртуальными машинами на всех хостах проекта с помощью платформы vCenter. Но даже бесплатная версия гипервизора успешно реализует все обязательные функции гипервизора. Пользователи отмечают высокую стабильность продукта, простоту в администрировании, минимальный код, широкий спектр поддерживаемых гостевых систем – основные версии ОС, которые используются в корпоративном секторе.

HYPER-V

Системное решение Microsoft для аппаратной виртуализации, предназначенное для x64-систем. Существует в двух вариантах – как роль в серверных ОС семейства Windows (Windows Server 2008, Windows Server 2012 и др., а также в x64-битной Pro- и Enterprise-версии систем Windows 8, Windows 8.1, Windows 10) и в виде отдельного продукта Microsoft Hyper-V Server. Многие из тех, кто привык работать с Microsoft, считают Hyper-V самым удобным и юзабильным решением, если речь заходит о виртуализации. К слову, облако Azure полностью построено на нативных продуктах корпорации MS.

Гипервизор второго типа работает как один из процессов, выполняемых основной ОС

Как работают гипервизоры 2 типа?

Гипервизор второго типа называется также хостовым (hosted). Он представляет собой дополнительный программный слой, расположенный поверх основной операционной системы.

Фактически гипервизор второго типа работает как один из процессов, выполняемых основной ОС, чаще всего – Linux. В этом случае полномочия гипервизора значительно скромнее: он управляет гостевыми операционными системами, а эмуляцию и управление физическими ресурсами берет на себя хостовая ОС.

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такоеПринцип работы гипервизоров 2 типа

Наиболее популярные гипервизоры второго типа – Oracle VM VirtualBox, VMware Workstation, KVM.

ORACLE VM VIRTUALBOX

Oracle VM VirtualBox – модульный кроссплатформенный гипервизор для операционных систем Linux, macOS, Microsoft Windows, FreeBSD, Solaris/OpenSolaris, ReactOS, DOS и других от корпорации Oracle. Был создан в 2007 г. в корпорации Sun Microsystems, затем, после поглощения ее Oracle, работа над гипервизором продолжилась. Исходный код базовой версии открыт по лицензии GNU GPL, поэтому гипервизор пользуется популярностью и доступен для неограниченного модифицирования. Интересно, что VirtualBox способен поддерживать 64-битные гостевые системы, даже если ОС хоста 32-битная.

VMWARE WORKSTATION

Первая версия гипервизора VMware Workstation, разработанного компанией VMware, входящей в EMC Corporation, увидела свет в 1999 году. Это проприетарное ПО, работающее с x86-64 операционными системами хоста Microsoft Windows, Linux, Ubuntu, CentOS. Поддерживает более 200 гостевых ОС. Для теста можно воспользоваться бесплатной версией Workstation Player, которая сильно урезана в функциональности, по сравнению с версией Pro.

Kernel-based Virtual Machine, KVM, – гипервизор, созданный в октябре 2006 года и почти сразу был интегрированный с основной веткой ядра Linux версии 2.6.20., выпущенной в начале 2007 года. Позже KVM был адаптирован как модуль ядра в FreeBSD. В KVM включены загружаемый модуль ядра kvm.ko, отвечающий за виртуализацию, процессорно-специфический загружаемый модуль для AMD или Intel kvm-amd.ko, либо kvm-intel.ko, и компоненты пользовательского режима QEMU. KVM – полностью открытое ПО по лицензии GNU GPL и GNU LGPL. Кстати, при создании публичного облака SIM-Cloud IaaS инженеры использовали для виртуализации KVM QEMU.

Гибридный гипервизор управляет процессором и памятью, а устройствами ввода-вывода – через гостевые ОС

Что такое гибридные гипервизоры?

Гибридные гипервизоры обладают частью признаков как первого, так и второго типов (сочетание «тонкого» гипервизора и специальной, работающей «на железе» служебной ОС под его управлением). Гипервизор управляет напрямую процессором и памятью, а через служебную ОС гостевые получают доступ к устройствам ввода-вывода.

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

Паравиртуализация модифицирует гостевые ОС для исполнения в виртуализированной среде

Что такое паравиртуализация?

Популярным решением является паравиртуализация – установка специально подготовленной гостевой ОС, ядро которой изменяется для эффективной работы с гипервизором 2 типа. Конечно же, речь не может идти о модификации проприетарных систем с закрытым кодом, таких, как Windows. Зато для доработки большинства версий Linux разрешение владельца не требуется.

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

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

Что такое контейнерные решения?

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

Среди контейнеров широко распространен гипервизор OpenVZ, на котором основана платформа Virtuozzo. Преимуществом решения OpenVZ – хорошая производительность, максимальное использование ресурсов физического сервера за счет высокой плотности размещения ВМ.

Интересным также является контейнерное решение Jailhouse от Siemens. Этот гипервизор работает на «железе», но запускается на работающей системе Linux и обеспечивает ее разделение на изолированные «ячейки» – разделы системы для выполнения приложений пользователя.

гипервизор что это такое. Смотреть фото гипервизор что это такое. Смотреть картинку гипервизор что это такое. Картинка про гипервизор что это такое. Фото гипервизор что это такое

Узнайте больше про высокодоступное публичное облако SIM-Cloud

Источник

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

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