Две архитектуры
Архитектура как VMware ESX Server 3.5, так и Microsoft Hyper-V основана на применении гипервизора. Благодаря такой архитектуре производительность «чистого железа» у обеих платформ значительно выше, чем у прежних продуктов виртуализации, таких как Microsoft Virtual Server 2005 и VMware Virtual Server 2.0. В прошлом программы виртуализации запускались поверх базовой операционной системы, которая создавала дополнительную нагрузку и увеличивала путь исполнения команд для виртуальных машин (VM), функционирующих в базовой среде виртуализации. Но такие продукты, как ESX Server и Hyper-V, рассчитаны на запуск гипервизора непосредственно на аппаратных средствах компьютера. Несмотря на сходство архитектуры на основе гипервизора, в продуктах есть важные различия, как показано на рисунке.
Рисунок. Гипервизоры ESX Server 3.5 и Hyper-V
В обоих случаях гипервизор работает непосредственно на аппаратных средствах компьютера. Однако в ESX Server драйверы устройств являются частью гипервизора, что существенно увеличивает его размер. Кроме того, драйверы устройств поставляются изготовителями оборудования, что вносит в гипервизор сторонний программный код и ограничивает круг устройств, с которыми совместим ESX Server. Несмотря на это, ESX Server поддерживается большинством серверов, выпускаемых ведущими поставщиками, такими как HP, Dell и IBM. Многие из этих поставщиков выпускают компьютеры с заранее установленным программным обеспечением VMware ESX Server.
В Hyper-V, напротив, используется микроядро гипервизора, в котором содержится минимальный программный код, необходимый для планирования и разделения аппаратных ресурсов между активными виртуальными машинами. В гипервизоре Hyper-V нет драйверов устройств и стороннего программного кода, что обеспечивает оптимальную производительность и повышает безопасность. Hyper-V применяет собственную модель драйверов устройств Windows и размещает драйверы устройств в гостевых VM. Дополнительные сведения об архитектуре Hyper-V приведены в статье «Знакомство с Windows Server 2008 Hyper-V», опубликованной в этом же номере журнала.
Оба продукта управляются из первого раздела VM. В ESX Server этот раздел VM, обычно именуемый служебной консолью, основан на оболочке Linux и управляется из командной строки. Однако можно загрузить более простой в использовании клиент Virtual Infrastructure Client для Web-консоли ESX Server. Hyper-V также управляется с помощью VM, работающей в первом разделе, именуемом родительским. Помимо управления VM, родительский раздел используется для запуска виртуальных машин с унаследованными операционными системами, такими как Windows NT и Windows 2000, которые не могут задействовать новую архитектуру VMBus и должны применять старую модель эмуляции аппаратных средств.
Сопоставление функциональности
В отличие от прежних версий Virtual Server 2005 R2, благодаря новой архитектуре и 64-разрядному фундаменту набор функций Hyper-V сравнялся с возможностями VMware ESX Server. В табл. 1 приведено сравнение возможностей VMware ESX Server 3.5 и Microsoft Server 2008 Hyper-V.
Основные различия начинаются собственно в гипервизоре. Как объяснялось выше, гипервизор ESX Server — тяжеловес, который содержит драйверы устройств. В отличие от него «тонкий» гипервизор Hyper-V не содержит драйверов и стороннего программного кода. Драйверы устройств Hyper-V находятся в гостевой операционной системе, благодаря чему гипервизор становится более компактным и безопасным. Обе платформы поддерживают 32-разрядные x86 и 64-разрядные x64 гостевые операционные системы и большие виртуальные машины с оперативной памятью объемом 64 Гбайт на одну VM. В целях более эффективного использования памяти ESX Server позволяет виртуальным машинам совместно использовать общие блоки памяти. В результате увеличивается число одновременно активных VM, но возникает дополнительная рабочая нагрузка. Hyper-V не обеспечивает разделение памяти между VM. Обе платформы поддерживают загрузку виртуальных машин из устройств iSCSI или Fibre Channel SAN. У VMware есть преимущество в динамической миграции (т. е. перемещении активных VM с одного базового компьютера на другой). Однако для этого необходим продукт VMware VirtualCenter Server. Hyper-V не поддерживает динамическую миграцию, но в сочетании с Windows Server 2008 Enterprise Edition и Microsoft System Center Virtual Machine Manager обеспечивает процедуру, именуемую быстрой миграцией: состояние активной VM быстро сохраняется, а затем VM перемещается на другой базовый компьютер с сохранением состояния. Для быстрой миграции требуется кластеризация с автоматическим переходом на другой ресурс. ESX Server ограничен 128 активными виртуальными машинами (вероятно, достаточно для всех потребителей), а Hyper-V ограничивается только доступными системными ресурсами. В отличие от настольных продуктов виртуализации, ни один продукт не поддерживает аудио или USB в гостевых системах. ESX Server обеспечивает архивирование гостевых VM с использованием встроенной функции Consolidated Backup, которая делает моментальный снимок VM и записывает его на сервер архивирования. Hyper-V поддерживает динамическое архивирование VM с использованием службы Volume Shadow Copy Service (VSS).
Необходимый опыт
Установить обе системы сравнительно несложно. Основная процедура установки ESX Server проще, чем у Hyper-V. Хотя процедура установки ESX Server имеет текстовый интерфейс, пройти по ее экранам просто, и спустя примерно 20 минут был получен полностью готовый сервер.
Собственно процесс установки Hyper-V несложен, но последующая установка системы на Windows Server Core — фрагментарный ручной процесс, для которого требуется хорошее знание командной строки Windows. Роль виртуализации Hyper-V можно установить на полном экземпляре Server 2008 или на минимальном экземпляре Server Core. Server Core — предпочтительный вариант для размещения сервера виртуализации, так как из него удалены все внешние компоненты Windows (например, графическая оболочка, Internet Explorer, Outlook). Такой минималистский подход снижает накладные расходы и повышает эффективность Server Core. Кроме того, повышается безопасность, благодаря меньшей площади атаки, и надежность в результате уменьшения числа компонентов, к которым необходимо применять обновления. Установка операционной системы Server Core заняла около 15 минут; для выполнения последующих команд настройки системы потребовалось еще около 20 минут и пара перезагрузок.
Для управления системой требуется установить удаленное соединение через консоль управления Hyper-V (экран 1). Запустить консоль можно на компьютере Windows Server 2008 с установленным Hyper-V или на компьютере с обновленной операционной системой Windows Vista, как описано в статье «Availability of the Windows Vista Service Pack 1 management tools for the Hyper-V release candidate» (support.microsoft.com/?kbid=949758). Интерфейс на основе Microsoft Management Console (MMC) 3.0 знаком любому администратору Windows.
В левой панели консоли можно управлять несколькими экземплярами сервера Hyper-V. В центральной панели Virtual Machines отображаются виртуальные машины выбранного экземпляра сервера. Виртуальными машинами можно управлять, щелкая на них правой кнопкой мыши и выбирая команды из контекстного меню. Все задачи управления Hyper-V можно выполнять из консоли Hyper-V Management.
Процедура управления ESX Server иная. Здесь используется командная оболочка на основе Linux, вероятно удобная для администратора Linux, но мне, например, редко приходится встречаться с Linux на практике. К счастью, VMware Virtual Infrastructure Client — графический инструмент, который можно загрузить из нескольких Web-узлов. Клиент VMware Virtual Infrastructure Client показан на экране 2.
С помощью клиента VMware Virtual Infrastructure Client можно создавать виртуальные машины и управлять ими. Однако в нем нет таких функций управления сервером, как добавление и удаление сетевых плат. Для решения такого рода задач необходима командная строка.
Использование встроенных консолей для управления несколькими серверами — лишь один аспект работы с виртуальным сервером. Если требуется управлять многочисленными платформами для размещения виртуальных серверов, необходимы более мощные инструменты управления. Их предлагают как VMware, так и Microsoft. Более подробная информация об инструментах управления виртуализацией приведена во врезке «Управление виртуализацией».
Удачная цена
Существенное различие между VMware ESX Server и Microsoft Hyper-V заключается в цене. Вопреки тенденции производства бесплатных продуктов виртуализации, ESX Server всегда был коммерческой опорой семейства VMware.
То обстоятельство, что ESX Server остается платным, замедляет распространение продукта. Тем не менее многие компании выбирают данное решение в качестве основной платформы виртуализации благодаря высокой производительности и надежности ESX Server. Для нашего обзора был выбран продукт VMware Infrastructure Foundation, в который входят ESX Server 3.5, VMware Virtual Machine File System (VMFS), VMware Virtual Symmetric Multi-Processing (vSMP), агент VirtualCenter, VMware Consolidated Backup и диспетчер обновлений VMware Update Manager.
В отличие от ESX Server, Hyper-V — составная часть операционной системы Server 2008 и предоставляется ее обладателям практически бесплатно. Hyper-V входит в следующие 64-разрядные редакции Windows Server 2008:
-
Windows Server 2008 Standard Edition x64.
-
Windows Server 2008 Enterprise Edition x64.
-
Windows Server 2008 Datacenter Edition x64.
Hyper-V — 64-разрядная технология, поэтому для нее требуется оборудование x64 и один из 64-разрядных выпусков Server 2008. Как ни странно, существует три редакции Windows Server 2008 без Hyper-V (с подходящим названием Windows Server 2008 without Hyper-V), но разница в цене ничтожная, всего 28 долл. Hyper-V также отсутствует в Windows Web Server 2008, Windows HPC Server 2008 и Windows Server 2008 для компьютеров с процессором Itanium.
В табл. 2 приведены цены для двух протестированных конфигураций. В каждом случае система была настроена на запуск восьми VM, всех с Windows Server 2008 Enterprise Edition. Цены в таблице приведены розничные. Большинство компаний пользуется оптовыми скидками при приобретении операционной системы Windows Server. Помните, что в производственной среде также необходимы клиентские лицензии CAL для доступа к операционной системе Windows Server. Розничные цены в табл. 2 указаны для 25 лицензий (но обычно компаниям требуется больше).
Windows Server 2003 R2 и Server 2008 Enterprise Edition обычно допускают использование до четырех активных виртуальных экземпляров Windows без дополнительной оплаты. Цена одинакова при использовании продуктов виртуализации как Microsoft, так и VMware. Для запуска восьми активных VM требуется две лицензии Server 2008 Enterprise Edition. Для выпусков Windows Server 2003 R2 Datacenter Edition и Server 2008 Datacenter Edition, не рассмотренных в данной статье, допускается неограниченное число виртуальных экземпляров Windows независимо от платформы виртуализации.
Какой продукт лучше?
Базовые возможности виртуализации и функциональные наборы Microsoft Hyper-V и VMware ESX Server очень близки, и в этой области ни один продукт не имеет преимущества. ESX Server обеспечивает более широкую совместимость с более многочисленными дистрибутивами Linux и располагает несколькими передовыми функциями, в частности динамической миграции и разделения памяти между виртуальными машинами. Но управление из командной строки непривычно для большинства администраторов Windows, ограниченная совместимость с оборудованием сужает аппаратную платформу, а цена выше, чем у Hyper-V (который, в сущности, является компонентом Windows Server 2008). Во второй части статьи будет дан сравнительный анализ системных функций управления ESX Server и Hyper-V и приведены интересные результаты тестов производительности.
Майкл Оти (mikeo@windowsitpro.com) — технический директор Windows IT Pro и SQL Server Magazine
Таблица 1. Сопоставление функциональных возможностей EXS Server 3.5 и Hyper-V
Таблица 2. Сравнение цен EXS Server 3.5 и Hyper-V
Управление виртуализацией
Основное внимание в данном обзоре уделяется базовым функциям виртуализации Hyper-V и ESX Server, но требования многих компаний не ограничиваются ими. Им необходимо расширенное управление. Как объясняется в статье, Hyper-V и ESX Server располагают административными консолями с похожими функциями управления VM, такими как возможность создавать виртуальные машины, запускать и останавливать их. Но как Microsoft, так и VMware выпускают продукты с функциями управления, далеко превышающими базовые возможности. VMware Virtual Infrastructure 3 в сочетании с VirtualCenter Server обеспечивает кластеризацию VM с высокой отказоустойчивостью, архивацию и даже динамическое перемещение виртуальных машин между хост-узлами с использованием технологии VMotion.
Аналогично диспетчер Microsoft System Center Virtual Machine Manager предоставляет передовые функции управления VM, в том числе центральную библиотеку образов VM, шаблоны VM, возможность предоставления VM конечным пользователям и физическую-виртуальную (P2V) и виртуальную-физическую (V2V) миграцию систем. Сравнительный анализ VMwareТs Virtual Infrastructure 3 и MicrosoftТs System Center Virtual Machine Manager будет опубликован в одном из следующих номеров Windows IT Pro.