Тестируем отечественную систему виртуализации: РЕД Виртуализация

Привет, Хабр!

Пришло время продолжить сагу об импортозамещении и российской виртуализации. И сегодня я буду разбирать по винтикам РЕД Виртуализацию. В опросе он занял почетное второе место, посмотрим, оправдает ли решение надежды проголосовавших за него читателей.

62f1f65141cf43276aca752ef4163ac0.png

Предыдущие материалы:

Кратко о РЕД Виртуализации

РЕД Виртуализация — система управления виртуализацией серверов и рабочих станций от компании РЕД СОФТ. Разработчик решения на рынке уже 15 лет — за это время у РЕД СОФТ накопился довольно неплохой портфель программных продуктов. Многие из них (и РЕД Виртуализация в их числе) входят в Единый реестр российского ПО.

Итак, что нам известно о РЕД Виртуализации.

Компоненты решения открыто представлены в презентации:

Скриншот презентации РЕД Виртуализации

Скриншот презентации РЕД Виртуализации

Как можно заметить, среди «ингредиентов» мы не видим ничего принципиального нового. Допускаю, что результаты будут близки к тестам zVirt, так как в основе лежит система oVirt. Но раз система «вышла в финал», следует еще раз пройти по этому пути и произвести все выкладки.

Производитель обещает удобный интерфейс, широкие функциональные возможности, совместимость со сторонним ПО для бэкапов, защиты от вирусов и средствами защиты информации. В этой статье я, как обычно, сосредоточусь на тестировании функций. Если вдруг вы читаете меня впервые, советую сначала обратиться к этой статье и ознакомиться с методикой тестирования.

Результаты тестирования РЕД Виртуализации

Кратко об условиях.

  • В тестировании использовалась версия 7.3.

  • Ранее я уже тестировал похожий zVirt, поэтому может сказаться небольшой эффект опыта.

  • Тестирование проходило в режиме вложенной виртуализации, поэтому параметры производительности почти не оценивались. Основной акцент — на возможности ПО.

Установка продукта и настройка

Документация

Полный комплект документации поставляется в виде руководств в формате PDF на сайте производителя. Также есть онлайн база знаний. Читать документацию в PDF лично мне было неудобно. Сложилось впечатление, что сделана она, как говорится, для галочки. На сайте присутствует раздел ответов на частые вопросы.

b9663c323ac6fab6f2e61bb9d56be408.png

Архитектура решения

Описание структуры решения разбросано по документации, в презентации указаны 3 схемы применения:

  • отказоустойчивый кластер;

  • гиперконвергентный кластер;

  • отдельный гипервизор «Всё-в-одном».

РЕД Виртуализация устанавливалась в варианте Hosted Engine — это виртуализированная среда, в которой Engine работает на виртуальной машине на хостах, управляемых данной службой. В документации представлена архитектура решения:  

57cd3ce27e6dc12d84570e9d375b3410.png

Интерфейс разбит на портал, при входе необходимо выбрать нужный.

007931417445144fa10c78296ebbde0d.png

Портал администратора:

bc24d817c665fc015676191ec2276a05.png

Портал виртуальных машин:

4bdc43a51433fb6443e8cb385530e80c.png

Портал мониторинга:

3188ca0767f169962c0abd8620f38100.png

Простота установки

К сожалению, несмотря на второй опыт с oVirt, с первого раза с установкой справиться не получилось. После получения разных ошибок я отправился читать документацию — как оказалось, не зря. Это помогло. Было принято решение развернуть в режиме Host (в данном варианте Hosted Engine создается в виде виртуальной машины после установки первого узла). 

be75a9ecb20bf2dd6651e46d38daad99.png1f7a014bb94c76155465576a3b371a33.pngb600d8ae13a0cc0004511a6cfd6f9ed0.png

Как я уже писал в статье про zVirt, продукт однозначно не для новичков в Linux, только для настройки потребуется знания уровня «опытный пользователь» или выше.

Возможность установки в открытом и закрытом контурах

Дистрибутив поставляется в виде ISO-образа со всеми необходимыми пакетами и фирменной RED OS MUROM. Установка возможна без доступа в интернет. Рекомендуется использовать настроенный DNS-сервер либо прописать все используемые хосты, хранилища, ВМ с платформой в файле hosts на всех узлах.

66d299a56780072f83bc29304544860f.png

Управление гипервизором

