В середине 2008 г. в журнале Windows IT Pro/RE была опубликована серия из двух статей о сравнительном тестировании платформы виртуализации Microsoft Hyper-V и продукта VMware ESX Server, занимающего ведущее положение на рынке. В статье, состоявшей из двух частей, сравнивались функциональные возможности, условия лицензирования и производительности двух продуктов. Выяснилось, что ESX Server заметно превосходит конкурента по показателям установки и управления, а также слегка опережает по производительности. Однако предварительная версия Hyper-V выглядела достойно и зарекомендовала себя как успешная платформа виртуализации.

Со времени первого сравнительного обзора на рынке виртуализации произошли большие перемены. Во-первых, выпущена RTM-версия Hyper-V: компания Microsoft внесла дополнительные улучшения в продукт с целью повышения производительности. Во-вторых, появилась автономная версия Hyper-V под названием Hyper-V Server 2008. Дополнительные сведения о ней приведены во врезке «Автономная версия Hyper-V Server 2008». В третьих, обе компании изменили условия лицензирования своих продуктов. Hyper-V Server 2008 и VMware ESXi можно загрузить бесплатно. Более подробную информацию о VMware ESXi можно найти во врезке «ESXi и ESX Server».

Учитывая эти изменения, было решено заново протестировать функции управления и оценить производительность, а также рассмотреть дополнительные аспекты продуктов, на которые обратили внимание читатели и представители Microsoft и VMware после первого тестирования. Перейдем к сравнению ESX Server и Hyper-V.

Различия гипервизоров

И ESX Server, и Hyper-V основаны на применении гипервизоров, но не все гипервизоры одинаковы. В архитектуре продуктов есть существенные различия. Многие ИТ-специалисты ошибочно полагали, что, поскольку Hyper-V поставляется с Windows Server 2008, значит, это продукт виртуализации, размещаемый поверх операционной системы Server 2008. Но это не так. Как и ESX Server, гипервизорный продукт Hyper-V функционирует непосредственно на аппаратных средствах компьютера.

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

Сравнение архитектур Hyper-V и ESX Server

В ESX Server драйверы — часть самого гипервизора. В этом случае размер гипервизора довольно велик. Кроме того, при таком подходе гипервизор дополняется сторонним программным кодом. Компания VMware тестирует и сертифицирует драйверы, но проектируются они поставщиками оборудования. Список оборудования, совместимого с ESX Server 3.5 и ESXi, приведен во врезке «Дополнительная литература». Hyper-V размещает драйверы в родительском разделе, вне гипервизора. В таблице 1 перечислены преимущества и недостатки такого подхода.

Реализации собственно гипервизора также различаются. 32-разрядное ядро гипервизора ESX Server обеспечивает совместимость как с 32-, так и с 64-разрядными компьютерами. Однако оно не препятствует работе с 64-разрядными гостевыми операционными системами; ESX Server также поддерживает 64-разрядные гостевые операционные системы на 64-разрядной аппаратной платформе. В следующем выпуске ESX Server планируется переход на 64-разрядный гипервизор. В Hyper-V уже используется 64-разрядный гипервизор, что позволяет надеяться на повышение производительности и масштабируемости. Кроме того, компьютер, на котором устанавливается Hyper-V, должен обеспечить виртуализацию с использованием ресурсов процессора (например, процессоров AMD-V и Intel-VT). Для Hyper-V необходим процессор AMD с функциями No Execute (NX) или процессор Intel с функциями Execute Disable (XD). Эти функции стандартны для большинства современных серверов, но тем не менее имеются не во всех компьютерах.

Поддержка гостевых операционных систем

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

