Виртуализация на платформе Virtual Iron


В последнее время все большее и большее количество средних и крупных компаний, не только в ИТ-отрасли, проявляют интерес к серьезным системам виртуализации, развивающимися быстрыми темпами. Рост аппаратных мощностей компьютеров и малая средняя загруженность большинства серверов (около 10-20 процентов) заставляют задуматься о консолидации нескольких виртуальных систем на одной физической платформе. Помимо этого, управление большим парком серверов в крупных организациях вызывает большие трудности, особенно, когда дело доходит до миграции на другое оборудование. Многие серверные узлы компаний должны быть доступны в режиме 24×7×365, и при выходе из строя оборудования, поддерживающего их, компания может понести многомиллионные убытки. Технологии виртуализации, так активно пропагандируемые сейчас как разработчиками программных платформ, так и производителями процессоров, позволяют решить эти проблемы и существенно повысить гибкость ИТ-инфраструктуры компании, не внося изменений в ее повседневную деятельность.

Владельцы крупных датацентров также возлагают большие надежды на виртуализацию, которая за счет размещения нескольких виртуальных серверов на одном физическом позволит не только экономить деньги на оборудовании, но и существенно снизить затраты на электроэнергию, содержащие электропитание и охлаждение серверов. Тем не менее, стоимость серьезных виртуализационных решений для крупных компаний, таких как VMware Infrastructure 3 на базе VMware ESX Server (более 5000 долларов за корпоративное издание), не позволяет многим компаниям начать проект по виртуализации, поскольку они не могут оценить возвращение своих инвестиций в платформу виртуализации. Поэтому CIO крупных предприятий присматриваются не только к лидеру отрасли VMware, но и к системам других участников рынка.

В данный момент в корпоративном секторе коммерческих платформ виртуализации присутствуют также компании: XenSource с продуктом Xen Enterprise, SWSoft с продуктом Virtuozzo, Microsoft c бесплатной платформой Virtual Server и компания Virtual Iron, предлагающая решение на основе Xen. Каждый из перечисленных продуктов на данный момент занимает свою нишу в сфере решений для виртуализации серверов, однако реальную конкуренцию VMware ESX Server могут составить только продукты Xen Enterprise и Virtual Iron, поскольку Virtuozzo реализует виртуализацию на уровне экземпляров операционных систем и является негибким решением, а Virtual Server пока не имеет серьезных средств для поддержки большой виртуальной инфраструктуры.

О платформе Virtual Iron

Компания Virtual Iron не так давно появилась на рынке технологий виртуализации, но с самого начала активно пробивает дорогу в сфере корпоративных платформ. С самого начала Virtual Iron начала сотрудничать с ведущими компаниями-производителями процессоров, Intel и AMD, делая ставку на аппаратную виртуализацию. Аппаратная виртуализация представляет собой включение в процессоры новых инструкций и режимов работы, позволяющих виртуальным системам напрямую взаимодействовать с оборудованием. Такая модель позволяет существенно сократить затраты на разработку платформы виртуализации (менее 50 000 строк кода) и повысить надежность и защищенность виртуальных машин. Открытая платформа Xen, на основе которой построен продукт Virtual Iron, ориентирована, в основном, на техники паравиртуализации, предполагающие изменение ядра виртуальной (гостевой) системы. Однако компания Virtual Iron отказалась от применения этих техник и, как оказалось, не зря: большинство разработчиков операционных систем не приняли идею поддержки паравиртуализованных ядер, и сама технология паравиртуализации переживает глубокий кризис, несмотря на то, что компания XenSource прилагает серьезные усилия в этом направлении, а VMware включила в последние версии своих продуктов поддержку паравиртуализованных систем.

