Какие возможности продукта помогут построить отказоустойчивую и экономичную виртуальную инфраструктуру, рассказал Александр Гришин, владелец платформы VMmanager. На MeetUP, который состоялся 14 апреля, он поделился результатами развития продукта за год и планами.
Содержание
VMmanager 6: от панели к платформе
Легкая и производительная LXD контейнеризация и ZFS
VMmanager 6: от панели к платформе
Многие знакомы с предыдущей, пятой версией VMmanager. Она вышла примерно семь лет назад. На тот момент это была хорошая, простая и надёжная веб-панель — веб-интерфейс над Libvirt. Но время не стоит на месте, технологии идут вперёд. А ожидания клиентов и администраторов растут. Поэтому сегодня я расскажу про новую версию нашего продукта — платформу для виртуализации VMmanager 6. Потому что VMmanager 6 — это не просто панель. Это мощный многосоставной асинхронно работающий микросервисный инструмент для администрирования виртуальной инфраструктуры.
Если приблизиться к бизнесу, VMmanager 6 — это:
- Оркестрация виртуальных машин и контейнеров;
- Инструмент мониторинга, статистики и аналитики по параметрам в системе;
- Учет задач в платформе: кто, когда и и какие задачи запускал, какой у них статус;
- Управление пользователями и ролями;
- Уведомления о событиях на почту или в Телеграм;
- Интеграция с PowerDNS, DNSBL;
- Автоматическая выдачи ресурсов заказчику;
- Управление бэкапами;
- Автоматическое обслуживание гипервизоров и узлов;
- Политики заполнения гипервизоров;
- Учет ip-адресов и управление ими;
- Интеграция с PowerDNS, DNSBL;
- CEPH, SAN, IP-Fabric, High availability и многое другое.
За прошлый год мы реализовали большое количество новой функциональности. В разговорах с клиентами я часто слышу, что VMmanager сейчас и год назад — это два разных продукта. Это действительно так. Вот некоторые возможности VMmanager, о которых я расскажу:
- Распределенное хранилище Ceph;
- Сетевое хранилище SAN;
- Unbreakable кластеры;
- Легкая и производительная LXD контейнеризация и ZFS;
- Уведомления на почту и в Тelegram;
- IP-Fabric на BGP;
- Поддержка SaaS.
Я выбрал их, не потому что это красивые слова или модные технологии. Каждое из этих улучшений поможет вывести бизнес на новый уровень и приблизить главную цель любой компании — получать больше прибыли.
Распределенное сетевое хранилище Ceph в VMmanager
Сeph — самый бюджетный способ настроить сетевое хранилище для инфраструктуры. Ceph может располагаться удалённо от основного кластера виртуализации и не зависеть от него. Он обладает следующими преимуществами:
- Отказоустойчивость: при выходе из строя одного из узлов данные автоматически копируются на свободные узлы;
- Репликация: можно указывать, сколько раз копировать данные клиентов;
- Масштабирование: физические диски серверов легко добавляются в кластер.
Таким образом, вы получаете сетевое хранилище легко и недорого. Использовать Ceph можно прямо сейчас в VMmanager 6.
Сетевое хранилище SAN (iSCSI/FC) в VMmanager
Помимо Ceph, есть второй, способ решить задачу хранения данных. Это аппаратное решение SAN (Storage Area Network). SAN представляет собой дисковые полки, подключенные по протоколам Fibre Channel или iSCSI к узлам гипервизора.
SAN обладает всеми преимуществами Ceph. Но так как это аппаратное решение, оно даёт еще более высокую скорость работы, надежность, возможность масштабирования и простоту в обслуживании. SAN позволяет эффективно использовать места в стойках, потому что в дисковых полках помещается больше физических дисков, чем в сервере.
Unbreakable кластеры в VMmanager
При использовании сетевых хранилищ Ceph и SAN в VMmanager вы можете поднимать отказоустойчивые unbreakable кластеры. Мы добавили технологию high availability, которая позаботится о надежной работе виртуальных машин. Если произойдет авария или откажет узел, виртуальные машины автоматически восстановятся на свободных узлах кластера.
При реализации функциональности учитывали опыт, наработанный с VMmanager 5, и изучали конкурентов. В частности, вдохновлялись этой концепцией в VMware.
Для реализации отказоустойчивости нам было необходимо решить классическую задачу достижения консенсуса в распределенных системах. Так мы адаптировали алгоритм из семейства Paxos под специфику VMmanager.
Один из узлов берет на себя роль лидера. Лидер принимает решения на уровне всего кластера. Алгоритм Paxos гарантирует, что в любой момент в кластере может быть только один лидер.
В нашем варианте используются два основных фактора определения доступности узла:
- Доступность на уровне управляющей сети;
- Доступность на уровне сетевого хранилища.
Вспомогательный фактор — внешний проверочный IP-адрес. Он позволяет определять ситуацию, когда узел потерял доступ к управляющей сети, но у виртуальных машин ещё есть выход в интернет или другую нужную сеть. И восстановительных действий и релокаций предпринимать не надо.
Как настроены отказоустойчивые кластеры в панели VMmanager
Не важно, используете вы программное хранилище Ceph или аппаратное SAN. Каждое из них позволяет построить отказоустойчивую виртуальную инфраструктуру. А это, в свою очередь, помогает гарантировать более высокий уровень SLA для клиентов.
Дополнительные материалы об отказоустойчивых кластерах в VMmanager
LXD/LXC контейнеризация
Мы получили запрос от наших клиентов на более лёгкую, чем KVM, виртуализацию, и добавили в VMmanager поддержку контейнеров LXD. Близкий аналог этой технологий — OVZ. Однако LXD — более современная, технологичная виртуализации. Она включена в ядро Linux и не требует установки патчей.
LXD — очень производительная технология. Её часто называют легковизором, и это звание заслуженно. В скорости мы можем убедиться сами.
С LXD вы можете выдавать услуги за несколько секунд.
LXD повышает окупаемость оборудования. Мы проводили сравнение утилизации KVM и LXD.
Условия теста
В тесте участвовал выделенный сервер на базе Intel(R) Xeon(R) CPU E3-1230 v3 с конфигурацией 16 GB RAM. На его основе запускали LXD-контейнеры и KVM-серверы.
Мы имитировали VPS среднего клиента с сайтом. Экземпляры разворачивали со следующими установками:
- ОС CentOS 7,
- PHP 74-fpm,
- База данных MySQL 5.5,
- WordPress.
Что замеряли:
- Время развертывания;
- Количество развернутых экземпляров.
Высокая утилизация достигается преимущественно за счет более эффективного использования CPU и RAM. Но чтобы при этом Storage не стал узким местом вашего бизнеса, мы реализовали поддержку хранилищ ZFS для хранения образов.
С технологии ZFS Snapshots платформа переиспользует LXD-образ: на узле хранится только один экземпляр ОС. А на диске у каждого владельца контейнера записывается только разница между родительским и пользовательским образом.
У LXD есть ограничение: эту технологию можно использовать только на Linux based ОС. Предоставлять с её помощью услуги на Windows не получится. Однако эта виртуализация отлично подходит для задач на Linux и позволяет существенно повысить утилизацию трёх основных ресурсов: RAM, Storage, CPU.
Дополнительные материалы о виртуализации LXD в VMmanager
Быстрые, как Docker, надёжные, как KVM. LXD-контейнеры — новый тип виртуализации в VMmanager
Тестируем технологии KVM и LXD
Рабочие варианты использования виртуальных машин, Docker, LXD и Kubernetes
Уведомления на почту и в Телеграм
Основное назначение уведомлений — повысить уровень клиентского сервиса. В VMmanager 6 можно настроить уведомления в Телеграм или на почту. Если повредился узел, виртуальная машина или возникла ошибка в списке задач, администраторы узнают об этом до того, как клиент обратится за помощью. Скорость реакция на инциденты увеличится.
С помощью сервиса уведомлений можно настроить сообщения по ошибкам на узлах и виртуальных машинах, а также по превышению параметров storage, CPU, RAM. Это поможет специалистам реагировать проактивно, чтобы избежать типичных ошибок. Например, Storage на узле не закончится неожиданно, и клиент будет доволен уровнем сервиса.
Дополнительные материалы о мониторинге и уведомлениях в VMmanager
Мониторинг в VMmanager: измеряешь — значит управляешь
IP-fabric на BGP в VMmanager
IP-fabric — это инструмент для сетевой абстракции и наше ноу-хау.
Как организована IP-fabric
На первом уровне обычная серая плоская L3-сеть для гипервизоров. В нее имеют доступ только ваши специалисты (администраторы VMmanager) — это закрытый контур. Он выполняет роль underlay (менеджмент-сеть).
Поверх первого уровня создаются overlay-уровни под каждую виртуальную машину. Это pir to pir соединение, по /32 маске с публичным адресом. Маршрутизация такого публичного адреса осуществляется на underlay-уровне по протоколу BGP.
Сети строятся изолированно под каждого заказчика.
IP-Fabric даёт следующие преимущества:
- Финансовая выгода: экономятся публичные IP-адреса. Чем больше инфраструктура компании, тем существеннее экономия.
- Повышение безопасности: инфраструктура находится в закрытом контуре и изолирована от клиентов. При необходимости она может быть изолирована и от интернета через фаервол.
- Уменьшение широковещательного трафика: производительность сети повышается в несколько раз. Это положительно влияет на удовлетворенность клиентов: все любят, когда сеть работает быстро и эффективно.
Дополнительные материалы об IP-Fabric в VMmanager
IP-Fabric: новая сетевая конфигурация в VMmanager
Поддержка SaaS
VMmanager 6 поддерживает предоставления услуг по модели SaaS. Вы можете упаковать знания ваших специалистов и предлагать их как услугу. Клиентам редко когда нужно просто арендовать ресурсы (CPU, storage, RAM). Иногда им все равно, брать одну виртуальную машину или две — им нужно просто решить свою проблему. Это решение вы можете предоставить при помощи инструментов в платформе VMmanager:
- Репозиториев ОС;
- Скриптов.
Репозитории ОС
В VMmanager вы можете подключать свои репозитории с кастомными ОС. Таким образом можно устанавливать и преднастраивать софт.
Скрипты
Инструмент скриптов помогает предоставлять услуги под каждого клиента и пробросывать его данные для тонкой настройки ПО.
В VMmanager можно использовать большое количество уже встроенных переменных: электронную почту, get away, ip-адрес и другие.
На уровне скриптов можно:
- Управлять доступом;
- Назначать владельца скрипта;
- Скрывать содержимое скрипта от конечного пользователя, чтобы сохранить интеллектуальную собственность;
- Использовать параметры, чтобы запросить у пользователя данные;
- Настроить мультизначные преднастроенные параметры. Это позволяет дать пользователю выбор из готовых значений.
Все эти инструменты помогают настроить софт под конкретного пользователя: с нужными ему настройками, параметрами, интеграциями. Будет ли это одна виртуальная машина или две, с установленным туда базами данных или набор ПО для веб-программирования — не имеет значения. Главное, что клиент сможет пользоваться готовым сервисом.
В последнем обновлении мы добавили поддержку Powershell скриптов для ВМ на Windows системах.
Дополнительные материалы о SaaS в VMmanager
CI/CD как сервис в платформе VMmanager
VMmanager: итоги года и достижения
В рамки доклада не уместился рассказ о чуть менее значимых улучшениях, которые мы добавили. Про некоторые из них можно прочитать в материале блога ISPsystem.
Что полезного появилось в VMmanager за год. 20 инструментов для администрирования инфраструктуры
VMmanager сильно развился за год. И каждая из добавленных функциональностей обусловлена финансовой выгодой. Она призвана повысить качество услуг и улучшить клиентский сервис:
- Повысить удовлетворенность пользователей;
- Лучше утилизировать физические ресурсы;
- Быстрее окупать вложения;
- Экономить ip-адреса;
- Увеличить производительность сети;
- Быстрее реагировать на инциденты;
- Расширить список предоставляемых услуг, в том числе через модель SaaS;
- Обеспечить отказоустойчивость и высокий SLA;
- Обеспечить безопасность собственной инфраструктуры и инфраструктуры заказчика.
Напоследок расскажу еще о двух достижениях:
Компания Rock911 Labs специализируется на аудите безопасности ПО. Её эксперты признали VMmanager одним из самых безопасных платформ для виртуализации.
Известный агрегатор отзывов G2 наградил VMmanager как High Performer на рынке продуктов виртуализации за прошлый год.
Удобный информативный интерфейс
Мы работаем над улучшением интерфейса. Теперь в VMmanager можно настроить внешний вид таблиц: выбрать, какую информацию показать. Например, инженеры могут настроить интерфейс, чтобы получать больше информации об узлах или других сущностях.
Планы
Новый информативный дизайн. Мы уже двигаемся в этом направлении. Недавно добавили компактный вид в таблицы и возможность настраивать отображении информации в интерфейсе. В будущем планируем презентовать совершенно новый интерфейс продукта.
Гиперконвергентные кластеры — возможность настроить Ceph прямо из интерфейса платформы, на тех же узлах, которые используются как гипервизоры.
Политика распределения виртуальных машин по тэгам, а также DRS/sDRS балансировка уже созданных ВМ.
Proactive High availability — это функциональность будет работать в связке с DCImanager (платформой для управления физическим оборудованием). Она позволит предсказать выход узла из строя и заранее перевезет критически важные виртуальные машины на работающий узел.
Гибкие сети (Bridge) возможность прямо из интерфейса создавать бриджи бонды мапить их виртуальные машины. Это удобно для тех, кто предпочитает плоскую сеть. Релиз ожидается в июне 2020 года.
vIaaS (виртуальная инфраструктура как сервис). VMmanager позволит предоставлять пользователям виртуальную инфраструктуру, абстрагированную от физического и сетевого оборудования провайдера. Пользователь получит возможность управлять пулом виртуальных машин, публичными IP-адресами, создавать любое количество приватных сетей для виртуальных машин. Это будет возможно благодаря технологиям VxVLAN eVPN.
Вопросы и ответы
VMmanager поддерживает возможность работы с кластерами в нескольких дата центрах? Чтобы образы, из которых разворачиваются виртуальные машины, не гонялись между дата-центрами, а хранились в каждой локации.
Да, поддерживаются. И шаблоны ОС хранятся у нас на узлах кластера.
Есть потребность разворачивать готовые сервисы SQL, прокси, почтовые сервиса, как это делает Яндекс. Планируете ли вы это делать?
Как раз для этого мы реализовали возможность выдачи услуг по модели SaaS. Вы своими силами можете сделать это прямо сейчас.
Если будет запрос, мы подумаем над тем, чтобы предоставлять готовые сервисы. Мы могли бы оцифровать некоторые знания наших инженеров. Но каждый бизнес предоставляет услуги клиентам по-своему. Поэтому, на мой взгляд, самое правильное — это использовать инструмент SaaS и настраивать его индивидуально под ваших клиентов, так, как вы считаете правильным.
Попробовать VMmanager 6