Как можно было ожидать, в список гостевых операционных систем, совместимых с Hyper-V, входят все недавно выпущенные операционные системы Microsoft, и лишь немногие системы других компаний. В таблице 3 перечислены гостевые операционные системы, совместимые с Hyper-V. Полный список гостевых ОС, поддерживаемых продуктом, приведен в материалах, перечисленных во врезке «Дополнительная литература». В списке операционных систем, поддерживаемых Hyper-V, преобладают продукты Microsoft; единственное исключение — SUSE Linux, но эта версия Linux ограничена одним виртуальным процессором, что значительно слабее поддержки Linux в ESX Server. Представители Microsoft утверждают, что Hyper-V работает с другими операционными системами, в том числе с различными дистрибутивами Linux, но в действительности Hyper-V не поддерживает никаких дистрибутивов Linux, кроме SUSE, относительно которого компания Microsoft заключила соглашение с Novell. Компания Microsoft опубликовала исходный текст компонентов интеграции Linux Hyper-V, но предоставила поставщикам самостоятельно заниматься его адаптацией — важный момент, так как VMBus-совместимые драйверы, обеспечивающие оптимальную производительность, устанавливаются как часть компонентов интеграции. Без них гостевая операционная система должна выполняться в медленном режиме эмуляции устаревших продуктов. В настоящее время не существует компонентов интеграции для других версий Linux, но потребители могут запускать другие дистрибутивы Linux в качестве неподдерживаемых устаревших гостевых операционных систем.

Встроенные функции управления

В этом обзоре рассматриваются исключительно платформы виртуализации, а не комплексы управления, предоставляемые поставщиками как отдельные продукты. Различия не всегда очевидны: многие сторонники VMware считают, что VMware VMotion — самое существенное различие между продуктами; но, несмотря на важность VMotion, это не компонент ESX Server, а составная часть комплекса управления VMware Infrastructure 3 (VI3). В одной из следующих статей мы сравним VI3 и комплекс управления Microsoft, System Center Virtual Machine Manager (SCVMM). А пока рассмотрим встроенные функции управления продуктов.

ESX Server. Клиент Virtual Infrastructure используется для управления ESX Server. Чтобы загрузить клиент в локальный компьютер, достаточно направить браузер на компьютер ESX Server и щелкнуть на ссылке Download VMware Infrastruture Client. Весь процесс занимает около двух минут. Клиент Virtual Infrastructure располагает полнофункциональным интерфейсом для управления большим количеством виртуальных машин VMware на одном хост-компьютере ESX Server. Пользователь может создавать виртуальные машины и управлять ими, а также управлять рядом параметров хост-компьютера, таких как конфигурация виртуальных коммутаторов, время, DNS-сервер и действия по автоматическому запуску и остановке виртуальных машин. Кроме того, с помощью клиента Virtual Infrastructure можно формировать пользователей и группы и назначать им разрешения.

Наиболее заметно отсутствие удобной функции копирования виртуальных машин между хост-компьютерами. Нет ни встроенного проводника Windows, ни подключений к удаленным хост-компьютерам. Однако этот пробел восполняется такими бесплатными инструментами независимых производителей, как Veeam и WinSCP. Одно из наиболее примечательных достоинств клиента — возможность отслеживать данные о производительности на уровне хост-компьютера и виртуальной машины. Предоставляется отчет об использовании хранилища данных, а также процессора, памяти, сети и диска. На экране 1 показана вкладка Performance клиента Virtual Infrastructure.

Клиент Virtual Infrastructure обеспечивает удобный интерфейс управления в отсутствие комплекса управления VI3, но его возможности ограничены. Например, с его помощью нельзя импортировать и преобразовывать виртуальные машины, как в других продуктах виртуализации VMware. Нельзя копировать и клонировать VM. Эти функции доступны только через VI3 и VirtualCenter Server. И наконец, я обнаружил, что для выполнения многих задач приходится возвращаться в консоль управления Linux. Например, если скопировать виртуальную машину в ESX Server, то в графическом интерфейсе нет средств для регистрации VM — нужно использовать команду Vmwarecmd.

Hyper-V. Управление — слабое место Hyper-V. Управлять Hyper-V в составе полной версии Server 2008 удобно: после установки роли Hyper-V можно воспользоваться диспетчером Hyper-V для управления продуктом. Но это не относится к версии Server Core. Server Core не располагает встроенным графическим интерфейсом и требует дистанционного управления. Однако, в отличие от ESX Server, удаленный клиент загружается отдельно, и я столкнулся с трудностями при попытке подключить его. Я использовал Server 2008 и клиент Vista. Сначала я предпринял попытку в рабочей группе, потом в домене. В конечном итоге мне удалось добиться цели, но впечатление было неблагоприятное, явно хуже простых процедур установки и подключения клиента Virtual Infrastructure. В ходе первого тестирования я объяснял недостатки Hyper-V тем, что имею дело с предварительной версией продукта. Я был сильно разочарован, когда обнаружил, что проблема не устранена в окончательной версии.

