В октябре 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 5 проигрывает свежей версии по отказоустойчивости. Например, при создании 500 виртуальных машин панель будет работать медленно.
Задачи в VMmanager 5 выполняются последовательно. И если пользователи останавливали виртуальную машину или другой «тяжелый» процесс, остальные задачи ждали своей очереди, а работа с интерфейсом блокировалась.
Низкая устойчивость к нагрузкам и поддержка VMmanager 5 только одного кластера создаёт неудобства для владельцев крупной инфраструктуры. Приходится закупать несколько лицензий и переключаться между интерфейсами, чтобы администрировать несколько проектов или дата-центров.
VMmanager 6 выдерживает нагрузку тысяч виртуальных машин и управляет всеми кластерами в едином интерфейсе. Задачи в VMmanager 6 распределяет сервис Taskmanager. Большинство операций выполняются как отложенные в отдельных процессах. Если в одном из процессов что-то пойдёт не так, это не повлияет на работу всей платформы.
На главном дашборде VMmanager 6 показывает своё состояние: сколько RAM и CPU она потребляет, сколько можно создать узлов, виртуальных машин, контейнеров.
В VMmanager 6 есть возможность делать бэкапы платформы на внешние устройства. Дополнительно пять последний резервных копий сохраняются на сервере с VMmanager.
Новый удобный интерфейс
Интерфейс VMmanager 5 устарел по внешнему виду и поведению: в нём тяжело ориентироваться новым пользователям.
Интерфейс VMmanager 6 отличается современным дизайном и отзывчивостью. Общение с сервером происходит при помощи REST API и WebSocket. Создание виртуальной машины занимает несколько секунд.
Мы получаем от клиентов положительные отзывы о новым интерфейсе. Прежде всего он влияет на удовлетворенность конечных пользователей: клиенты довольны, что могут быстро и самостоятельно заказать виртуальный сервер или изменить его конфигурацию.
Юрий Бозоян, генеральный директор MskHost
Одно из существенных улучшений интерфейса вышло в майском релизе. Теперь пользователи могут настраивать вид таблиц и выбирать данные, которые они хотят иметь под рукой.
Умный мониторинг и уведомления
В VMmanager 6 больше инструментов для мониторинга, а их информативность выше.
Дашборды и карточки сущностей
Дашборды в VMmanager 6 показывают состояние инфраструктуры в режиме реального времени и за выбранный период. Пользователи могут видеть общую статистику и отследить состояние каждого кластера, узла и виртуальной машины.
Платформа не только собирает больше метрик, но и анализирует их. VMmanager показывает потребление вычислительных ресурсов, занятость диска и заполняемость узлов, а также прогнозирует, сколько виртуальные машин можно развернуть.
Интеграция с Grafana
Интеграции с Grafana в VMmanager 6 работает из коробки — для мониторинга достаточно настроить дашборд.
Уведомления на почту и в Телеграм
Сервис уведомлений помогает вовремя реагировать на инциденты. Например, если у провайдера перестанут выдаваться ВМ из биллинга,администраторы узнают об этом.
Сервис позволяет гибко задавать параметры пиков и событий. В нём вы можете настроить уведомления:
- По параметрам (CPU, RAM, STORAGE);
- По задачам в платформе (повреждение ВМ, недоступность сервера, ошибки в задачах на сервере, перезагрузка, ошибки создания ВМ и другие).
Готовые сетевые настройки: коммутация, маршрутизация, IP-fabric
В VMmanager 5 настройка сети на кластере была непростой задачей. Конфигурацию приходилось производить вручную, на это уходило много времени.
В шестой версии мы автоматизировали работы по настройке сетей на гипервизоре. Теперь предлагаем готовые решения:
Коммутация на бриджах — в этой схеме виртуальные машины ведут себя так, словно напрямую подключены к сети. Схема подходит для небольшой инфраструктуры на собственном или арендованном в дата-центре железе.
Маршрутизация — трафик с узла маршрутизируется на VM. Сеть не видит MAC каждой ВМ. ВМ и узел находятся в разных подсетях. Выбирайте эту схему, если арендуете оборудование в дата-центрах Hetzner или OVH.
IP-Fabric — разработка наших инженеров. Настройка позволяет свободно перемещать ip-адреса между узлами, изолировать сети конечных пользователей и экономить публичные ip-адреса. В IP-Fabric трафик с узла маршрутизируется на виртуальные машины. Узел может находиться в серой сети. Между узлом и route reflector происходит обмен iBGP маршрутами для построения overlay сетей.
Скоро мы планируем добавить в 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. Это избавляет от рутинной работы: виртуальную машину с преднастроенным ПО можно создать за несколько секунд: развернуть почтовый сервер, базу данных или другой сервис.
Поддержка SaaS
VMmanager 5 предназначен для выдачи виртуальных машин. В шестой версии продукта возможности провайдеров шире. Вы можете предоставлять пользователям сервис по модели SaaS — разворачивать виртуальные машины с предустановленным ПО и кастомными настройками.
Платформа поддерживает Shell-скрипты и Powershell-скрипты. Для скриптов можно установить переменные из репозитория VMmanager 6 или использовать кастомные. Тогда при создании виртуальной машины VMmanager автоматически запросит их значения у пользователей.
Мы рассказали о вариантах организации SaаS в блоге:
- QA специалист Антон Рязанцев поделился, как в ISPsystem разворачивают тестовые стенды и экономят 15 человеко-часов в неделю.
- DevOPS VMmanager Илья Калиниченко написал про СI/CD в качестве сервиса.
Кластеры с high availability
В шестой версии платформы мы добавили поддержку кластеров высокой доступности. VMmanager 6 отслеживает состояние узлов. Если система диагностирует потерю связи по сети или с хранилищем, виртуальные машины поднимутся на другом узле.
В будущем мы добавим Proactive High availability. Этот инструмент будет работать в связке с DCImanager (платформой для управления физическим оборудованием). Proactive High availability будет предсказывать выход узла из строя и заранее мигрировать виртуальные машины.
Бэкапы
В VMmanager 5 можно создавать копии любой ВМ или всех сразу. Бэкапы хранятся на локальном диске или в удалённом FTP-хранилище. Копируется XML-описание ВМ, создаются копии её виртуальных дисков, дамп памяти. Все эти данные упаковываются в архив.
В VMmanager 6 мы улучшили эту функциональность: реализовали возможность гибко настраивать расписание и доработали интеграцию с BILLmanager. Бэкапы можно продавать как отдельный тариф или дополнение к основной услуге.
Попробуйте VMmanager 6 для виртуальной инфраструктуры
Попробуйте VMmanager 6 для управления виртуальной инфраструктурой. Оставьте заявку — специалисты ISPsystem проконсультируют о возможностях платформы и помогут с тестированием.