Вместо этого, Virtual Iron сконцентрировалась только на поддержке аппаратных техник виртуализации Intel VT и AMD-V, и сейчас ее продукты могут быть использованы только на платформах с поддержкой этих техник. Практически все процессоры, вышедшие за последние несколько месяцев, поддерживают аппаратную виртуализацию, и компании Intel и AMD намерены со временем совершенствовать свои техники. На данный момент платформой Virtual Iron поддерживаются следующие процессоры для серверных систем:

  • Intel® Xeon® 3000, 5000, 5100, 5300, 7000, 7100 Series
  • Intel® Core™ 2 Duo E6000 Series
  • Intel® Pentium® D-930, 940, 950, 960
  • AMD Opteron™ 2200 or 8200 Series Processors
  • AMD Athlon™ 64 x2 Dual-Core Processor
  • AMD Turion™ 64 x2 Dual-Core Processor

Несколько месяцев назад у компании XenSource возникли разногласия с Virtual Iron по поводу использования торговой марки Xen, принадлежащей XenSource, в результате которых XenSource запретила упоминать продукт Xen в любых официальных документах Virtual Iron.

Преимущества Virtual Iron

Платформа Virtual Iron представляет собой платформу виртуализации класса Bare Metal («голое железо»), не требующую хостовой операционной системы для поддержки виртуальных машин. Это является безусловным плюсом, как со стороны отсутствия затрат на приобретение отдельной лицензии на хостовую ОС, так и со стороны производительности (нет потерь на поддержку хостовой платформы). К тому же большим достоинством Virtual Iron является стоимость: 500$ в расчете на один физический процессор. Компания VMware также предлагает за 1000$ свое издание ESX Server Starter Edition на 2 процессорных гнездах, но без поддержки протокола iSCSI и сетей хранения данных SAN (Storage Area Network), что для крупных компаний неприемлемо. Решение VMware Standard Edition, поддерживающее эти возможности, стоит немногим менее четырех тысяч долларов.

Основные возможности Virtual Iron включают в себя:

  • Поддержка 32- и 64-битных гостевых систем
  • «Живая» миграция виртуальных серверов на другое оборудование без остановки системы
  • Широкие возможности по масштабированию виртуальной инфраструктуры (конфигурация пула серверов может быть изменена в любое время, поддержка горячего добавления серверов)
  • Контроль ресурсов, потребляемых виртуальными серверами, с возможностью перенесения их на другие хосты при превышении заданных лимитов
  • Высокая доступность и восстановление системы после сбоя оборудования (виртуальная машина запускается на другом хосте)
  • Управление, основанное на политиках: возможность задания системы правил поведения виртуальных машин при определенных условиях
  • Взаимодействие с ресурсами SAN по протоколу iSCSI
  • Поддержка создания виртуальных сетей VLAN
  • Аутентификация пользователей по протоколу LDAP
  • Отчеты о производительности хостов в виде графиков
  • Предоставление собственного API для взаимодействия со сторонними приложениями
  • Использование формата виртуальных дисков компании Microsoft (VHD, Virtual Hard Drive)
  • Агрегация ресурсов в пулы (виртуальные датацентры), в которые могут быть объединены физические и виртуальные хосты, и в рамках которых могут работать различные политики, такие как LiveCapacity и LiveRecovery
  • Клонирование виртуальных серверов
  • Возможность генерации отчетов о различных компонентах виртуальной инфраструктуры (в формате CSV и HTML)
  • Централизованное развертывание виртуальных машин

Список поддерживаемых Virtual Iron гостевых систем включает в себя:

  • Red Hat Enterprise Linux 4 U2 and U4 32- and 64-Bit
  • SUSE Linux Enterprise Server 9 SP3 32- and 64-Bit
  • Windows XP Professional 32-Bit
  • Windows Server 2003 32-Bit
  • CentOS 4.4

Хотя список поддерживаемых операционных систем невелик, тем не менее, он содержит наиболее часто используемые серверные платформы. Между тем, на платформу Virtual Iron можно попытаться установить любую операционную систему, однако Virtual Server Tools, существенно повышающие качество работы с виртуальными серверами и их производительность, в этом случае будут недоступны.

Архитектура Virtual Iron

Решения на основе платформы Virtual Iron имеют три ключевых компонента:

Virtualization Manager