Похоже, источник проблемы в том, что в диспетчере Hyper-V нет механизма для передачи информации о проверке подлинности в хост-компьютер Hyper-V. Из-за этого пробела приходится прибегать к многоэтапному ручному процессу настройки клиента и сервера, которые предстоит использовать. Нужно повторить процесс для всех клиентов, которые будут использоваться для дистанционного управления Hyper-V. Положение усугубляется тем, что эти действия не описаны в документации продукта; чтобы найти инструкции, требуется выполнить поиск в блогах Microsoft. Это серьезное препятствие для запуска Hyper-V на платформе Server Core — особенно для небольших и средних компаний, желающих приступить к виртуализации. До тех пор пока эта проблема не решена, рекомендуется использовать Hyper-V и полные версии Server 2008.

Удивительно, что не найдено более удачного решения этой задачи. Ведь запуск Hyper-V на платформе Server Core позволяет снизить накладные расходы и повысить безопасность. Кроме того, компания VMware уже показала, как сделать это правильно. В целом использование полного экземпляра Server 2008 мало влияет на производительность, но значительно упрощает управление Hyper-V.

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

Тестирование производительности

Два набора тестов были выполнены на компьютере HP ProLiant ML370 G4, с двумя 1,86-ГГц четырехъядерными процессорами Intel Xeon на 1066-Гц шине. Компьютер располагает оперативной памятью объемом 8 Гбайт и восемью жесткими дисками по 72 Гбайт со скоростью вращения шпинделя 15 000 об./мин, объединенных в массив RAID. Тесты в предыдущей статье были основаны на сценариях Windows Shell с временной привязкой. При подготовке набора повторных тестов я преобразовал тестовые сценарии в PowerShell, что позволило улучшить управление программой, а также использовать ADO. NET в качестве механизма доступа к данным SQL Server.

Первый набор. Во-первых, я повторил набор тестов, которые использовались при подготовке статей прошлого цикла. Во время проведения первых тестов Hyper-V был представлен предварительной версией. В окончательную версию внесены некоторые изменения, для повышения производительности. Для имитации процесса консолидации производственных серверов было сформировано восемь виртуальных машин на хост-компьютере (каждой выделено 512 Мбайт оперативной памяти) и использовались настройки по умолчанию для новой конфигурации виртуального жесткого диска. Была задействована внешняя сеть, которая связала виртуальные сетевые адаптеры виртуальных машин с хост-компьютером. Для первого раунда тестов все виртуальные машины работали с 64-разрядной версией Server 2008 Enterprise Edition. Для тестов Hyper-V компоненты интеграции были загружены во все гостевые операционные системы. И конечно, все виртуальные машины Hyper-V использовали высокопроизводительные драйверы устройств VMBus. Для тестов ESX Server был установлен пакет VMware Tools.

Чтобы сформировать смешанную нагрузку, я настроил шесть виртуальных машин в качестве серверов файлов, а две — как серверы базы данных с Microsoft SQL Server 2005 Enterprise Edition SP2. Для тестирования производительности сервера файлов использовалась процедура, которая копировала набор из 10 файлов (общий размер 130 Мбайт) из сервера файлов на жесткий диск локального клиента. Затем файлы копировались в обратном направлении в другой каталог на сервере и удалялись. Между всеми операциями вставлялась задержка длительностью 3 секунды, имитирующая обдумывание. Процедура повторялась 20 раз.

Чтобы протестировать рабочую нагрузку SQL Server, я использовал 27 запросов к тестовой базе данных AdventureWorks. Рабочая нагрузка в основном состояла из извлечения данных, но содержала также пару запросов, активно использующих процессор, функцию вставки 5000 строк и четыре инструкции SELECT INTO, добавленных к некоторым операциям изменения данных. Между всеми действиями с базой данных вставлялась трехсекундная задержка для имитации времени обдумывания дальнейших действий оператором.

Как показано на рисунке 2, в этих условиях производительность ESX Server и Hyper-V была примерно одинаковой.

Тесты производительности, раунд 1

