31 мая 2021 Время чтения: 11 минут

VMmanager 6 и VMmanager 5: сравниваем возможности поколений

Марина Нифонтова

Марина Нифонтова

редактор блога ISPsystem

ISPSystem

В октябре 2020 года вышла в релиз шестая версия VMmanager. За полтора года продукт из небольшой веб-панели на Libvirt превратился в платформу для виртуализации и управления инфраструктурой. В этой статье посмотрим, как далеко ушел VMmanager 6 от предыдущего поколения — VMmanager 5.

Содержание

  • Высокая скорость разработки: обновления выходят раз в две недели, а их стабильность стала выше.
  • Отказоустойчивость: VMmanager 6 выдерживает нагрузку тысяч виртуальных машин и управляет множеством кластеров в одном интерфейсе.
  • Современный интерфейс: информативный для инженеров, удобный для конечных пользователей.
  • Умный мониторинг и уведомления: VMmanager 6 показывает состояние инфраструктуры и отдельных объектов. А в случае проблем отправляет сообщение администратору на почту или в Телеграм.
  • Готовые сетевые настройки: коммутация для простой инфраструктуры, маршрутизация для ДЦ по типу OVH и IP-Fabric с плавающими IP-адресами.
  • Виртуализация LXD: технология экономит ресурсы оборудования и позволяет выдавать сервис за несколько секунд.
  • Поддержка образов: можно подключать собственные репозитории или использовать репозиторий ISPsystem, создавать образы из виртуальных машин.
  • SaaS: расширенная функциональность скриптов позволяет предоставлять клиентам готовые сервисы с кастомными настройками.
  • High availability: виртуальные машины автоматически мигрируют с неисправного узла и восстановятся.
  • Улучшенный сервис бэкапов: в VMmanager 6 резервные копии виртуальных машин можно представлять как отдельную услугу или дополнение к тарифу.

Высокая скорость разработки

VMmanager 5 представляет собой монолит, написанный на C++. Это усложняло разработку: пользователям приходилось дольше ждать выхода новой функциональности.

В VMmanager 6 архитектура микросервисная и асинхронная. Сервисные не зависят друг от друга. Благодаря этому удалось стабилизировать разработку: обновления выходят каждые две недели. За полтора года VMmanager 6 обзавёлся множеством новых инструментов, которых нет в пятой версии продукта. О самых важных из них расскажем далее.

Архитектура VMmanager 6. Это неполный список микросервисов, из которых состоит платформа
Архитектура VMmanager 6. Это неполный список микросервисов, из которых состоит платформа

Отказоустойчивость

Из-за особенностей архитектуры, VMmanager 5 проигрывает свежей версии по отказоустойчивости. Например, при создании 500 виртуальных машин панель будет работать медленно.

Задачи в VMmanager 5 выполняются последовательно. И если пользователи останавливали виртуальную машину или другой «тяжелый» процесс, остальные задачи ждали своей очереди, а работа с интерфейсом блокировалась.

Блокирующий прогресс-бар при остановке виртуальной машины в VMmanager 5
Блокирующий прогресс-бар при остановке виртуальной машины в VMmanager 5

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

VMmanager 6 выдерживает нагрузку тысяч виртуальных машин и управляет всеми кластерами в едином интерфейсе. Задачи в VMmanager 6 распределяет сервис Taskmanager. Большинство операций выполняются как отложенные в отдельных процессах. Если в одном из процессов что-то пойдёт не так, это не повлияет на работу всей платформы.

На главном дашборде VMmanager 6 показывает своё состояние: сколько RAM и CPU она потребляет, сколько можно создать узлов, виртуальных машин, контейнеров.

Состояние VMmanager 6 представлено на главном дашборде. Данные обновляются в режиме реального времени
Состояние VMmanager 6 представлено на главном дашборде. Данные обновляются в режиме реального времени

В VMmanager 6 есть возможность делать бэкапы платформы на внешние устройства. Дополнительно пять последний резервных копий сохраняются на сервере с VMmanager.

Новый удобный интерфейс

Интерфейс VMmanager 5 устарел по внешнему виду и поведению: в нём тяжело ориентироваться новым пользователям.

