Сегодня любая стоящая серверная ОС включает функции виртуализации. Однако запустить гостевой экземпляр и реально управлять виртуализированной рабочей нагрузкой — это совсем разные вещи.
И здесь на помощь приходит Convirture со своим пакетом Convirt 2.0 Enterprise, предназначенным для администрирования виртуальной среды. Он работает там, где функциональности гипервизоров KVM и Xen для Linux-систем (т. е. продуктов Red Hat, Novell и Canonical) оказывается недостаточно, и выполняет для этих гипервизоров ту же роль, что VMware vCenter.
В частности, версия Red Hat Enterprise Linux 6, которую я недавно тестировал, включает гипервизор KVM и все необходимые средства, чтобы подключиться к общим ресурсам хранения и работать в виртуализированной сети. Однако удобные графические средства администрирования, имеющиеся в RHEL, не простираются дальше простейшего управления виртуальными машинами.
Convirt 2.0 Enterprise дает простой и понятный веб-интерфейс для конфигурирования при развертывании виртуальных экземпляров. Я установил Convirt 2.0 на хост с RHEL 6, подключил его к хосту виртуализации с Ubuntu 10.04 и занимался переносом виртуальных машин между двумя системами. (Работу с хостом Xen я не тестировал.)
В моих тестах Convirt работал, как ожидалось (хотя мне пришлось потратить больше времени на работу с этим продуктом, прежде чем дать рекомендации), и вполне заслуживает того, чтобы попробовать его для администрирования виртуализированной среды Linux.
Convirt 2.0 предлагается как свободное ПО и в корпоративной версии. Бесплатная версия легко загружается с веб-сайта Convirture; корпоративная стоит от 1495 долл. за хост (до 10 хостов; при большом количестве предлагаются скидки). Корпоративная версия обеспечивает высокую готовность системы, резервное копирование и управление хранением данных и автоматизацию администрирования сети, отсутствующую в бесплатной версии.
Тестирование и результаты
Я установил сервер Convirt на виртуальную машину с Ubuntu, и всё прошло гладко. При первом запуске экземпляра сервера я заметил, что его веб-консоль не использует SSL-шифрование по умолчанию, но было несложно сконфигурировать эту опцию, следуя ясным инструкциям в документации.
Веб-консоль отчасти напоминает интерфейс клиента виртуальной инфраструктуры VMware с аналогичной иерархией ЦОДа, групп хостов, отдельных хостов и виртуальных машин. Для каждого уровня в этой иерархии имелись графики, показывающие процент использования ЦП и памяти, и списки задач, отслеживающие операции (в частности, включение виртуальных машин), а также сообщения журналов об успешном выполнении операции либо об ошибке.
Прежде чем передать мой хост с RHEL 6 на попечение Convirt, я запустил сценарий установки на системе с RHEL, которой собирался управлять. Сценарий позволил пропустить настройку связывания сетевых адаптеров в Convirt, так как я уже создал интерфейс связи на хосте.
Как оказалось, было бы лучше начать с “чистой” установки хоста виртуализации. Передав второй только что установленный хост виртуализации под управление Convirt, я потратил еще некоторое время, чтобы разобраться в различиях между настройкой связывания в Convirt и той, что я создал.
Также потребовалось больше усилий, чтобы импортировать мои ВМ с хоста RHEL в Convirt. Он не понимал формат ВМ из RHEL, но я нашел сценарий конвертирования на форуме Convirture, который позволил мне передать имеющийся экземпляр под его управление.
Я добавил второй хост — с Ubuntu 10.04 и KVM — к серверу Convirt и приступил к конфигурированию общего устройства хранения для миграции ВМ между хостами. Потом легко добавил устройство хранения в пул сервера, и сервер Convirt задал соответствующие конфигурации на моих отдельных хостах.
Но сначала мне пришлось устранить “кривизну” на хосте с Ubuntu: я выбрал минимальный набор пакетов для хоста, исключив тем самым поддержку NFS. Поскольку сервер администрирования Convirt разрешает доступ к корневому каталогу через хосты, которыми он управляет, задание необходимых зависимостей (или, по крайней мере, видение их отсутствия) могло бы удачно дополнить продукт.
Когда оба хоста уже нормально работали, я попробовал перенести ранее сконвертированную ВМ с локального устройства хранения хоста с RHEL на общее устройство хранения, которое я сконфигурировал (так же, как привык делать это в vCenter), однако обнаружил, что в веб-консоли продукта такая опция отсутствует.
Я провел миграцию, зарегистрировавшись прямо на хосте и скопировав на него образ. После этого можно было легко переносить ВМ между хостами.
Также я создал пару ВМ, используя шаблоны в Convirt. Продукт поставляется с несколькими основными шаблонами, в том числе для установки клиентов Windows и Linux с CD и для паравиртуализированных конфигураций Linux. Я легко мог изменить эти шаблоны, задав характеристики виртуального оборудования, местоположение устройств хранения, а также сети, и назначить шаблоны образов дисков для ВМ.
Можно было вызвать консоли виртуальных машин, используя соединение VNC (виртуальной сети передачи данных) через сервер администрирования Convirt. Я использовал для этого автономный клиент VNC, но продукт позволяет также вызвать консоли ВМ через Java-аплет в браузере.