Столбцы на диаграмме показывают общее среднее время выполнения набора тестов. ESX Server имел четырехпроцентное превосходство перед Hyper-V на тестах файл-сервера. Однако Hyper-V опередил ESX Server на тестах базы данных на 1%. Объединенные результаты представляют собой суммарные итоги тестов файл-серверов и базы данных. Время выполнения этого набора тестов — примерно 20 минут. В целом итоговые результаты ESX Server были на 3% лучше. Хотя ESX Server выполнил набор тестов быстрее, чем Hyper-V, разница в 3% невелика.

Второй набор. По итогам первого раунда тестирования один читатель высказал мнение, что версия Windows Server 2008 оптимизирована для работы с Hyper-V, и производительность других операционных систем может оказаться ниже. Представители Microsoft подтвердили оптимизацию и пояснили, что некоторые гостевые операционные системы (например, Server 2008) считаются «осведомленными». Существует два типа осведомленности гостевых операционных систем. Первый — базовый уровень осведомленности о драйверах, при котором гостевая операционная система может использовать преимущества высокопроизводительной архитектуры VMBus. Vista и Server 2008 располагают вторым уровнем осведомленности, именуемым осведомленностью ядра. Благодаря осведомленности ядра повышается производительность процессора и памяти с целью дальнейшей оптимизации гостевой операционной системы для работы в виртуальной машине. Дополнительные сведения об архитектуре Hyper-V можно найти в материалах, приведенных во врезке «Дополнительная литература».

Чтобы выяснить, действительно ли Server 2008 обеспечивает преимущества при работе с Hyper-V, я повторно запустил второй набор тестов, следуя тем же методикам, что и при выполнении тестов первого набора. Однако во втором тестовом наборе в качестве гостевой операционной системы для всех виртуальных машин используется 32-разрядная версия Windows Server 2003 Enterprise Edition SP2. И вновь для Hyper-V были загружены компоненты интеграции, а виртуальные машины использовали драйверы VMBus. Для ESX Server были установлены инструменты VMware Tools.

Как видно на рисунке 3, результаты были еще более плотными, чем на первом наборе тестов.

Тесты производительности, раунд 2

Неожиданно продукт Hyper-V превзошел ESX Server на 1% на тестах сервера файлов, но на тестах базы данных выиграл ESX Server с разницей в 2%. В целом на объединенных результатах тестов ESX Server получил небольшое преимущество в 1%. Учитывая, что результаты с Windows 2003 были еще более близкими, чем с Server 2008, можно сделать вывод, что Server 2008 не приносит существенного выигрыша в производительности при работе с Hyper-V относительно ESX Server.

На данном уровне масштабируемости ESX Server имеет небольшое преимущество как на 64-, так и на 32-разрядных тестах, но очевидно, что уровни производительность обеих платформ виртуализации близки. Однако поддержка более крупных конфигураций систем со стороны ESX Server обеспечивает преимущество в масштабируемости по сравнению с Hyper-V.

Таким образом, оба продукта обеспечивают отличную производительность при виртуализации, но Hyper-V проигрывает из-за слабых функций дистанционного управления и ограниченной совместимости с гостевыми операционными системами, отличными от Microsoft. Более зрелый продукт ESX Server характеризуется лучшими функциями дистанционного управления и широкой поддержкой гостевых операционных систем.

На сегодня лучше управляемый продукт ESX Server предпочтителен для средних и крупных компаний и корпораций, особенно если нужно поддерживать смешанный набор гостевых операционных систем Windows и Linux. Дистанционное управление Hyper-V по-прежнему проблематично. Однако Hyper-V подойдет небольшим компаниям, работающим с Server 2008 и желающим виртуализовать в основном серверы Windows. Благодаря поставке продукта вместе с Windows его проще внедрять и использовать: не придется изучать незнакомые команды консоли управления ESX Server на основе Linux. Но из-за отмеченных трудностей дистанционного управления пока нельзя рекомендовать применение Hyper-V на платформе Server Core. Тем не менее следует отметить, что Hyper-V успешно функционирует с полным экземпляром Server 2008.

Виртуализация быстро становится важным инструментом бизнеса, и компании Microsoft и VMware фактически предоставляют бесплатные продукты виртуализации. Однако собственно виртуализация — только часть картины. Другая часть — управление, и именно в этой области поставщики стремятся получить прибыль. Комплекс управления VMware VI3 имеет значительное базовое преимущество в этой области, но у диспетчера Microsoft SCVMM, связанного с семейством продуктов System Center, есть уникальные достоинства. В следующей статье будет дан сравнительный обзор комплексов управления виртуализацией Microsoft и VMware.

