Привет, Хабр!
Сегодня будем внезапно тестировать SpaceVM. Внимательный читатель заметит, что этой системы в списке лидеров не было. Как же она стала участником эксперимента? Причина проста — мне банально не удалось достать дистрибутив ПК «Звезда», поэтому я решил заменить ее на SpaceVM. Не буду вас утомлять — давайте посмотрим, что внутри и как это работает!
Предыдущие материалы:
Большое тестирование российских систем виртуализации. Статья первая, вводная
Тестируем отечественную систему виртуализации: zVirt
Тестируем отечественную систему виртуализации: Альт
Тестируем отечественную систему виртуализации: VMmanager
Тестируем отечественную систему виртуализации: РЕД Виртуализация
Кратко об SpaceVM
Итак, вот что известно о решении.
SpaceVM – российская система виртуализации. Производитель позиционирует решение как облачную платформу, предназначенную для развертывания полноценного частного облака в корпоративной среде.
Разрабатывает решение ООО «ДАКОМ М». Я не нашел никаких официальных комментариев или подтверждений, но у меня складывается довольно однозначное впечатление о непосредственной связи продуктов ECP Veil от НИИ «Масштаб» и SpaceVM от ООО «ДАКОМ М».
Помимо SpaceVM в экосистему Space входит виртуализация рабочих столов Space VDI и клиент подключения к инфраструктуре VDI с поддержкой операционных систем Windows и Linux.
Возможности, которые заявляет производитель:
Также производитель позиционирует SpaceVM как замену платформам серверной виртуализации от VMware и Microsoft: по информации из буклета, их функциональные возможности реализованы на 80%.
Для меня решение SpaceVM выделяется на фоне многих продуктов тем, что управление виртуализацией разрабатывается полностью производителем самостоятельно. В качестве самого гипервизора используется KVM, но все остальное — это результат работы вендора.
В нашем цикле уже был продукт с похожим подходом — это VMmanager от ISPsystem. Подробнее про его тест можно прочитать по ссылке.
Что ж, давайте посмотрим, как работает SpaceVM, на практике.
Результаты тестирования SpaceVM
Кратко об условиях.
В тестировании использовалась версия 6.3.1.
Ситуация та же, что и с другими решениями — со всеми особенностями SpaceVM я разбирался по ходу дела. Есть вероятность, что знакомый с этой системой специалист справился бы с задачами тестирования быстрее.
Тестирование проходило в режиме вложенной виртуализации, поэтому параметры производительности почти не оценивались. Основной акцент на функции.
Установка продукта и настройка
Документация
Документация ведется с помощью инструмента «Material for MkDocs», есть светлая и темная темы — за это отдельное спасибо. Также документация доступна оффлайн после установки. Открывается с раздела «Быстрый старт», присутствует сразу несколько руководств:
Руководство системного программиста;
Руководство оператора;
REST API;
CLI;
Ответы на частые вопросы.
Благодаря разделу «Быстрый старт» с установкой проблем не возникло.
Документация продукта SpaceVM оставила приятные впечатления.
Установка SpaceVM возможна в трёх вариантах:
установка контроллера;
установка сервера виртуализации;
установка контроллера + сервера виртуализации
Каждый из этих вариантов доступен в ручном или полуавтоматическом режиме.
Архитектура решения
Установка выполняется из единого ISO-образа. Используется не самое свежее ядро Linux версии 5.10.
В документации есть раздел «Совместимое оборудование», связано это с тем, что SpaceVM может управлять сервером через IPMI.
Управляющий сервер Controller может быть установлен отдельно или в режиме Controller + Node. В одной инсталляции может быть несколько контроллеров, репликация между контроллерами настраивается отдельно. То есть возможность резервирования контроллеров средствами самих контроллеров присутствует.
Установка контроллера в виртуальную машину на узел SpaceVM является экспериментальным режимом. Производитель просит все выявленные ошибки заводить в Space Bugzilla.
Что насторожило. Супервизор узла — это python-сервис в SpaceVM под именем в CLI node-engine. Супервизор контроллера — это python сервис в SpaceVM под именем в CLI controller-engine. Думаю, вы знаете, что код на python считается не самым быстрым. Соответственно, возникает логичные вопросы. Как поведет себя система при большой инсталляции и высокой нагрузке? Потребует ли это более производительного железа? К сожалению, условия моего тестирования не отвечают на эти вопросы, но, возможно, кто-то из авторов проведет отдельные нагрузочные тесты.
В этом плане производитель себя в некоторой мере обезопасил с помощью раздела «Пределы», в котором установлены безопасные лимиты. С моей точки зрения, указанных лимитов достаточно для подавляющего большинства инсталляций системы.
Простота установки
При установке в плоской сети требуется указать только IP-адрес узла. Мне пришлось немного поискать пароль пользователя root, используемый по умолчанию при полуавтоматической установке, — им оказалось слово «bazalt».
Необходимые компетенции при установке – умение читать