Согласно документации, «прямой доступ к хосту РЕД Виртуализации через SSH или консоль не поддерживается, поэтому пользовательский интерфейс Cockpit предоставляет графический пользовательский интерфейс для задач, выполняемых перед добавлением хоста к Engine, таких как настройка сети и развертывание self-hosted Engine, а также может использоваться для запуска команд терминала через вкладку Терминал».

То есть формально доступ есть, но это, скорее, про управление операционной системой, нежели виртуализацией. Аналога графического интерфейса ESXi не наблюдается. 

ee0b40af96df6e2a137015e9fc18100a.png

Операции с виртуальными машинами

Установка виртуальной машины из ISO-образа

Для создания ВМ из ISO предварительно необходимо настроить домен для хранения ISO-образов. После всех приготовлений создание ВМ происходит через мастер за 4 шага через Портал виртуальных машин. Особых трудностей не возникло — сказался эффект опыта:)  

c6cfe8224c3cd52b924fb188874da5c5.png3f1e6d5140f1f2f2bdbef1559fc14dab.pngeca9827ede4b011b72a45c1a3196baaa.pnga4888cfe330b9c6c26806fd260c663b6.png

Создание виртуальной машины из портала администратора содержит больше настроек ВМ.

663f552c8909ea700b34991f08f5eac8.png

Выбор метода эмуляции процессора

При создании из портала виртуальных машин выбрать режим эмуляции CPU не представляется возможным, но на портале администратора возможно задать тип CPU, количество сокетов, ядер на сокет, потоков CPU на ядро, указать тип CPU. При явном указании узла можно включить проброс CPU узла.

04724dc392a0598b983b415b76742836.png

Способы создания виртуальной машины

ВМ можно создать из шаблона, это наиболее быстрый способ создания ВМ. Шаблоны доступны из ovirt-image-repository. Предварительно шаблон необходимо импортировать. Количество шаблонов ограничено. Также есть возможность импортировать свои шаблоны из формата OVA либо создать шаблон из ранее созданной ВМ.

ca4ec70ce129fad870d004e55ce85eb9.png

Установка из ISO, расположенного на локальном компьютере администратора, невозможна, поддерживается библиотека ISO-образов.

Можно создавать пулы виртуальных машин. Пул виртуальных машин — это группа виртуальных машин, которые являются клонами одного шаблона и могут использоваться по требованию любым пользователем в данной группе.

Базовые операции с виртуальной машиной

Присутствуют все базовые функции управления виртуальной машиной.

2ca1e463f99da1e6d61b4406524eeff9.png

В интерфейсе администратора удаления ВМ спрятана в дальнем меню. Удалить работающую ВМ нельзя, перед этим она должна быть предварительно выключена.

902d9c58a5094be8654aced53df4940c.png59254e5c5b6097e89eccc6f4d6fbe942.png

Возможности установки Guest Agent

Гостевые агенты (ovirt-guest-agent, emu-guest-agent) должны быть установлены отдельно.

Из интересных дополнительных функций после установки агента:

  • ovirt-guestagent-common — позволяет получать внутренние события виртуальных машин и информацию (IP-адрес и установленные приложения). Также дает Engine возможность выполнять определенные команды на ВМ, такие, как выключение или перезагрузка.

  • rhev-sso — позволяет пользователям автоматически входить в свои виртуальные машины на основе учетных данных, используемых для доступа к Engine.

После установки агента в карточке ВМ доступна информация о гостевой ОС, IP-адрес, полученный по DHCP, отображается корректно.

Клонирование виртуальной машины

В документации указано: «Кнопка Клонировать ВМ неактивна во время работы виртуальных машин; вы должны выключить виртуальную машину, прежде чем сможете клонировать ее». Однако у меня кнопка была активна, клонирование включенной ВМ запустилось и было завершено успешно без выключения ВМ. Возникают некоторые вопросы — либо к документации, либо к продукту.

Связные клоны (по сути, пулы виртуальных машин) создаются администратором. Пользователи получают доступ к пулу виртуальных машин, выбирая виртуальную машину из пула.

Снапшоты

В этот раз работа со снимками прошла более гладко, чем при тестировании zVirt. Логика работы уже была понятна и ожидания от интерфейса тоже сформировались.

Поддерживается создание снимков, в том числе с сохранением оперативной памяти. Миграция ВМ со снимком успешно выполняется. Есть возможность создать новую виртуальную машину из снимка путем клонирования. Удаление снимка не влияет на работоспособность ВМ.

