В первой части данной статьи были рассмотрены возможности, процесс установки, базовые функции управления и стоимость двух продуктов. Выяснилось, что характеристики продуктов близки, хотя Hyper-V был представлен бета-версией, выпущенной вместе с начальной версией Windows Server 2008. Тем не менее Hyper-V определенно находится на одном уровне с более зрелым продуктом ESX Server 3.5. Установить и приступить к работе с ESX Server проще, а его консоль управления лучше продумана и более профессиональна. Хотя установить Hyper-V немного сложнее, его функциональный набор напрямую сопоставим с возможностями ESX Server. Оба продукта пригодны для запуска операционных систем Windows и Linux, поддерживают широко масштабируемые 64-разрядные основные и гостевые операционные системы с оперативной памятью 64 Гбайт для одной виртуальной машины (VM). Теоретически достоинства Hyper-V привлекательны, но единственный способ убедиться в практической пригодности продукта — провести испытания и проверить, соответствует ли его уровень производительности ESX Server.
Запускаем мотор
Первоначально я собирался протестировать Hyper-V с версией Server Core. Однако при установке и запуске продукта на платформе Server Core возникли многочисленные трудности. Я без труда установил операционную систему и реализовал роль виртуализации, но функции дистанционного управления для Hyper-V на платформе Server Core пропали без вести. Дистанционное управление обязательно для Server Core, так как у него нет графического интерфейса. Я уверен, что основная причина проблемы — в недоработанной версии программного кода. Дополнительные сведения о функциях дистанционного управления Hyper-V на платформе Server Core приведены во врезке «Хорошее, плохое и ужасное». В конечном итоге из-за ограничений по времени я запустил Hyper-V с полным экземпляром Windows Server 2008 Enterprise, что теоретически не должно приводить к заметным отличиям, так как гипервизор Hyper-V функционирует под операционной системой, а раздел управления Windows Server выполняется в VM по умолчанию. Однако при использовании полной версии Server 2008 увеличиваются общие требования к памяти, возможности для атаки и необходимость применения исправлений.
Прежде чем приступить к тестам производительности, требовалось создать набор виртуальных машин на каждой платформе. Сначала для тестирования ESX Server были созданы восемь VM с помощью клиента Virtual Infrastructure. Восемь виртуальных машин — типичное число для малых и средних компаний. Кроме того, использование восьми VM удачно согласуется с моделью лицензирования Server 2008 Enterprise, которая допускает запуск четырех активных экземпляров Windows, выполняемых в виртуальных машинах без дополнительной оплаты. Для восьми VM требуется две лицензии Server 2008 Enterprise. Более подробно об условиях лицензирования для моего тестового сценария рассказано в первой части статьи.
Клиент Virtual Infrastructure немедленно установил подключение и отличался хорошей реакцией, хотя между обновлениями состояния иногда наблюдалась небольшая задержка. Встроенная консоль обеспечивает немедленное подключение к виртуальным машинам и довольно хорошо реагирует на события. В качестве «горячих» комбинаций клавиш используются знакомые Ctrl+Alt и Ctrl+Alt+Ins. Изменить последовательность загрузки можно с помощью параметров VM. Удачная возможность — подключить виртуальную машину к накопителю CD-ROM/DVD локального клиента или основного компьютера. Еще одна удобная функция клиента Virtual Infrastructure — журнал активности в нижней части консоли (см. экран 1). И наконец, по щелчку на вкладке Performance выводится графическое представление основной и гостевой виртуальных машин, с возможностью выбрать различные наборы счетчиков производительности.
Две проблемы, с которыми мне пришлось столкнуться при работе с ESX Server, — это дистанционное подключение к собственной консоли и копирование виртуальных машин между серверами. В ESX Server нет удаленного рабочего стола, как в Windows Server, а также встроенного обозревателя файлов или FTP-сервера. Однако эти недостатки обходятся с помощью двух полезных бесплатных модулей расширения для ESX Server. Дополнительные сведения о названных инструментах приведены во врезке «Бесплатные модули управления для ESX Server».
Основные процедуры создания и управления VM с использованием диспетчера Hyper-V просты и удобны. Однако диспетчер Hyper-V менее функционален и не так хорошо отработан, как консоль управления VMware. Если провести аналогию с «тойотой» и «феррари», то диспетчер Hyper-V был, похоже, принудительно втиснут в типовую инфраструктуру консоли Microsoft Management Console (MMC) 3.0, тогда как клиент VMware Virtual Infrastructure Client проектировался специально для управления сервером VM. Особенно плохо позиционирована панель Snapshot Hyper-V. Диспетчеру Hyper-V недостает профессионального впечатления, которое оставляет клиент Virtual Infrastructure. Информация о производительности сервера, выдаваемая диспетчером Hyper-V, минимальна. Видимо, чтобы ИТ-специалисты не дремали, последовательность «горячих» клавиш также изменилась: вместо старых комбинаций Virtual Server и Virtual PC появились новые — Ctrl+Alt+End и Ctrl+Alt+Left Arrow. Я также столкнулся с некоторыми проблемами при установке служб Virtual Machine Integration Services (в прошлом известных как Virtual Machine Additions); между различными виртуальными машинами возникали конфликты при совместном использовании файла vmguest.iso, который служит для установки служб Integration Services.
Эти изъяны — признак предварительной версии программного кода, но тем не менее они доставляют неудобство. Новые настройки виртуальной машины Hyper-V, показанные на экране 2, полезнее настроек Microsoft Virtual Server 2005. Удачное дополнение Hyper-V, которое имеется и в ESX Server, — возможность расширить существующий виртуальный жесткий диск.
Гонка
Два продукта виртуализации были протестированы с использованием HP ProLiant ML370 G5, который представляет собой монтируемый в стойке сервер высотой 4U. Модель HP ProLiant ML370 G5 пригодна как для Server 2008 и Hyper-V, так и для VMware ESX Server. Тестовый компьютер был оснащен двумя четырехъядерными процессорами Intel Xeon с тактовой частотой 1,86 ГГц и внешней шиной 1066 МГц. ML370 G5 располагал оперативной памятью 8 Гбайт и восемью дисками по 72 Гбайт, каждый со скоростью вращения шпинделя 15 000 об./мин, объединенными в массив RAID. В целом уровень производительности компьютера превосходил требования теста, оставляя пространство для масштабирования.
Для сравнительных тестов производительности ESX Server 3.5 и Hyper-V были подготовлены восемь виртуальных машин x64 с оперативной памятью 512 Мбайт; для нового виртуального жесткого диска были приняты параметры по умолчанию. Виртуальные сетевые адаптеры VM были связаны с основным компьютером через внешнюю сеть, что дало возможность протестировать соединения от внешних клиентских компьютеров — именно так большинство организаций использует производственные серверы в среде с консолидацией серверов. Все виртуальные машины работали с операционной системой Server 2008 Enterprise.
Для моделирования смешанной рабочей нагрузки было организовано шесть виртуальных машин, функционирующих как серверы файлов, и две VM для серверов баз данных с SQL Server 2005 Enterprise Edition SP2. В ходе теста производительности серверов файлов набор из 10 файлов общим размером 130 Мбайт копировался с файлового сервера на жесткий диск локального клиента. Затем файлы копировались назад, в другой каталог на серверы, и удалялись. Эта процедура повторялась 10 раз. Для тестирования рабочей нагрузки SQL Server использовались 27 различных запросов, направляемых к тестовой базе данных AdventureWorks. Основную часть рабочей нагрузки составляло получение данных, но пакет содержал два цикла и четыре инструкции SELECT INTO, чтобы задействовать операции, связанные с вычислениями и изменением данных. Между всеми взаимодействиями с базой данных оставлялось «время на раздумье» продолжительностью три секунды. Клиенты использовали команду SQLCMD для запуска рабочей нагрузки на двух компьютерах SQL Server. Каждый клиент выполнял тест с одним из файловых серверов и два теста с двумя компьютерами SQL Server (всего 10 заданий в каждом тестовом пакете). Вся последовательность повторялась трижды, и результаты усреднялись. Порядок выполнения заданий каждым клиентом во взаимодействии с основными компьютерами VM изменялся на каждом прогоне.
Последним сравнительным показателем производительности было общее время, необходимое для выполнения всех рабочих нагрузок. Я сравнивал как общее время для всех рабочих нагрузок, так и отдельно время для рабочей нагрузки, выполняемой каждой виртуальной машиной. На рис. 1 показана диаграмма, на которой сопоставлена производительность двух платформ.
Результаты измерялись в секундах с точностью до сотой доли секунды. Удивительно, но производительность Hyper-V на файл-серверном компоненте тестов была стабильно выше, чем у ESX Server, на 1-5% в зависимости от виртуальной машины. Столь же неожиданно результат VMware ESX Server был заметно лучше на тестах базы данных SQL Server. При работе с базой данных производительность ESX Server была в среднем от 36 до 39% выше, чем у Hyper-V. Эти результаты были тем более неожиданны, что на недавних тестах, ориентированных исключительно на SQL Server и проведенных для SQL Server Magazine, средняя производительность ESX Server была всего на 4% выше, чем у Hyper-V. Однако эти тесты различались рабочей нагрузкой. На этот раз выполнялась смешанная доставка из файлового сервера и базы данных. При ближайшем рассмотрении результатов оказалось, что один клиент базы данных медленнее работал с SQL Server на платформе Hyper-V, нежели ESX Server. Причина различий неясна. Тесты файловой системы клиента были одинаковыми для обеих платформ. Изменений на клиенте не было, и результаты были одинаковыми на всех трех наборах тестов и обоих серверах базы данных. Повторное выполнение тестов принесло такие же результаты. Если не учитывать результаты этого клиента, то разница составляла около 1% в пользу ESX Server. На рис. 2 показаны комбинированные результаты тестов.
В целом при всех рабочих нагрузках и на всех тестах преимущество ESX Server перед Hyper-V составило 4%. У ESX Server отмечен выигрыш по производительности, но две платформы, несомненно, сопоставимы даже под нагрузкой. Hyper-V лучше выполняет определенные части тестов. Поскольку тесты проводились с ранним бета-кодом Hyper-V, результаты окончательной версии могут быть иными.
Круг почета
В целом отличия «Редакция советует» удостоен продукт ESX Server. Ниже приведен список некоторых важных отличительных качеств каждого продукта.
Установка и настройка. В этой категории явное преимущество у ESX Server. Установка была выполнена гораздо быстрее, а настройка оказалась проще. Перезагрузка компьютера не требуется. Невозможно представить себе более простую процедуру настройки дистанционного управления.
Управление узлом виртуального сервера. Победитель в этой категории — Hyper-V. Использовался полный экземпляр Server 2008 Enterprise, поэтому доступны все инструменты управления и возможности Windows Server, в том числе графический интерфейс.
Управление виртуальной машиной. В этой категории — явное преимущество у ESX Server. Должен признаться, работать с ESX Server 3.5 и клиентом Virtual Infrastructure было приятно. Это управляемый, предсказуемый и продуманный инструмент. В сравнении с ним диспетчер Hyper-V выглядит неуклюжим.
Производительность. Небольшое преимущество у ESX Server, но производительность Hyper-V вполне приемлема.
Цена. В этой категории, несомненно, победил Hyper-V. Большинство организаций в конечном итоге перейдут на Windows Server 2008, в состав которого он входит.
Производительность как Microsoft Hyper-V, так и VMware ESX Server превосходна. Для средних и крупных компаний ESX Server 3.5 в сочетании со зрелым комплексом управления Virtual Infrastructure 3 будет более полнофункциональной, хотя и дорогостоящей платформой. Кроме того, ESX Server располагает зрелой экосистемой вспомогательных продуктов, которые будут полезны компаниям с разнообразными требованиями к управлению, в том числе архивации данных, восстановления после аварии и безопасности. Однако Hyper-V будет удачным выбором для компаний среднего масштаба, особенно тех из них, которые только приступают к виртуализации и переходят на Server 2008. Поскольку Hyper-V поставляется вместе с Server 2008, продукт будет очень выгодным приобретением. При этом он обеспечивает хорошую производительность и прост в управлении.
Майкл Оти (mikeo@windowsitpro.com) — редактор Windows IT Pro и президент компании TECA (Портленд, шт. Орегон), занимающейся разработкой программного обеспечения и консалтингом
Бесплатные модули управления для ESX Server
Профессиональный интерфейс клиента Virtual Infrastructure продукта ESX Server удобен для управления виртуальными машинами (VM), однако он практически бесполезен за пределами собственно среды виртуализации. Например, нет встроенного удаленного стола, как в Windows Server. Отсутствует и возможность копировать виртуальные машины на другие серверы. Однако существует несколько полезных (и бесплатных) утилит, с помощью которых можно заполнить пробелы в управлении ESX Server.
-
С помощью программы FastSCP компании Veeam можно копировать файлы непосредственно между компьютерами ESX Server и Windows Server или другими компьютерами ESX Server. Процесс копирования — быстрый, безопасный и не требует дополнительной настройки. Я использовал FastSCP для перемещения виртуальных машин из ESX Server на сервер Windows. Получить FastSCP можно по адресу www.veeam.com/vmware-esx-fastscp.html.
-
WinSCP — открытый клиент Secure FTP (SFTP) с интерфейсом, аналогичным графическому диспетчеру файлов. Программу также можно использовать для перемещения виртуальных машин между компьютерами ESX Server и серверами Windows. WinSCP можно получить по адресу winscp.net/eng/index.php.
-
PuTTY — клиент Telnet и Secure Shell (SSH) для Windows. С помощью PuTTY можно установить безопасное удаленное соединение с собственной консолью ESX Server. PuTTY можно загрузить по адресу www.chiark.greenend.org.uk/~sgtatham/putty/download.html.
Хорошее, плохое и ужасное
Сравнительное тестирование производительности Hyper-V и ESX Server оказалось очень познавательным. В ходе тестов было получено несколько неожиданных результатов, в том числе:
Хорошее. И ESX Server, и Hyper-V обеспечивают превосходную производительность. Несомненно, каждый из этих продуктов пригоден для обслуживания большого числа виртуальных машин производственного уровня. Количество тестовых виртуальных машин выбиралось исходя из размера оперативной памяти базового компьютера и оптимальных для малых и средних компаний способов лицензирования Windows Server 2008 Enterprise Edition, но производительность обоих продуктов, безусловно, приемлема для серверов файлов и баз данных производственного уровня.
Плохое. Одной из самых больших неожиданностей тестирования была огромная разница в производительности между различными клиентскими компьютерами. Неудивительно, что производительность тестового клиента Windows XP была значительно выше, чем у клиентов Windows Vista. Однако показатели одного клиента Vista на тестах базы данных Hyper-V были особенно неудачными. Если удастся выяснить причины проблемы, они будут опубликованы в блоге по адресу «Making IT Work» (windowsitpro.com/blog/index.cfm? action=blogindex&DepartmentID=1092).
Ужасное. Функции дистанционного управления Hyper-V — явный изъян предварительной версии, особенно на платформе Server Core, в отличие от удачного компонента VMware. Загрузить и запустить клиент Virtual Infrastructure продукта ESX Server чрезвычайно просто. Чтобы настроить необходимое удаленное соединение для работы с Hyper-V и Server Core, требуются глубокие знания, чуть-чуть колдовства и много везения. Я обнаружил 17-этапный (это не шутка) процесс Джона Ховарда (старший менеджер программы Hyper-V) для настройки дистанционного управления Hyper-V («Part 3 — Hyper-V Remote Management: You do not have the requested permission to complete this task. Contact the administrator of the authorization policy for the computer 'COMPUTERNAME'» blogs.technet.com/jhoward/archive/2008/03/30.aspx). Но моя попытка воспользоваться им закончилась неудачей. Этот недостаток Hyper-V должен быть обязательно устранен в окончательной версии. Однако благодаря ему я по достоинству оценил простую и функциональную доставку клиента управления VMware.
Сведения о продукте
ESX Server 3.5
Достоинства: отличная производительность; простая установка; продуманная консоль управления
Недостатки: ограниченная совместимость с аппаратными средствами
Оценка: 5 / 5
Цена: 1640 долл. за Virtual Infrastructure Foundation с гарантией в течение года; 2640 долл. с гарантией в течение 3 лет.
Рекомендации: ESX Server отлично подходит для средних и крупных компаний, которым нужна хорошая производительность и управляемость.
Контактная информация: VMware, www.vmware.com
Сведения о продукте
Hyper-V
Достоинства: очень хорошая производительность; доступная цена
Недостатки: слабые функции дистанционного управления; нужна более продуманная консоль управления
Оценка: 4 / 5
Цена: поставляется вместе с Server 2008
Рекомендации: благодаря низкой стоимости Hyper-V идеально подходит для средних компаний, планирующих переход на Server 2008
Контактная информация: Microsoft, www.microsoft.com