Virtualization Manager — основное средство управления виртуальными машинами Virtual Iron. Он устанавливается на специальный выделенный сервер, откуда происходит управление компонентами виртуальной инфраструктуры. Сервер управления должен отвечать следующим минимальным требованиям:

  • 1 Процессор
  • 2 ГБ RAM
  • 30 ГБ жесткий диск
  • 2 физических интерфейса Ethernet
  • Поддерживаемые ОС:
    • Red Hat Enterprise Linux 4 U2 и U4 32- и 64-Bit
    • SUSE Linux Enterprise Server 9 SP3 32- и 64-Bit
    • Windows XP Professional 32-Bit
    • Windows Server 2003 32-Bit
    • CentOS 4.4

Virtualization Manager позволяет централизованно развертывать виртуальные машины по сети на серверах компании, используя среду PXE (Preboot Execution Environment).

Окно управления Virtualization Manager
Окно управления Virtualization Manager

Virtualization Manager построен на основе Java и по своим возможностям напоминает VMware Virtual Center для VMware Infrastructure 3. Можно агрегировать ресурсы в пулы, выстроенные в иерархию, по которым собирается статистика производительности, разделяется пользовательский доступ и осуществляется мониторинг событий. Virtualization Manager обнаруживает новые хосты в сети и загружает туда компоненты для развертывания виртуальных машин, носящие название Virtualization Services. Для виртуальных машин в рамках пулов ресурсов можно применять различные политики, включая LiveMigrate, LiveCapacity, LiveRecovery и LiveMaintenance, а также создавать свои политики. К сожалению, почему-то Virtualization Manager не позволяет ставить «на паузу» (suspend) виртуальные машины, хотя такая возможность сейчас есть практически во всех платформах виртуализации.

Virtualization Services

Компонент Virtualization Services представляет собой все необходимые средства, загружаемые на физический сервер через Virtualization Manager и среду PXE, которые необходимы для поддержки нескольких виртуальных машин на одной физической. Ядром платформы виртуализации на хостах является открытый гипервизор (программная прослойка между гостевой ОС и оборудованием) Xen, расположенный ниже уровня операционной системы и обеспечивающий управление виртуальными машинами и их «общение» с аппаратными компонентами. Архитектура Virtualization Services приведена далее:

Архитектура Virtualization Services
Архитектура Virtualization Services

При включении физического сервера стартует гипервизор, запускающий Service Partition в привилегированном режиме, который содержит драйверы устройств, средства управления хостом извне через Virtualization Manager, а также службы для горячей миграции виртуальной машины на другое оборудование без ее остановки. Все эти компоненты вынесены за пределы гостевой системы, что обеспечивает безопасность при использовании виртуальных машин. Компонент Virtual Server Control взаимодействует с виртуальными серверами посредством гипервызовов. По каналу Event Channel передаются команды на остановку и запуск виртуальных машин от Virtualization Manager. Компонент Back End Virtual Driver представляет собой драйверы устройств, напрямую взаимодействующие с оборудованием. Front-end драйверы гостевой системы взаимодействуют с back-end драйверами, расположенными в Service Partition. Специальные драйверы сетевых интерфейсов и систем хранения позволяют виртуальным машинам совместно использовать ресурсы сетевой карты и устройств хранения данных изолированно друг от друга, и взаимодействовать с внешней средой.

Virtualization Services реализуют виртуальный симметричный мультипроцессинг (Virtual SMP), позволяющий виртуальным машинам использовать до восьми физических процессоров (при этом поддерживается до 32 процессоров для самого хоста). Также виртуальные серверы могут иметь до четырех виртуальных сетевых интерфейсов (для одного физического) и использовать до 96 ГБ оперативной памяти.

Open Source Virtualization