Восстановить из снимка текущую ВМ на портале администратора нельзя, можно лишь создать новую или клонировать ее из снимка.

Образ виртуальной машины

Функции работы с шаблонами достаточно развитые: их можно создавать, редактировать, импортировать и экспортировать. Подготовка виртуальной машины в документации называется «Запечатывание». Возможно, при адаптации оригинальной документации у специалистов РЕД Софт возникли определенные сложности. Лично я бы назвал этот процесс обезличиванием — в документации oVirt этот пункт обозначен как «Sealing Virtual Machines in Preparation for Deployment as Templates». Присутствует функционал Sysprep — он используется для запечатывания шаблонов Windows перед использованием. Cloud-Init тоже в наличии, однако пакет cloud-init должен быть сначала установлен на виртуальной машине.

Группировка виртуальных машин

Присутствует возможность добавлять метки-тэги к виртуальным машинам. Метки могут использоваться для групповых операций с виртуальными машинами. 

0cee9f649772b2eb3def5d84a4daed3c.png

Живая миграция виртуальной машины

Функции живой миграции присутствуют. Однако документация и тут смогла меня удивить. Вот вам выдержка: «Вы можете использовать живую миграцию … Ваша среда РЕД Виртуализации должна быть правильно настроена для поддержки живой миграции задолго до ее использования». Несмотря на то, что среду виртуализации я настраивал незадолго до живой миграции, перенос прошел успешно. Живая миграция виртуальных машин между разными кластерами обычно не рекомендуется. Политики миграции настраиваются на уровне кластера.

Описание миграции между хранилищами в документации не нашел — возможно, плохо искал. В интерфейсе данный функционал присутствует, к тому же доступна оригинальная документация oVirt. Миграция между хранилищами выполняется из интерфейса управления дисками ВМ.

Горячее изменение ресурсов

Из карточки виртуальной машины можно изменить ее параметры, при необходимости перезагрузки выводится соответствующее сообщение. Изменения не применятся, пока ВМ не будет перезагружена руками. Изменение CPU/RAM на горячую не требует предварительной настройки ВМ. 

abd14e07e1e9ef56ec6126a81b71d464.png

Подключение диска и сетевого интерфейса также происходит на горячую. Для RAM возможно горячее отключение.

321bd49bc8e6642cb974cb008c89ba76.png

Способы подключения к виртуальной машине

В РЕД Виртуализации приложением по умолчанию для открытия консоли на ВМ выступает Remote Viewer, который необходимо установить на клиентском компьютере перед использованием. В документации описан процесс установки для Windows и РЕД ОС.

Трансляция USB-устройств

Трансляция USB-устройства возможна с клиентского компьютера в виртуальную машину, подключенную по протоколу SPICE. USB-устройство будет перенаправлено, только если виртуальная машина активна, находится в фокусе и запущена с портала виртуальных машин. Чтобы добавить хост-устройство к виртуальной машине, нужно выключить ВМ, после чего добавить нужное устройство в карточке ВМ.

090716f9339fd20365ec8ee98c1f80dc.png

Настройки сети

Различные типы эмуляции сетевых интерфейсов

Функция выбора режима эмуляции сетевого интерфейса доступна в карточке ВМ, можно выбрать один из четырех вариантов: rtl8139, e1000, VirtIO и проброс физического адаптера.

3f863db1663fec94018ff257c349af74.png

VLAN на узлах в формате Standard vSwitch

В меню сети можно создать логическую сеть, привязать ее к кластеру, указать DNS и тэг VLAN:

a07e3c588159f497ca962b69e0fe4c3c.png

Затем виртуальную сеть в карточке узла необходимо привязать к физическому интерфейсу.

f2b03fec24fbf385e9b54a76a10bc99c.png

Агрегация линий в формате Standard vSwitch

Настройка агрегации производится через веб-интерфейс управления узлом, доступные режимы отображены ниже.

9ca033909e3304c5b9825e113dfb02ba.png

Сетевые настройки в формате распределенного коммутатора (Distributed  vSwitch)

Как и было с zVirt, есть возможность централизованно настраивать VLAN на всех хостах виртуализации. По сути, это является неким аналогом Distributed vSwitch. Во всяком случае, позволяет достичь тех же целей по упрощению администрирования, что и Distributed vSwitch.

Тестирование более продвинутой опции с Open vSwitch не производилось из-за ограничений стенда.

Поддержка функции сетевой фабрики

