Виртуализация всегда была непростой технологией, но компании Microsoft удалось еще больше усложнить ее, выпуская различные продукты виртуализации с похожими по звучанию непонятными именами, такими как Hyper-V, App-V и MED-V. Чтобы уяснить роль каждого из этих решений и способы их применения в бизнесе, нужно научиться ориентироваться в лабиринте технологий и методологий виртуализации Microsoft.
Виртуализация сервера с использованием Hyper-V
Самая известная технология виртуализации Microsoft, Hyper-V, представляет собой решение для виртуализации серверов и напрямую конкурирует с VMware ESX Server. Hyper-V существует в двух вариантах: роль в Windows Server 2008 и Server 2008 R2 и бесплатный продукт Hyper-V Server 2008 R2. Общепринятое название новейшего выпуска Hyper-V — Hyper-V 2.0.
Как следует из имени, Hyper-V — решение на основе гипервизора, то есть программный уровень, обеспечивающий виртуализацию, функционирует непосредственно на физическом оборудовании. Такая платформа виртуализации отличается высоким быстродействием.
Первоначально технология Hyper-V была выпущена вместе с Server 2008. Но программный код в первом выпуске Server 2008 был предварительным. Позднее компания Microsoft выпустила окончательный вариант Hyper-V в виде программного обновления. Первая версия получила название Hyper-V 1.0. В Hyper-V 1.0 не было режима динамической миграции Live Migration; вместо этого применялся режим быстрой миграции Quick Migration. При таком подходе неизбежно некоторое время простоя, пока файлы виртуальной машины пересылаются между узлами кластера. Благодаря динамической миграции в новой версии Hyper-V 2.0 виртуальные машины перемещаются между узлами Hyper-V без простоев. Динамическая миграция обеспечивается новой технологией хранения данных: кластерными общими томами Clustered Shared Volumes (CSV) с доступом нескольких узлов кластера к файлу VM, сохраненному в общей части подсистемы хранения (LUN). В сущности, динамическая миграция — аналог технологии VMotion компании VMware. Hyper-V 2.0 также поддерживает четырехканальную симметричную мультипроцессорную обработку, а оперативная память каждой виртуальной машины увеличилось до 64 Гбайт.
В основе Hyper-V Server 2008 R2 и роли Hyper-V в Server 2008 R2 лежит одна и та же технология. В обоих продуктах одинаковый гипервизор, оба обеспечивают подключение к кластеру и динамическую миграцию. Но есть и различия. Одно из главных технологических различий — необходимость дистанционного управления Hyper-V Server 2008 R2. Локальный графический интерфейс отсутствует. Другое важное различие — лицензирование: Hyper-V Server 2008 R2 поставляется без лицензий для базовых или гостевых операционных систем. Покупатели Server 2008 и Server 2008 R2 получают по крайней мере одну лицензию для Server 2008 и дополнительные лицензии в зависимости от выпуска Server 2008:
- Server 2008 Standard Edition — дополнительная лицензия для одного активного экземпляра Windows, выполняемого на виртуальной машине;
- Server 2008 Enterprise Edition — четыре активных экземпляра Windows на виртуальных машинах;
- Server 2008 Datacenter Edition — неограниченное число активных экземпляров Windows без дополнительных затрат на приобретение лицензий.
Дополнительные сведения о Server 2008 и виртуализации можно найти на странице Virtualization with Hyper-V на сайте Microsoft (http://www.microsoft.com/
windowsserver2008/en/us/hyperv-main.aspx). Hyper-V Server 2008 R2 можно загрузить со страницы Hyper-V Server 2008 R2 на сайте Microsoft (http://www.microsoft.com/hyper-v-server/en/us/default.aspx).
Отметим, что Hyper-V — не лучшая технология для портативных компьютеров. Ее можно запускать на многих современных ноутбуках, но, поскольку гипервизор Hyper-V выполняется непосредственно на аппаратных средствах, теряются важные функции мобильности, такие как управление энергопотреблением и возможность перехода в режим ожидания или спящий. Hyper-V предпочтителен для виртуализации серверов. Для ноутбуков лучше использовать такой продукт виртуализации, как Virtual PC, размещаемый на базовой операционной системе.
Виртуализация приложений с использованием App-V
Менее известна платформа виртуализации приложений App-V — технология, полученная компанией Microsoft при покупке Softricity SoftGrid в 2006 г. Задачи, решаемые в процессе виртуализации серверов и виртуализации приложений, различны. Цель виртуализации приложений — развертывание, изоляция и управление прикладными программами.
Программы, выполняемые на клиентском компьютере, обеспечивают поддержку виртуализованных приложений. Уровень клиентской виртуализации предоставляет виртуальному приложению виртуальный экземпляр файловой системы компьютера, реестра и других системных точек ввода-вывода. Виртуальное приложение взаимодействует с виртуальной средой и не изменяет физического реестра и файловой системы базового компьютера. В результате несколько приложений, между которыми обычно могут возникать конфликты, без проблем функционируют на одном компьютере, каждое в своей виртуальной среде. Исключается и возможность перезаписи библиотек DLL одного приложения библиотеками другого. Главное преимущество App-V для предприятия — автоматическое развертывание приложений. Технология App-V интегрирована с Active Directory (AD), и администраторы могут назначать виртуальные приложения пользователям и группам, а также организовать потоковую передачу этих приложений на компьютеры конечных пользователей, не выполняя никаких действий вручную.
Для App-V необходима инфраструктура поддержки. Процесс деления на части Microsoft Application Virtualization Sequencer разбивает виртуализуемое приложение на фрагменты, пригодные для потоковой передачи на рабочие столы. Виртуальные приложения хранятся на сервере управления System Center Application Virtualization Management Server, который также обеспечивает их потоковую передачу на рабочие столы, где они исполняются с клиентской программой виртуализации.
Одно из преимуществ процесса преобразования в форму, пригодную для последовательной передачи, заключается в том, что пересылаются только необходимые части приложения. Например, такое приложение, как Microsoft Office (размером в сотни мегабайт), дробится секвенсором на множество мелких фрагментов, по отдельности передаваемых клиенту. Клиенту не приходится ждать окончания потоковой передачи сотен мегабайтов, чтобы начать работу с приложением. Ему передается только программный код, необходимый для выполнения запрошенной задачи. Размер необходимой части может составлять всего несколько мегабайтов, но приложения будут нормально выполняться в виртуальной клиентской среде. Впоследствии, по мере того как конечный пользователь запрашивает дополнительные функции и компоненты, клиенту передается только программный код, необходимый для этих функций. Виртуальные приложения выполняются на клиентском компьютере, и переданный программный код сохраняется в кэше, поэтому не требуется повторно передавать части виртуальных приложений, ранее доставленные в клиентские компьютеры.
App-V — составная часть пакета Microsoft Desktop Optimization Pack (MDOP), который предоставляется в рамках программы поддержки Software Assurance. Дополнительные сведения об App-V можно найти на сайте Microsoft Application Virtualization (http://www.microsoft.com/systemcenter/appv/default.mspx).
MED-V — совместимость со старыми программами
Вероятно, MED-V — самый непонятый продукт в семействе средств виртуализации Microsoft. Главное его назначение — обеспечить совместимость со старыми программами. MED-V построен на основе Microsoft Virtual PC, но, в отличие от среды Virtual PC (в которой пользователю предоставляется рабочий стол гостевой операционной системы с приложениями), MED-V обеспечивает безупречную интеграцию приложений, выполняемых в виртуальной машине, с рабочим столом пользователя. От конечного пользователя скрыто, что приложение в действительности выполняется в виртуальной машине. В результате исключаются проблемы, неизбежные при запуске такого продукта, как Virtual PC, обычным пользователем.
Приложения MED-V становятся доступными или публикуются для пользователей через групповую политику и выглядят как обычные программы в меню Start на системе пользователя. Запущенное пользователем приложение MED-V появляется на рабочем столе в красной рамке (в соответствии с политикой по умолчанию). Другие функции рабочего стола (например, нажатие клавиш Alt+Tab для переключения между программами) также действуют для приложений MED-V. У MED-V много общего с режимом Windows XP Mode в операционной системе Windows 7 (см. следующий раздел), но MED-V предназначается для использования в компаниях и управляется централизованно, а режим Windows XP Mode ориентирован на индивидуальное применение.
Как и App-V, MED-V — часть пакета MDOP, который предоставляется только участникам программы поддержки Software Assurance. Дополнительные сведения о MED-V можно найти на странице MDOP на сайте Microsoft (http://www.microsoft.com/windows/enterprise/products/mdop/med-v.aspx).
Virtual PC и Windows XP Mode
Продукт Virtual PC по-прежнему существует и послужил основой для таких технологий, как MED-V и Windows XP Mode. Компания Microsoft приобрела технологию Virtual PC у компании Connectix в 2003 г. и недавно выпустила новую версию Virtual PC для Windows 7. В новой версии появился долгожданный доступ к USB-устройствам. В отличие от Hyper-V, где гипервизор виртуализации функционирует непосредственно на аппаратных средствах, в Virtual PC используется хост-модель виртуализации (программа виртуализации выполняется в базовой операционной системе). Также, в отличие от технологии Hyper-V (для которой требуется 64‑разрядное оборудование), Virtual PC работает как на 32‑разрядных, так и на 64‑разрядных компьютерах.
Как и MED-V, режим Windows XP Mode обеспечивает безупречную интеграцию приложений, выполняемых в виртуальной машине, с рабочим столом пользователя. Однако в состав Windows XP Mode входит и полный экземпляр XP SP3, который составляет основу для запуска старых приложений, несовместимых с Windows 7. Компоненты Windows Virtual PC и Windows XP Mode имеются в версиях Windows 7 Starter, Home Premium, Professional, Enterprise и Ultimate.
Новая версия Windows Virtual PC совместима только с Windows 7. Если нужно виртуализовать рабочий стол Vista или XP, требуется старая версия Microsoft Virtual PC 2007, которую можно бесплатно загрузить со страницы Virtual PC 2007 на сайте Microsoft (http://www.microsoft.com/windows/virtual-pc/support/virtual-pc-2007.aspx). Новую версию Windows Virtual PC можно загрузить бесплатно, а Virtual PC и Windows XP Mode можно найти на странице Download Windows XP Mode на сайте Microsoft (http://www.microsoft.com/windows/virtual-pc/download.aspx).
Virtual Server 2005 R2
Технология Virtual Server 2005 была первой технологией виртуализации сервера, примененной компанией Microsoft. Virtual Server 2005 R2 — продукт виртуализации, размещаемый на хост-узле, то есть он функционирует поверх базовой операционной системы, такой как Windows Server 2003. С появлением Hyper-V область применения Virtual Server 2005 R2 значительно сузилась, но продукт по-прежнему используется в некоторых средах, несовместимых с Hyper-V. Например, Virtual Server 2005 R2 может работать с Windows 2003. Он совместим и со старым 32‑разрядным оборудованием, тогда как для Hyper-V необходимы 64‑разрядный компьютер и процессор, обеспечивающий виртуализацию с аппаратной поддержкой.
Формат виртуального жесткого диска Virtual Hard Disk (VHD), используемый для хранения файлов виртуальной машины, один и тот же для Virtual PC, Virtual Server 2005 R2 и Hyper-V. Управлять как Hyper-V, так и Virtual Server 2005 R2 можно с помощью диспетчера System Center Virtual Machine Manager (SCVMM). Загрузить и получить дополнительные сведения о Virtual Server 2005 R2 можно на странице Virtual Server 2005 R2 на сайте Microsoft (http://www.microsoft.com/windowsserversystem/virtualserver).
Виртуализация представлений и пакет Microsoft VDI Suite
Службам удаленного рабочего стола Remote Desktop Services (RDS) отведен последний раздел данной статьи, поскольку службы RDS, ранее известные как службы терминалов (Terminal Services), в действительности не являются технологией виртуализации. Стремясь приобщиться к мощному течению виртуализации, специалисты Microsoft по маркетингу назвали эту технологию «виртуализацией представлений» (presentation virtualization). На самом деле службы RDS представляют собой технологию дистанционного доступа, с помощью которой можно отобразить рабочий стол (или даже окно приложения на рабочем столе) на удаленном компьютере. Нажатия клавиш на клавиатуре и щелчки мыши, перехватываемые на удаленном рабочем столе, пересылаются на хост-компьютер по протоколу RDP. Фактически виртуализации не происходит; пользователь просто дистанционно управляет компьютером.
Инфраструктура управления виртуальными системами Virtual Desktop Infrastructure (VDI) представляет собой технологию централизованного управления клиентскими компьютерами. Название пакета Microsoft Virtual Desktop Infrastructure Suite, в сущности, неверно: создается впечатление, что это продукт, но в действительности это набор нескольких технологий виртуализации Microsoft, в том числе Hyper-V для размещения виртуальных машин на настольных компьютерах, SCVMM для управления виртуальными машинами на настольных компьютерах, System Center Operations Manager (SCOM) для мониторинга базовых компьютеров и виртуальных машин, System Center Configuration Manager для создания образов настольных компьютеров, Windows Server RDS с брокером сеансов служб терминалов RD Session Broker и шлюзом удаленных рабочих столов RD Gateway. Компания Microsoft выпускает две версии продукта: VDI Standard Suite и VDI Premium Suite. Главное различие между ними заключается в том, что в состав Premium Suite входит App-V, в дополнение к другим продуктам, составляющим Standard Suite. Звучит сложно и запутанно. Ни один из этих продуктов не предназначен специально для VDI, но каждый из них может выполнять различные роли при реализации VDI. Пакеты эти нужны в основном для решения сложных вопросов лицензирования.
На реализацию VDI направлены и усовершенствования в компоненте брокера соединений служб терминалов RD Connection Broker в составе продукта Server 2008 R2. Клиенты подключаются к виртуальной машине по протоколу RDP. Шлюз удаленных рабочих столов Server 2008 R2 обеспечивает доступ в Web, а брокер соединений служб терминалов направляет клиентов к нужным виртуальным машинам. Hyper-V запускает виртуальные машины с настольной клиентской операционной системой. Рабочий стол виртуальной машины пересылается клиенту через соединение RDP. Решение VDI компании Microsoft можно представить как тип служб терминалов для одного пользователя. Другие поставщики (например, Citrix) выпускают дополнительные модули управления на уровне предприятия для данной платформы.
Дополнительные сведения об усовершенствованиях служб Remote Desktop Services в Server 2008 R2 можно найти на странице Remote Desktop Services на сайте Microsoft (http://www.microsoft.com/windowsserver2008/en/us/rds-product-home.aspx). Дополнительная информация о пакете Microsoft VDI Suite опубликована на странице Desktop Virtualization на сайте Microsoft (http://www.microsoft.com/virtualization/en/us/products-desktop.aspx).
Жизнь в виртуальном мире
Виртуализация быстро превратилась из специальной технологии, используемой в лабораториях и в исследовательской работе, в основную технологию подразделений ИТ. Компания Microsoft предоставляет много различных технологий виртуализации. Каждая из них ориентирована на решение тех или иных проблем бизнеса. Я надеюсь, что вам удастся не заблудиться в лабиринте технологий виртуализации Microsoft.
Майкл Оти (mikeo@windowsitpro.com) — редактор Windows IT Pro и президент компании TECA (Портленд, шт. Орегон), занимающейся разработкой программного обеспечения и консалтингом