Автономная версия Hyper-V Server 2008

омпания Microsoft первоначально выпустила платформу виртуализации вместе с Windows Server 2008, и многие полагали, что для Hyper-V необходима операционная система Server 2008, в сущности, приравнивая продукт к Virtual Server 2005 и выводя его из класса конкурентов ESX Server. Однако это не так. За выпуском Hyper-V в составе Server 2008 последовало объявление об автономной версии Hyper-V, именуемой Hyper-V Server 2008. Hyper-V Server 2008 можно бесплатно загрузить по адресу http://www.microsoft.com/downloads/details.aspx? FamilyId=6067 CB24, для продукта не требуется наличия Windows Server 2008.

Таблица А. Основные различия между версиями Hyper-V

В таблице A приведена сводка различий между Hyper-V Server 2008 и версией Hyper-V, поставляемой вместе с Server 2008. В целом Hyper-V Server 2008 предназначается для компаний меньшего размера, которые не используют Server 2008. Уровень производительности и совместимость с гостевыми операционными системами — такие же, но возможности продукта ограничены лишь четырьмя процессорами и памятью размером 32 Гбайт. Кроме того, отсутствуют такие функции, рассчитанные на крупные компании, как отказоустойчивый кластер и быстрая миграция.

В связи с использованием в архитектуре Hyper-V родительского раздела для драйверов устройств может возникнуть вопрос о методах поддержки устройств в Hyper-V Server 2008. В Hyper-V Server по-прежнему применяется минимальная установка Windows Server в родительском разделе, которая содержит драйверы устройств и минимальную функциональность, в частности сетевые функции и возможность выполнить соединение с доменом. Но его нельзя применять для создания виртуальных машин из-за отсутствия ГИП и команд для создания VM. Теоретически создавать виртуальные машины с помощью WMI возможно, но практически для этого требуется использовать удаленный экземпляр диспетчера Hyper-V.

ESXi и ESX Server

Подобно двум версиям Hyper-V, существует две версии ESX Server: ESX Server 3.5 и бесплатная ESXi. ESXi можно загрузить по адресу https://www.vmware.com/tryvmware/login.php? eval=esxi&t=1, но ESX Server распространяется только в составе комплекса VMware VI3. В обоих продуктах применяется одинаковая архитектура гипервизора, оба обеспечивают близкий уровень производительности и поддерживают одинаковые гостевые операционные системы. Но в отличие от полного продукта ESX Server, в ESXi нет служебной консоли на основе Linux. Поэтому размер ESXi весьма невелик— 32 Мбайт. На недавней конференции VMworld компания VMware распространяла экземпляры ESXi на USB-устройствах. Благодаря миниатюрности ESXi просто установить и развернуть, уменьшается поверхность атаки хост-компьютера и упрощаются требования к применению программных исправлений. Для дистанционного управления ESXi используется клиент VI3. Подробное сравнительное описание ESXi и ESX Server можно найти по адресу http://kb.vmware.com/selfservice/microsites/search.do? language=en_US&cmd=displayKC&externalId=1006543.

ESX Server 3.5
Достоинства: отличная производительность; простая установка; тщательно продуманная консоль управления.
Недостатки: ограниченная совместимость с аппаратными средствами.
Рейтинг: 5/5
Рекомендации: для средних и крупных компаний, стремящихся к высокой производительности и управляемости.
Контактные данные: VMware www.vmware.com

Hyper-V
Достоинства: очень хорошая производительность; удачное приобретение.
Недостатки: неудобное дистанционное управление; нужна более продуманная консоль управления.
Рейтинг: 4/5
Рекомендации: для малых компаний, планирующих переход на Windows Server 2008.
Контактные данные: Microsoft www.microsoft.com


Преимущества и недостатки реализации драйверов ESX Server и Hyper-V

Гостевые операционные системы, поддерживаемые ESX Server

Гостевые операционные системы, поддерживаемые Hyper-V

Клиент Virtual Infrastructure

Диспетчер Hyper-V