Большинство компонентов платформы Virtual Iron, за исключением Virtualization Manager, являются открытыми и доступны для загрузки на сайте компании. Исходные коды компонентов Virtualization Services и Virtual Server Tools можно скачать для изучения архитектурных особенностей системы виртуализации. Open Source гипервизор Xen, составляющий ядро платформы, поддерживается сообществом независимых разработчиков и регулярно обновляется. Использование аппаратных техник виртуализации (hardware-assisted) позволяет запускать не модифицированные версии гостевых операционных систем с минимальными потерями производительности. Безусловно, Virtual Iron нельзя считать полностью открытой платформой, однако открытость большинства компонентов позволит независимым разработчикам принять участие в совершенствовании, как самой платформы, так и средств управления. К тому же, Virtual Iron предлагает также абсолютно бесплатный вариант продукта на один физический сервер, используя который можно ощутить все достоинства серьезной платформы виртуализации.

Расширенные возможности Virtual Iron для развертывания виртуальной инфраструктуры

Платформа Virtual Iron предоставляет корпоративным пользователям множество функций по развертыванию виртуальных серверов в сетях хранения данных SAN и обеспечению их высокой доступности в соответствии с неофициальными стандартами, сложившимися в сфере виртуализации. Обслуживание, основанное на политиках, таких как LiveCapacity и LiveRecovery, позволяет поддерживать жизнеспособную виртуальную инфраструктуру и просто расширять ее, а централизованное управление позволяет существенно сократить время обслуживания и развертывания виртуальных серверов.

LiveMigration и динамическое масштабирование инфраструктуры

Возможности LiveMigration позволяют переносить виртуальные машины с одного физического сервера на другой, не останавливая деятельность виртуального сервера. Такая возможность доступна при использовании iSCSI-устройств и может быть реализована только в поддерживаемых гостевых системах, где могут быть установлены Virtual Server Tools. Виртуальная инфраструктура Virtual Iron может динамически расширяться с перемещением виртуальных машин между хостами и балансировкой нагрузки.

Чтобы осуществить горячую миграцию виртуального сервера, необходимо, чтобы на целевом физическом сервере было зарезервировано достаточное количество аппаратных ресурсов, а также имелся доступ ко всем необходимым сетевым компонентам и системам хранения, где располагаются виртуальные диски. Функция LiveMigration доступна только в пределах пула ресурсов (Virtual Data center) и может быть использована только для хостов, на которых установлены процессоры одного производителя (Intel или AMD). При миграции виртуального сервера на другой хост, достаточно лишь перетащить мышью виртуальную машину на другой физический сервер и нажать кнопку подтверждения. По завершении процедуры миграции исходный виртуальный сервер будет остановлен, вся изменившаяся память скопирована, а на целевом хосте будет запущена смигрированная система. Задержка между этими событиями составляет несколько миллисекунд и никак не отражается на запущенных приложениях. Возможность LiveMigration является аналогом VMotion в решении VMware Infrastructure 3.

LiveRecovery

Функция LiveRecovery предназначена для обеспечения высокой доступности виртуальных серверов, которые в случае выхода из строя физического оборудования могут быть перезапущены на другом сервере. При этом серверы, основной и резервный, должны находиться в одном пуле ресурсов и использоваться в сети хранения данных SAN. Возможность LiveRecovery аналогична решению VMware HA (High Availability), однако в отличие от VMware, компания Virtual Iron не считает необходимым введение отдельной файловой системы, как VMFS у VMware, оптимизированной под нужды HA.

LiveCapacity

Возможности решения LiveCapacity позволяют наблюдать за загрузкой аппаратных компонентов физических серверов и принимать решение о том, что виртуальный сервер должен быть перенесен на другой хост. Пользователь может назначить политики, которые будут определять, при каких именно условиях следует осуществить миграцию виртуального сервера. В случае повышенной нагрузки на оборудование физического сервера будет проведена автоматическая миграция виртуальной машины на другой сервер, который обладает достаточным количеством ресурсов. LiveCapacity является решением по балансировке нагрузки на оборудование датацентра и по своим возможностям напоминает функции Dynamic Resource Scheduling (DRS) компании VMware для VMware Infrastructure 3.

Политики и API

