Казалось бы, виртуализация везде одинакова: в основе лежат гипервизоры, которые являются движущей силой, позволяя физическому хост-компьютеру управлять несколькими виртуальными машинами в качестве гостевых ОС. Это, в свою очередь, помогает максимально эффективно использовать вычислительные ресурсы, такие как память, пропускная способность сети и количество циклов процессора.
В России уже есть множество систем виртуализации. Некоторые это адаптированные open-source проекты, такие как oVirt. Однако существует ли решение, которое может быть проприетарным, но при этом разработчики хорошо разбираются в технологиях виртуализации? В этом случае можно будет обратиться за помощью не к анонимному сообществу, а к конкретным специалистам в России.
Среди существующих вариантов есть такое решение, как SpaceVM от компании «ДАКОМ М». Из его преимуществ — заявленная возможность проброса видеокарт Nvidia с технологией GRID даже при отсутствии лицензии, а также бесплатная помощь в миграции.
Осматриваем продукт со всех сторон
SpaceVM представляет собой корпоративную облачную платформу для создания и управления виртуальной инфраструктурой на базе серверов с архитектурой x86-64. В основе лежит гипервизор первого типа с открытым исходным кодом QEMU/KVM, что обеспечивает высокую производительность и поддержку широкого спектра операционных гостевых систем. Управляющая система же разработана командой Space с нуля, что позволяет всему функционалу работать стабильно и быстро, в отличие от Франкенштейнов конкурентов, собранных из разных кусков проектов с открытым кодом.
Создание кластера, нод и ВМ
Здесь все достаточно типично и привычно, если вы ранее работали с какой либо платформой виртуализации. Вы создаете локацию, в ней кластер, к которым привязываете серверы (ноды).
После добавления нод у нас появляется пул их ресурсов и данных. Далее создаются и настраиваются внешние и виртуальные сети, задав нужные адреса и VLAN.
Затем задаем кластерные транспорты и хранилища и после можно создавать виртуальные машины, выделяя под них необходимые ресурсы на нодах.
Управление виртуальными машинами и сетями
Управление жизненным циклом виртуальных машин (ВМ) в SpaceVM — это одна из самых развитых и гибких функций платформы. Через веб-интерфейс пользователи могут полностью контролировать каждую виртуальную машину, начиная с этапа её создания и заканчивая полным удалением, а также управлять всеми элементами виртуальных машин.
Создание виртуальной машины (ВМ) происходит с использованием шаблонов, которые могут включать заранее настроенные параметры для виртуального процессора, оперативной памяти, дисков и сетевых адаптеров, что упрощает процесс «нарезания» типовых конфигураций ВМ.
После создания ВМ её параметры можно изменять «на лету», не останавливая работу. Например, можно быстро скорректировать объем ОЗУ (кратными 256 Мб частями) или размер дисков. Также доступно изменение количества виртуальных ядер процессора или MTU для сетевых устройств.
Снимки ВМ
В SpaceVM, конечно же, есть инструмент для создания и управления снимками (снапшотами) состояний виртуальных машин. Снимок фиксирует текущее состояние ВМ: конфигурацию, данные на дисках и состояние памяти.
Снимки формируют древовидную структуру, где каждый новый снимок становится потомком предыдущего, что позволяет отслеживать историю изменений и выполнять переход к любому сохраненному состоянию или удалять по одному снимку или всё дерево.
Пользователю доступно три варианта: восстановление во включенном состоянии, в приостановленном или без восстановления состояния памяти (выключенная машина).
Кроме того, существует режим «Консистентный снимок» (при установленном на ВМ гостевом агенте). В этом режиме перед созданием снимка будут завершены все файловые процессы и сброшен кэш, что гарантирует его целостность даже для баз данных.
Перенос ВМ между кластерами
Функция переноса виртуальных машин в SpaceVM, как и в любой системе виртуализации, важна для балансировки нагрузки и обслуживания оборудования. Она позволяет мигрировать ВМ как в автоматическом, так и в ручном режиме.
В автоматическом режиме виртуальная машина перемещается на ноду с наименьшей нагрузкой в кластере. В ручном режиме администратор сам выбирает, куда перенести ВМ. Для этого нужно указать организацию, пул ресурсов, конкретный сервер, виртуальную сеть и пул данных для дисков.
Перенос возможен как по управляемой сети, так и по внешней сети. Платформа также поддерживает клонирование ВМ как в выключенном, так и в работающем состоянии, что позволяет быстро создавать копии для тестирования.
Управление сетями
Управление сетями в SpaceVM отличается высоким уровнем гибкости. Платформа позволяет создавать изолированные виртуальные сети, которые могут подключаться к физической сети через NAT или другие методы. Одной из ключевых сетевых технологий является микросегментация. Она позволяет устанавливать правила безопасности для отдельных виртуальных машин, а не для всей сети. Это значительно повышает уровень защиты и достигается благодаря расширенным возможностям брандмауэра.
В SpaceVM поддерживаются VLAN и агрегация каналов (link aggregation) в режимах active-backup и balance-tcp. Для масштабирования сети используются технологии overlay-сетей VXLAN, которые позволяют создавать виртуальные сети поверх существующей инфраструктуры. Для оптимизации трафика можно настраивать политики QoS (Quality of Service) на уровне отдельных сетевых интерфейсов ВМ, ограничивая пропускную способность входящего и исходящего трафика.
Управление ресурсами и хранилищами
В SpaceVM поддерживается множество объектов управления хранилищами: пулы данных (11 типов, включая zfs, lvm и gluster), диски, образы ISO, файлы, LUNs, сетевые хранилища (файловые и блочные), кластерные хранилища (транспорты и тома), ISCSI сервер (ISCSI storage и ISCSI target).
Виртуальные диски В SpaceVM реализованы как независимые объекты хранения, которые могут создаваться, управляться и перемещаться независимо от жизненного цикла виртуальной машины. Каждый диск обладает уникальным идентификатором (UUID), что обеспечивает надёжную идентификацию и упрощает аудит и управление.
Платформа использует полноценную поддержку с дисками виртуальных машин в виде файлов для работы с разделяемыми хранилищами. При необходимости виртуальные диски могут быть экспортированы в популярные форматы, такие как VMDK (VMware), VHD (Microsoft Hyper-V) и VDI (Oracle VirtualBox).
Платформа предоставляет эффективные инструменты для управления вводом-выводом (I/O) и настройки дисков. С помощью интерфейса можно установить жесткие ограничения на пропускную способность (в килобайтах в секунду) и количество операций ввода-вывода в секунду (IOPS) для каждого диска. Это особенно важно для многопользовательских систем и приложений, где важна высокая производительность и устойчивость к нагрузкам.
FreeGRID
Как мы упоминали во введении, одной из особенностей SpaceVM является FreeGRID. Это проприетарная разработка компании, предназначенная для проброса физических видеокарт NVIDIA (включая модели A16, A40, А100) в виртуальные машины под управлением Windows без необходимости покупать лицензии NVIDIA GRID. Это открывает возможности для использования высокопроизводительных графических процессоров в виртуализированных рабочих столах (VDI) и HPC-задачах по значительно более низкой цене, что делает SpaceVM привлекательным решением для задач, нуждающихся в GPU-ускорении.
Интеграция с экосистемой и обеспечение безопасности
SpaceVM позиционируется не как изолированное решение, а как центральный элемент в составе комплексной экосистемы. В нее также входит Space VDI — решение для создания виртуальных рабочих столов.
Безопасность — ключевой аспект разработки платформы. SpaceVM оснащена встроенным межсетевым экраном, который централизованно управляет правилами файрвола для виртуальных машин. Продукт также легко интегрируется с решениями известных российских разработчиков, таких как Kaspersky Endpoint Security и Dr.Web.
Безопасность включает в себя еще несколько важных аспектов, таких как детальное журналирование событий (аудит). Платформа сохраняет подробные записи всех действий, включая авторизации, ошибки и операции с виртуальными машинами и серверами. Это значительно облегчает расследование инцидентов.
Для защиты административного доступа используются политики блокировки по IP-адресу и настройка уровней привилегий для учетных записей. Платформа также интегрируется с различными системами аутентификации, включая Active Directory, FreeIPA, OpenLDAP и RADIUS. Это позволяет упростить управление доступом в рамках текущей IT-инфраструктуры компании.
SpaceVM включает в себя собственную систему резервного копирования, которая работает на уровне ядра гипервизора и может создавать резервные копии ВМ в формате .tar с опцией инкрементного резервного копирования.
Итог
Продукт не бюджетный и рассчитан на крупные предприятия и организации с высокими требованиями к надежности, безопасности, производительности (HA) и поддержке. Это прямой корпоративный аналог VMware vSphere, покрывающий до 80% функциональности VMware vSphere 7 Enterprise Plus (по словам разработчиков). Да, есть опенсурсный Proxmox VE, но SpaceVM — это хоть и проприетарное решение, но с отличной поддержкой от разработчиков, что немаловажно при миграции с раскрученного импортного решения.
Лицензии предоставляются по модели «пользователь платит за хост» (UPH), охватывая весь хост с ролью Node (сервер виртуализации) и контроллер кластера. Важно подчеркнуть, что лицензии бессрочные, что выгодно отличает их от подписочной модели SaaS.
Несмотря на высокую стоимость и некоторые недостатки, проект привлекателен своей простотой развертывания и использования. Кластер с виртуальными машинами можно установить примерно за четыре часа благодаря подробной документации. Пользователи могут получить помощь в Telegram-чате для ИТ-специалистов или на портале обратной связи.
Выбор за вами: хотите ли вы самостоятельно искать решения в многочисленных чатах сообществ или доверить свою инфраструктуру профессионалам, которые обязательно помогут?