Создание виртуальной машины в VMmanager 5: пользователям приходится заполнять длинную форму, а на создание ВМ уходит по несколько минут
Создания виртуальной машины в VMmanager 5: пользователям приходится заполнять длинную форму, а на создание ВМ уходит по несколько минут

Интерфейс VMmanager 6 отличается современным дизайном и отзывчивостью. Общение с сервером происходит при помощи REST API и WebSocket. Создание виртуальной машины занимает несколько секунд.

В VMmanager 6 создать виртуальную машину можно в один клик: все поля предзаполнены. Платформа автоматически генерирует название, пароль и другие данные
В VMmanager 6 создать виртуальную машину можно в один клик: все поля предзаполнены. Платформа автоматически генерирует название, пароль и другие данные
В VMmanager 6 виден статус виртуальных машин и действия с ними. При выполнении задач интерфейс не блокируется
В VMmanager 6 виден статус виртуальных машин и действия с ними. При выполнении задач интерфейс не блокируется

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

«Клиенты, которые ранее арендовали услуги на VMmanager 5, положительно отзывались о новом интерфейсе VMmanager 6, а также скорости установки ОС на VM — это и правда значительное преимущество»

Юрий Бозоян, генеральный директор MskHost

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

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

Умный мониторинг и уведомления

В VMmanager 6 больше инструментов для мониторинга, а их информативность выше.

Дашборды и карточки сущностей

Дашборды в VMmanager 6 показывают состояние инфраструктуры в режиме реального времени и за выбранный период. Пользователи могут видеть общую статистику и отследить состояние каждого кластера, узла и виртуальной машины.

Главный дашборд VMmanager 6
Главный дашборд VMmanager 6

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

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

Интеграция с Grafana

Интеграции с Grafana в VMmanager 6 работает из коробки — для мониторинга достаточно настроить дашборд.

Преднастроенный дашборд в Grafana. Чтобы начать работу, не нужно проводить интеграцию. Администратору достаточно выбрать метрики, которые он хочет визуализировать
Преднастроенный дашборд в Grafana. Чтобы начать работу, не нужно проводить интеграцию. Администратору достаточно выбрать метрики, которые он хочет визуализировать

Уведомления на почту и в Телеграм

Сервис уведомлений помогает вовремя реагировать на инциденты. Например, если у провайдера перестанут выдаваться ВМ из биллинга,администраторы узнают об этом.

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

  • По параметрам (CPU, RAM, STORAGE);
  • По задачам в платформе (повреждение ВМ, недоступность сервера, ошибки в задачах на сервере, перезагрузка, ошибки создания ВМ и другие).
Настройка уведомлений в VMmanager
Настройка уведомлений в VMmanager

Готовые сетевые настройки: коммутация, маршрутизация, IP-fabric

В VMmanager 5 настройка сети на кластере была непростой задачей. Конфигурацию приходилось производить вручную, на это уходило много времени.

В шестой версии мы автоматизировали работы по настройке сетей на гипервизоре. Теперь предлагаем готовые решения:

Коммутация на бриджах — в этой схеме виртуальные машины ведут себя так, словно напрямую подключены к сети. Схема подходит для небольшой инфраструктуры на собственном или арендованном в дата-центре железе.

Маршрутизация — трафик с узла маршрутизируется на VM. Сеть не видит MAC каждой ВМ. ВМ и узел находятся в разных подсетях. Выбирайте эту схему, если арендуете оборудование в дата-центрах Hetzner или OVH.

IP-Fabric — разработка наших инженеров. Настройка позволяет свободно перемещать ip-адреса между узлами, изолировать сети конечных пользователей и экономить публичные ip-адреса. В IP-Fabric трафик с узла маршрутизируется на виртуальные машины. Узел может находиться в серой сети. Между узлом и route reflector происходит обмен iBGP маршрутами для построения overlay сетей.

Схема анонсирования BGP маршрутов с узла в сторону маршрутизатора
Схема анонсирования BGP маршрутов с узла в сторону маршрутизатора

Скоро мы планируем добавить в VMmanager еще одну схему сети. В ней будет поддержка агрегированных trunk-port интерфейсов на узле с приземлением VLAN на виртуальной машине. А следующей итерацией реализуем схему сети на VxLAN и EVPN. Это позволит предоставлять IaaS с помощью VMmanager 6. Пользователи смогут получать изолированную виртуальную инфраструктуру и управлять ей:

  • Создавать пулы виртуальных машин;
  • Конфигурировать приватные сети;
  • Назначать публичные IP-адреса.

