В релизе Basis Dynamix Enterprise 4.5, новой версии нашей флагманской платформы серверной виртуализации, мы сосредоточились на расширении совместимости платформы с отечественными системами хранения данных, развитии интеграции с Basis SDN и инструментах автоматизации, которые упрощают повседневную работу с инфраструктурой. Всего релиз 4.5 включает более 90 улучшений и дополнений.

Расширение поддержки отечественных СХД

В версии 4.5 мы добавили поддержку двух отечественных систем хранения данных — uStor и YADRO TATLIN.UNIFIED с версией ПО 3.2.

С хранилищем uStor платформа взаимодействует через SEP типа Driver. Реализован полный набор операций: подключение, отключение и удаление SEP, управление пулами и узлами потребления, создание и удаление дисков с возможностью подключения к виртуальным машинам, изменение размера дисков, работа с образами (включая CD-ROM) и снапшотами. Создание дисков из образов средствами СХД выполняется через механизм снапшотов — при этом создаются зависимые клоны, а диск и образ должны находиться в пределах одной СХД (допускаются разные пулы). Для работы в таком режиме в конфигурации SEP необходимо указать для параметра clone_technology значение snapshot. В портале добавлен интерфейс для создания SEP uStor с указанием всех параметров.

С хранилищем Tatlin (YADRO TATLIN.UNIFIED 3.2.) платформа взаимодействует через API системы хранения — ранее для этого использовались CLI-утилиты. При создании SEP Tatlin появилась возможность указать версию Tatlin, что обеспечивает обратную совместимость с предыдущими версиями прошивки. Помимо этого, переработан механизм управления нагрузкой на СХД — вместо сервиса очередей теперь используется настраиваемый лимит одновременно выполняемых задач.

Для обеих СХД улучшена работа с дисками: перед удалением диска, презентованного на вычислительных узлах, платформа автоматически выполняет его депрезентацию.

Развитие интеграции с Basis SDN

Версия 4.5 развивает нативную интеграцию Basis Dynamix Enterprise с нашим решением для управления программно-определяемыми сетями Basis SDN. В новом релизе обновлен API SDN и переработаны диалоговые окна на странице «SDN» в портале.

Главное прикладное улучшение — при создании, массовом создании и настройке виртуальных машин теперь можно автоматически подключать сетевой интерфейс SDN с созданием логического порта. Для этого достаточно указать идентификатор сегмента, в котором будет создан порт; дополнительно можно задать привязку к сетевому объекту, отображаемое имя и описание. Это избавляет администратора от необходимости вручную создавать логический порт в Basis SDN перед подключением ВМ к программно-определяемой сети.

В диалоговое окно создания логического порта SDN также добавлена возможность выбрать гипервизор.

Поддержка unmap для дисков виртуальных машин

В релизе 4.5 мы реализовали поддержку режима unmap (blkdiscard) для дисков виртуальных машин, созданных в любом SEP. Это особенно актуально при работе с тонкими (thin-provisioned) дисками и позволяет более рационально использовать емкость СХД. Параметр автоматически добавлен в модели всех имеющихся дисков и может наследовать значение из конфигурации SEP.

Автоматический перевод узлов в статус "Работает"

Платформа получила механизм автоматической смены статуса физического узла с «На обслуживании» на «Работает». В модель узла добавлено поле autostart — узлы с этой настройкой, находящиеся в режиме техобслуживания, автоматически возвращаются в строй, а вместе с хостом запускаются размещенные на нем виртуальные машины.

Настройка доступна через API как для отдельного узла, так и для всех узлов зоны. Параметр autostart также учитывается при создании и обновлении зон, а в портале появились соответствующие столбцы и действия на страницах «Зоны» и «Физические узлы».

Watchdog для виртуальных машин

В Basis Dynamix Enterprise был добавлен механизм автовосстановления зависших виртуальных машин — Watchdog. Виртуальная машина с включенным Watchdog автоматически перезагружается при зависании, что повышает доступность сервисов без участия администратора.

Поддержка режима Cache Write Through

Для дисков виртуальных машин реализована поддержка режима Cache Write Through, который повышает надежность записи данных на дисковую подсистему. Режим можно задать как при создании диска или ВМ, так и для уже существующих дисков через API. Для применения изменений рекомендуется перезагрузить ВМ.

Упрощенная установка через минимальный system-config

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

Обновление спецификации API до OpenAPI 3.1.0

Спецификация API платформы обновлена с версии 2.0 до 3.1.0. Swagger UI переведен на новую версию, спецификация доступна по эндпоинту /openapi.json. Формат описания API переработан — теперь используется единое многострочное поле для параметров и значений в JSON-формате.

Прочие улучшения

Среди других изменений в релизе 4.5:

  • Усовершенствована модель физического узла — понятие «вычислительный узел» (stack) упразднено, его функционал перенесен в сущность «физический узел» (node), что упрощает модель данных и API платформы.

  • Добавлена возможность при создании ВМ не из образа активировать возможности гипервизора: NUMA, CPU pinning и Huge Pages.

  • Реализована возможность сделать ВМ доступной только для чтения для всех пользователей.

  • Добавлена возможность указывать маску сети для сетевых интерфейсов DPDK и VFNIC при создании ВМ.

  • Реализована настройка MTU для транковых сетей (1500–9216).

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

  • Реализовано автоматическое обновление API-ключа для служебного пользователя после первичной установки.