Компания Virtual Iron предоставляет широкие возможности по написанию различных дополнений к Virtualization Manager за счет использования специального API. С помощью этого API разработчики могут контролировать любые аспекты виртуальных датацентров и виртуальных серверов. Также этот API могут использовать системные администраторы для написания собственных политик для Virtualization Manager. Политики могут быть написаны для любой возможности платформы Virtual Iron и могут выполняться единовременно или с заданной периодичностью. Например, можно написать политики для сбора отчетов о производительности определенных виртуальных серверов, или, если в определенное время суток серверы испытывают повышенные нагрузки, можно мигрировать их на более мощные хосты.

Virtual Iron предоставляет также модель взаимодействия CIM (Common Information Model), позволяющую интегрировать Virtualization Manager со сторонними приложениями. Разработчики могут использовать стандарт CIM для исследования виртуального окружения Virtual Iron и написания собственных приложений.

Сетевое взаимодействие

Система управления Virtualization Manager позволяет создавать множество виртуальных коммутаторов, которые могут объединять несколько виртуальных машин в пределах хоста, а также обеспечивать сетевое взаимодействие с внешней сетью. Для каждой виртуальной машины может быть создано до четырех виртуальных сетевых интерфейсов, каждый из которых имеет уникальный MAC-адрес. Виртуальный сетевой интерфейс может быть подключен к одной из созданных виртуальных сетей. При миграции виртуальных машин все сетевые настройки и настройки безопасности виртуальных серверов сохраняются.

Virtual Iron может эмулировать два типа сетевых адаптеров: по-умолчанию эмулируется сетевая карта AMD PCnet32 PCI, при установке Virtual Server Tools в Service Partition устанавливается Back End драйвер, который обеспечивает наилучшее быстродействие и меньшую нагрузку на процессор. Далее изображена одна из возможных конфигураций сети в пределах одного физического сервера.

Сетевое взаимодействие виртуальных машин Virtual Iron в пределах физического сервера
Сетевое взаимодействие виртуальных машин Virtual Iron в пределах физического сервера

Виртуальные коммутаторы изолированы друг от друга и объединяют несколько виртуальных машин в виртуальную сеть. Один из виртуальных коммутаторов подключен напрямую во внешнюю сеть, а доступ к двум виртуальным серверам приложений как изнутри, так и снаружи, осуществляется через сетевые экраны. И все это инкапсулировано в пределах одного физического сервера. Таким образом, Virtual Iron открывает широкие возможности по моделированию виртуальной инфраструктуры и виртуальных сетей, с учетом реальной ИТ-инфраструктуры компании.

Виртуальные диски

Виртуальные сервера Virtual Iron могут иметь до 16 виртуальных дисков, которые могут составлять комбинацию из логических и Raw-дисков. Raw-диски подключаются напрямую к системам хранения данных в SAN LUNs (Logical Unit Number — логические устройства дискового массива) по каналу Fibre Channel или iSCSI, используя обычный сетевой адаптер. Raw-диски обладают большим, чем логические диски, быстродействием и могут применяться для виртуальных серверов, требующих высокой скорости дискового ввода-вывода, например, серверов баз данных. Структура виртуальных дисков Virtual Iron показана далее:

Виртуальные диски Virtual Iron
Виртуальные диски Virtual Iron

Компания Virtual Iron предоставляет также специальный фреймворк для работы с системами хранения и виртуальными дисками. Платформа Virtual Iron использует формат дисков компании Microsoft, что позволяет использовать виртуальные шаблоны (Virtual Appliances) и предустановленные продукты Microsoft (в рамках программы VHD Test Drive Program).

Оборудование

Как уже было сказано, Virtual Iron работает только на процессорах с поддержкой Intel VT или AMD-V. Кроме того, некоторые компоненты виртуальной инфраструктуры должны соответствовать требованиям, которые Virtual Iron публикует на своем сайте, на странице www.virtualiron.com/products/servers.cfm. На данный момент список поддерживаемой аппаратуры не такой обширный, как у VMware, однако он постоянно пополняется, поскольку компания Virtual Iron работает в тесном сотрудничестве с производителями аппаратного обеспечения.