Контейнерная виртуализация LXD

Мы добавили в VMmanager 6 поддержку контейнеров LXD. Близкий аналог этой технологий — OVZ. Однако LXD — более современная, технологичная. Она включена в ядро Linux и не требует установки патчей. Виртуализация LXD очень производительна. С ней вы можете выдавать услуги за несколько секунд.

LXD повышает окупаемость оборудования. Мы провели сравнительное тестирование технологий LXD и KVM. В тесте участвовал выделенный сервер на базе Intel(R) Xeon(R) CPU E3-1230 v3 с конфигурацией 16 GB RAM. На его основе запускали LXD-контейнеры и KVM-серверы.

Мы сымитировали VPS среднего клиента с сайтом. Экземпляры разворачивали со следующими установками:

  • ОС CentOS 7,
  • PHP 74-fpm,
  • База данных MySQL 5.5,
  • WordPress.

На одной машине удалось развернуть 70 экземпляров контейнеров против 15 виртуальных машин на KVM.

Количество развёрнутых экземпляров

Виртуализация LXD экономит RAM и CPU. Чтобы при этом оптимально использовать дисковое пространство, мы добавили поддержку хранилища ZFS. VMmanager переиспользует LXD-образ. На узле хранится один экземпляр ОС. На диске у каждого владельца контейнера хранится только разница между родительским и пользовательским образом.

Работа с образами

VMmanager 6 поддерживает работу с образами. Можно создавать их на основе виртуальных машин, подключать собственные репозитории или репозиторий ISPsystem. Это избавляет от рутинной работы: виртуальную машину с преднастроенным ПО можно создать за несколько секунд: развернуть почтовый сервер, базу данных или другой сервис.

Репозитории образов в VMmanager 6
Репозитории образов в VMmanager 6

Поддержка SaaS

VMmanager 5 предназначен для выдачи виртуальных машин. В шестой версии продукта возможности провайдеров шире. Вы можете предоставлять пользователям сервис по модели SaaS — разворачивать виртуальные машины с предустановленным ПО и кастомными настройками.

Платформа поддерживает Shell-скрипты и Powershell-скрипты. Для скриптов можно установить переменные из репозитория VMmanager 6 или использовать кастомные. Тогда при создании виртуальной машины VMmanager автоматически запросит их значения у пользователей.

Репозиторий переменных для использования в SaaS
Репозиторий переменных для использования в SaaS

Мы рассказали о вариантах организации SaаS в блоге:

Кластеры с high availability

В шестой версии платформы мы добавили поддержку кластеров высокой доступности. VMmanager 6 отслеживает состояние узлов. Если система диагностирует потерю связи по сети или с хранилищем, виртуальные машины поднимутся на другом узле.

В будущем мы добавим Proactive High availability. Этот инструмент будет работать в связке с DCImanager (платформой для управления физическим оборудованием). Proactive High availability будет предсказывать выход узла из строя и заранее мигрировать виртуальные машины.

Бэкапы

В VMmanager 5 можно создавать копии любой ВМ или всех сразу. Бэкапы хранятся на локальном диске или в удалённом FTP-хранилище. Копируется XML-описание ВМ, создаются копии её виртуальных дисков, дамп памяти. Все эти данные упаковываются в архив.

В VMmanager 6 мы улучшили эту функциональность: реализовали возможность гибко настраивать расписание и доработали интеграцию с BILLmanager. Бэкапы можно продавать как отдельный тариф или дополнение к основной услуге.

Настройка расписания бэкапов в VMmanager 6. Можно делать бэкапы по расписанию для каждой ВМ отдельно, для кластера, тарифного плана или шаблона в биллинге.
Настройка расписания бэкапов в VMmanager 6. Можно делать бэкапы по расписанию для каждой ВМ отдельно, для кластера, тарифного плана или шаблона в биллинге.

Попробуйте VMmanager 6 для виртуальной инфраструктуры

Попробуйте VMmanager 6 для управления виртуальной инфраструктурой. Оставьте заявку — специалисты ISPsystem проконсультируют о возможностях платформы и помогут с тестированием.