Аналогично предыдущему пункту — работа фабрики требует Open vSwitch. На данный момент тестирование функционала не производилось из-за ограничений стенда.

Настройки хранилища

Поддержка различных типов эмуляции дисков для виртуальной машины

В карточке ВМ можно выбрать тип эмуляции:

3c0a2e78f24e53019fb60f704dcf9f61.png

«Тонкие» и «толстые» диски

Функция выбора типа эмуляции доступна для различных хранилищ. В случае использования NAS хранилища есть возможность указать политику выделения — тонкий или толстый. Присутствует возможность подключения прямого LUN с СХД по iSCSI.

43bdec62e318695b759302a28ea32626.png

Работа с SAN хранилищами

Для управления хранилищами используется отдельный пункт меню. Типы поддерживаемых хранилищ отображены на скриншоте. 

8a1584225b94683e3d51d5fbd45d06e3.png

В документации РЕД Виртуализации описано использование NFS и SAN хранилищ. В документации oVirt подключению SAN хранилищ просвещен пункт 2.6.6. При этом довольно большое количество примечаний там отмечено восклицательным знаком. Как указано в документации, multipath настраивается на уровне узлов. А вот в документации РЕД Виртуализации этого пункта нет, поэтому будем считать, что этот сценарий производителем не поддерживается или поддерживается ограничено.

Работа в гиперконвергентной среде

Поддерживается гиперконвергентная установка с Gluster. В рамках тестирования на стенде такой вариант не настраивался, но по документации функция присутствует. 

Отказоустойчивость и эффективность

НА-кластер

Включение режима высокой доступности для ВМ требует ее перезагрузки.

594c60e00c7ec9ac355d1a75dcc2f90c.png

После отключения узла через 2 минуты появилось вот такое сообщение. 

e95ff73351ca58d0aeb0f44f5011ae64.png

Наверное, стоит упомянуть, что все сообщения в «Ящике уведомлений» появляются только на английском языке. К этому моменту я уже порядком устал от этого недоперевода, однако, несмотря на все издержки, ВМ была автоматически запущена на другом узле. После возвращения узла в строй ВМ осталась на том узле, где была запущена. Работе в режиме высокой доступности, а если точнее «Повышению времени безотказной работы за счет высокой доступности виртуальных машин» в документации отведено буквально полторы страницы текста с базовыми определениями и инструкцией по включению этого режима. При отключении 2-х узлов из 3-х «высокодоступные» ВМ были удачно запущены на единственном рабочем узле.

Репликация виртуальных машин

В документации данная функция не описана.

Автоматическая балансировка виртуальных машин

РЕД Виртуализация предполагает 5 политик планирования по умолчанию: None, Evenly_Distributed, VM_Evenly_Distributed, Power_Saving и Cluster_Maintenance. Собственно, здесь все то же самое, что и у zVirt. Также можно отредактировать параметры по умолчанию или создать собственные политики.

Системные настройки

Ролевой доступ

Имеются предопределенные роли для Администраторов и Пользователей.

a35b7d6490bff5c7a90cfb735993f696.png

Есть возможность создавать собственные роли с нужными привилегиями. 

13da4166751ce78fb60a698cbccd4b51.png

Также можно создавать дополнительных пользователей во внутреннем домене с помощью ovirt-aaa-jdbc-tool.

Создание пользователей и подключение к существующим каталогам выполняется из консоли. Пользователи должны быть предварительно созданы из командной строки с помощью ovirt-aaa-jdbc-tool, прежде чем их можно будет добавлять в веб-интерфейс и назначать им роли и разрешения.

Для нового пользователя, согласно установленным ролям, доступен только Портал виртуальных машин, при попытке перехода на Портал администратора получаем соответствующее уведомление.

95cd9e50fe01e8df323bb5db5f97bd70.png

Интеграция с внешними каталогами

Для настройки интеграции с внешними каталогами необходимо использовать утилиту командной строки ovirt-engine-extension-aaa-ldap-setup в консоли виртуальной машины Hosted Engine. Доступны интеграции Available LDAP implementations:

  • 389ds

  • 389ds RFC-2307 Schema

  • Active Directory

  • IBM Security Directory Server

  • IBM Security Directory Server RFC-2307 Schema

  • IPA

  • Novell eDirectory RFC-2307 Schema

  • OpenLDAP RFC-2307 Schema

  • OpenLDAP Standard Schema

  • Oracle Unified Directory RFC-2307 Schema

  • RFC-2307 Schema (Generic)

  • RHDS

  • RHDS RFC-2307 Schema

  • iPlanet