На данный момент поддерживаются следующие сетевые адаптеры стандарта Gigabit Ethernet:

  • Intel Pro/1000 family PCI cards
  • Intel 80003ES2LAN Gigabit Ethernet Controller
  • Intel 82572EI Gigabit Ethernet Controller
  • Intel 82544GC Gigabit Ethernet Controller
  • Intel 82571EB Gigabit Ethernet Controller
  • Intel 82541PI Gigabit Ethernet Controller
  • Broadcom NetXtreme BCM5751 Gigabit Ethernet PCI Express
  • Broadcom NetXtreme BCM5705 Gigabit Ethernet
  • Broadcom NetXtreme BCM5704 Gigabit Ethernet
  • Broadcom NetXtreme II BCM5708 Gigabit Ethernet
  • 3Com Corporation 3c905C-TX/TX-M [Tornado]

Также Virtual Iron поддерживает следующие RAID-контроллеры:

ПроизводительМодельКонтроллер
Adaptec 2420SA SATA-II RAID
Dell1950Integrated SAS 5/i(base): 4 port SAS controller
2950Integrated PERC 5/i (optional): SAS 3.0 Gb/s
HPDL140GSSmartArray E200i/P400i
DL360G5SmartArray E200i/P400i
DL380G5SmartArray E200i/P400i
DL460cSmartArray E200i/P400i
DL480cSmartArray E200i/P400i
ML150SmartArray E200i/P400i
IBM HS21 Blade SAS controller

Что касается устройств iSCSI, их список пока весьма невелик:

  • DataCore SANmelody
  • DataCore SANsymphony 6.0
  • Dell AX150i
  • EqualLogic
  • Network Appliance
  • SLES 10 iSCSI

Такой небольшой набор объясняется тем, что поддержка iSCSI появилась в Virtual Iron сравнительно недавно.

Перспективы Virtual Iron

Компания Virtual Iron сравнительно недавно вышла на рынок корпоративных платформ виртуализации, но весьма решительно стала вести конкурентную борьбу с такими серьезными соперниками, как VMware и XenSource. До того, как принять на вооружение открытый гипервизор Xen, компания Virtual Iron довольно долго разрабатывала средства управления виртуальными машинами, что является ключевым компонентом виртуальной инфраструктуры на основе платформы корпоративного класса. Безусловно, на данный момент по некоторым параметрам продукт Virtual Iron проигрывает VMware Virtual Infrastructure 3, однако по функциональности ключевых компонентов, таких как LiveMigration, LiveCapacity и LiveRecovery, платформа Virtual Iron вплотную приблизилась к аналогичным возможностям у VMware. Безусловным плюсом Virtual Iron является цена: за те же деньги продукт VMware Infrastructure Starter значительно уступает ему. А тысяча долларов за два процессора — как раз та сумма, которую могут позволить себе компании в секторе малого и среднего бизнеса. На фоне этого, Virtual Iron вполне может соперничать с VMware в этой сфере бизнеса. В дальнейшем, безусловно, платформа будет развиваться. Сделав ставку на аппаратные техники виртуализации, компания Virtual Iron, несомненно, выиграла. Несмотря на то, что по заверениям VMware, на данный момент аппаратная виртуализация является медленнее программной, компании Intel и AMD продолжают совершенствование своих процессоров в рамках глобальной стратегии по виртуализации и находят поддержку у производителей других компонентов аппаратного обеспечения.

К тому же, в скором времени появится еще один конкурент — Microsoft, с виртуализацией, встроенной в платформу Windows Server. Однако, по последним сведениям, это случится не ранее второй половины 2008 года. Тогда, конечно, развернется по-настоящему ожесточенная борьба, в которой у Virtual Iron, судя по всему, есть шанс завоевать свою долю рынка. А пока можно попробовать и VMware Infrastructure 3, и Virtual Iron и принять решение, стоит ли переплачивать за продукты VMware.






Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.