Процесс требует настроенного DNS сервера, тестирование не производилось.

Интеграция с почтовыми системами

Настройка «ловушек SNMP» производится из консоли виртуальной машины Hosted Engine и отправляются службой ovirt-engine-notifier. В рамках тестирования я не стал проверять функцию, приведу скрин примера конфигурации.

6f535c461a286c3510403ffb9c31caff.png

Резервное копирование сервера управления

Для высокой доступности сервера управления должна быть выполнена установка в варианте Hosted Engine. Если хост, на котором запущена виртуальная машина Engine, переходит в режим обслуживания или неожиданно выходит из строя, виртуальная машина будет автоматически перенесена на другой хост в среде. По крайней мере, так должно быть в идеальной ситуации.

Что мы имеем на практике?

Я отключил хост с сервером управления, и… чуда не произошло! Вероятно, отработка этого сценария требует дополнительных настроек. После возвращения узла в строй, ВМ с Engine автоматически не запустилась. Чтобы вернуть стенд к жизни, пришлось обращаться к документации oVirt.

Мониторинг и удобство работы с системой

Удобство работы с системой

Работая с oVirt в первый раз, на создание ВМ потребовалось 20–30 минут. Довольно средненький результат. А вот за миграцию я бы поставил твердую пятерку, она выполняется достаточно предсказуемо, к тому же можно использовать сжатие.

Информативность списка ВМ я бы оценил как среднюю. На Пользовательском портале ВМ отображаются карточками, при большом количестве ВМ это неудобно даже с учетом возможности фильтрации и сортировки. 

aff56b12d6c7d1f9b4b689b18cb95b16.png

Мониторинг системы

Довольно информативно, но не самый качественный перевод усложняет жизнь.

Общая информация об утилизации ресурсов:

dc3d9116674a5e536be56b30563837a1.png

Информация об утилизации хостов:

0b37979b85798f0ba9cd83dfed41974c.png

Информация по потреблению ресурсов ВМ:

ff7f7b627152200f449a2a192085faf7.png

Карточка хоста:

65e5a9e8dc478b24ec7515117645eda7.png78646816e9e2df408f9c77405fc5215c.png1a48290dfecb562627f02d6479a4311e.pngfbd467456904e89da054532f5c6da1dc.png382c7951bb3d1c5daa026e91a6e35321.png141417a874008867e5ad9eeba76d147c.png

Подведем итоги

Что ж, давайте я попробую суммировать свой опыт с РЕД Виртуализацией.

По самому продукту во многом выводы аналогичны zVirt, но с небольшими отличиями.

Что понравилось:

  • Установка из ISO всей системы, гипервизор не является «приложением» поверх операционной системы;

  • Множество функций, доставшихся системе от oVirt. Как и писал в выводе про zVirt: «я бы согласился с оценкой «реализовано 95% функционала VMware vSphere Ent+ и vCenter»».

  • Систему можно существенно кастомизировать. Присутствует множество различных настроек.

Что не понравилось:

  • Вклад разработчика в продукт. Из замеченных мной доработок, пожалуй, я могу выделить лишь веб-интерфейс, который доработан и переведен относительно oVirt. Сравнивая с zVirt, который расширяет систему новыми доработками, РЕД Виртуализация — это более «чистый» oVirt. 

  • Все такой же высокий порог входа в работу с системой. Чтобы начать пользоваться РЕДом, вам потребуется уверенное знание Linux или специалист с подобными скиллами.

  • Документация требует перевода с русского на русский, но иногда варианты перевода поднимают настроение.

В целом, я бы отнес РЕД Виртуализацию к уже протестированному Альту. Подход тот же: производитель операционной системы добавляет в свой портфель решение по виртуализации на базе open source. Только Альт использует Proxmox / OpenNebula, а у РЕД — oVirt. 

От производителя в продукте: веб-интерфейс, поддержка, функции безопасности операционной системы и реестр отечественного ПО. Эти пункты, безусловно, важны и существенны, но каждый заказчик пусть решает достаточны ли они для установки такой системы в своем продуктивном окружении. 

Если у вас остались вопросы, задавайте их в комментариях, постараюсь ответить! Также буду рад, если вы поделитесь своим опытом работы с РЕД Виртуализацией.

© Habrahabr.ru