KeyStack 2026.1 Release Notes

Platform: Ubuntu

KeyStack 2026.1

New Features

  • Обновили платформенный стек — переход на OpenStack Epoxy.

  • Добавлена опция enable_config_vault для скрытия паролей в конфигах сервисов. Она включена по умолчанию.

  • По умолчанию в продукте включены сервисы KeyStack: DRS, AdminUI, Consul, Hostmgmt.

  • По умолчанию в продукте включены сервисы мониторинга: VictoriaMetrics, Grafana, OpenSearch.

  • По умолчанию в продукте выключены сервисы: Octavia, Heat, Barbican и Designate.

  • По умолчанию в продукте включён TLS для опций: kolla_enable_tls_backend, nova_qemu_vnc_tls, libvirt_tls, rabbitmq_enable_tls.

  • Для SberLinux по умолчанию в продукте включены: сеть для контейнеров в bridge mode, firewall и SELinux.

  • Очереди типа fanout по умолчанию создаются с типом Stream. Теперь все очереди создаются в HA-режиме. Параметры stream-настроек: rabbitmq_stream_max_segment_size_bytes (RabbitMQ Streams) и rabbitmq_stream_segment_max_age / x-max-age (Data retention, oslo.messaging opts).

AdminUI

  • Приложение: изменена тема всего UI на новую. Основной цвет сменился с синего на зелёный. Основной размер шрифта изменился с 16 пикселей на 14 пикселей. Уменьшились отступы и размеры всех элементов. Добавлен серый задний фон на всех страницах, добавлены белые блоки для всех элементов на страницах.

  • Реализовано отслеживание межрегиональной миграции ВМ.

  • История операций: в разделе Журналы событий создана страница История операций с таблицей списка операций и фильтрацией. На текущий момент на странице поддержана только одна операция — межрегиональная миграция ВМ.

  • Детали операции: создана страница конкретной операции с информацией об операции и её шагах с нумерацией.

  • Реализован перевод ВМ в maintenance mode (режим обслуживания) с отслеживанием состояния перевода через TaskFlow.

  • Добавлено отслеживание сущностей при использовании декораторов отслеживания операций в методах проекта. Исправлена фильтрация по ID сущности в списке истории операций.

  • Расширен функционал проверки пререквизитов межрегиональной серверной миграции: теперь выполняется проверка квот для необходимых ресурсов в регионе-передатчике и регионе-приемнике.

  • Добавлены раздельные настройки для mTLS для каждого сервиса OS — по секции на сервис.

  • Доработан модуль ini-парсинга для исключения из результатов пустых строк и строк, содержащих любое количество пробелов и непечатных символов.

  • Механизм миграции между регионами переведён на TaskFlow.

  • Реализован GET-метод /api/v1/operations с фильтрами для истории операций.

  • Добавлен CI-job для проверки наличия docstrings.

  • Обновлён middleware для работы с новой версией API.

  • Кодовая база переведена на k/epoxy.

  • Добавлены Unit и функциональные тесты для обновления региона.

  • Выполнен переход на транзакции в Redis.

  • Добавлена обработка заголовка X_CLIENT_IP для сквозного аудита.

Monitoring

  • Добавлен экспортёр для сбора метрик S.M.A.R.T. с NVMe-накопителей. Добавлены дашборды для отображения состояния NVMe-накопителей. Добавлены правила алертов для NVMe-накопителей.

Cinder

  • Добавлена возможность установления префикса для именования LUN.

  • Добавлена возможность включения cluster mode.

Bug Fixes

AdminUI

  • Приложение:

    • В некоторых диалогах исправлена невозможность сфокусироваться на поле при клике на заголовок этого поля.

    • Убрана автоподстановка минимальных и максимальных значений в числовых полях, которая могла привести к невозможности введения некоторых значений (например, невозможность ввести числа с 10 по 19, если минимально допустимое значение в поле — 2).

  • Фильтры: исправлена ошибка, когда при удалении одного фильтра или при применении фильтров удалялись все пустые фильтры.

  • Виртуальные машины: исправлена ошибка, когда после прикрепления и открепления групп безопасности для виртуальной машины при переходе в свойства виртуальной машины на вкладку групп безопасности не обновлялись данные.

  • Создание ВМ, Создание порта: исправлены ошибки, связанные с полем Группы безопасности при сбросе значения во внутреннем фильтре.

  • Типы ВМ: исправлено отсутствие всплывающего уведомления при ошибке получения списка.

  • Сети: для списка подсетей переработано поведение выбранной подсети. При переключении вкладок Подсети и Сети и после обновления списка подсетей выбранная подсеть остаётся выбранной, если она ещё существует в списке. Если выбранной подсети больше нет в списке (например, после удаления), выбранной становится первая подсеть в списке.

  • Группы безопасности:

    • В диалоге редактирования, в столбце Security group / IP prefix, исправлена ситуация, при которой Security group не отображалась, даже если для правила была задана Remote security group.

    • В таблице, в столбце Rules, исправлена визуальная ошибка — между Remote IP prefix и Remote security group появился пробел, значения больше не сливаются.

  • Динамический планировщик ресурсов / Обзорная панель: в таблице рекомендаций исправлена возможность повторно запустить ранее запущенную или уже выполненную миграцию. Добавлена визуальная индикация прогресса миграции и подсказки о причинах невозможности её запуска.

  • Динамический планировщик ресурсов / Рекомендации: в таблице исправлена возможность повторно запустить ранее выполненные миграции.

  • Динамический планировщик ресурсов / Конфигурации: для поля threshold в колонке base_config таблицы конфигураций возвращено поясняющее сообщение.

  • Службы:

    • В выпадающем списке Идентификатор/Наименование исправлен поиск сетей.

    • В выпадающем списке Идентификатор/Наименование исправлен показ id для контейнеров и образов.

    • Добавлено отображение ошибки в результате выполнения команды вместо показа результата предыдущего запроса.

    • Добавлено отображение ошибки в выпадающем списке Идентификатор/Наименование и убраны опции, которые не удалось получить в последнем запросе.

  • Пользователи: в диалоговом окне действия Изменить пароль добавлена обязательность поля Пароль.

  • Добавлена проверка при входе для избежания возникновения ошибок ролей member и reader при выключенном RBAC.

  • Исправлен некорректный перевод гипервизора в нестабильное состояние при ошибках во время перевода узла с отключённым libvirt в режим обслуживания.

  • Исправлена ошибка с некорректным доменом пользователя при его создании в пользовательском домене с выключенным RBAC.

  • Исправлена передача идентификатора проекта при создании виртуальной машины в проекте, отличном от проекта авторизации.

  • Исправлена ошибка аутентификации, при которой пользователь не мог войти в систему, если в Keystone существовали отключённые (disabled) проекты, на которые у него были назначены роли. Теперь при определении рабочего проекта для сессии отключённые проекты пропускаются, и выбирается первый доступный активный проект.

  • Исправлена некорректная обработка ошибки при недоступности Alertmanager.

  • Исправлена ошибка валидации путём исправления типа атрибута dns_assignment в базовой response-схеме порта.

  • Исправлена ошибка недостатка ресурсов при создании нескольких ВМ одним запросом.

  • Исправлено имя домена для домена default.

  • Исправлено отображение имени домена для пользовательских проектов.

  • Исправлено неинформативное отображение ошибок о превышении квот при создании ВМ.

  • Исправлена недоступность загруженного образа для пользователей других проектов.

  • Исправлено возникновение исключения по таймауту при изменении размера флейвора.

  • Исправлен некорректный переход гипервизора из состояния EnteringMaintenanceMode после эвакуации виртуальных машин при переводе в режим обслуживания.

  • Исправлен парсинг параметра ansible_host.

  • Исправлена ошибка novaclient.exceptions.BadRequest Invalid key_name provided, возникавшая при копировании ВМ.

  • Исправлена проблема переключения oslo.messaging на активные узлы.

DRS

  • Исправлена ошибка, из-за которой запуск миграции по ID рекомендации было невозможно осуществить.

  • Исправлена ошибка, из-за которой эндпоинты /cluster_members, /is_leader возвращали HTTP_STATUS_CODE_500.

  • Исправлено отсутствие информативного вывода при успешном запуске миграции через CLI.

  • Исправлена ошибка автоматического завершения миграций ВМ сразу после запуска.

  • Исправлена фильтрация списка задач по статусу.

  • Исправлена ошибка, из-за которой параметры limit и offset с отрицательным значением вызывали Internal Server Error.

  • Исправлена проблема ручного запуска миграции по идентификаторам оптимизации и рекомендации.

  • Исправлен функционал запуска миграций вручную.

  • Исправлена валидация параметра status в эндпоинте get_migrations.

  • Исправлена возникающая после обновления ошибка AttributeError при попытке фильтрации списка гипервизоров.

  • Исправлено поведение алгоритма балансировки по сетевой нагрузке в случае наличия гипервизора без виртуальных машин.

Hostmgmt-agent

  • Исправлена обработка ответа команды docker top для ранее остановленного контейнера.

Monitoring

  • Исправлен парсинг лог-файлов во FluentD, в результате чего в поле Payload иногда попадал ведущий пробел, из-за чего не формировались метрики и алерты по нештатному выключению ВМ.

  • Исправлена конфигурация datasource для подключения к Alertmanager в Grafana.

Upgrade notes

  • При обновлении необходимо выключить все опции для скрытия паролей и удалить их из настроек региона. Для их замены добавлена опция enable_config_vault. Она включена по умолчанию. Для её выключения добавить в конфиг региона enable_config_vault: "no".

  • RabbitMQ при обновлении переходит на новый тип очередей. Для обновления с KeyStack 2025.1.x необходимо выполнить миграцию со старого типа на новый.

  • В inventory региона необходимо добавить новые группы:

    [nova-metadata:children]
    nova
    
    [prometheus-redfish-exporter:children]
    monitoring
    
    [prometheus-smartctl-exporter:children]
    monitoring
    control
    compute
    network
    storage
    
    [prometheus-pushgateway:children]
    monitoring
    
    [ovn-sb-db-relay:children]
    ovn-database
    
    [hostmgmt:children]
    control
    compute
    
    [vector:children]
    monitoring
    
    [adminui-hypervisor-exporter:children]
    compute
    
    [firewall:children]
    control
    network
    compute
    storage
    monitoring
    
  • В inventory региона в группу [tls-backend:children] необходимо добавить: network, compute, storage, monitoring.

  • В inventory региона в группе [octavia:children] необходимо заменить network на control.

  • В inventory региона в группе [octavia-health-manager:children] необходимо заменить octavia на network.

  • В inventory региона в группе [octavia-worker:children] необходимо заменить octavia на network.

  • В inventory региона в группе [designate-mdns:children] необходимо заменить network на designate.

  • В inventory региона в группе [adminui-backend:children] необходимо заменить adminui на control.

  • В inventory региона в группе [adminui-frontend:children] необходимо заменить adminui на control.

  • Из inventory региона необходимо убрать следующие группы: [adminui:children], swift*, prometheus-hypervisor-exporter.

AdminUI

  • Приложение:

    • Всплывающие уведомления смещены вниз под верхнюю панель. При закрытии уведомлений невозможно нажать на кнопку выхода из приложения.

    • Для форм, состоящих из нескольких вкладок, добавлена индикация тех вкладок, на которых у полей есть ошибки валидации.

  • Авторизация: убрана галочка Включить режим ReadOnly.

  • Левое меню, Верхняя панель: заменён логотип приложения на новый. Ссылка Документация/FAQ перенесена из верхней панели в нижнюю часть левого меню.

  • Сети: имя проекта обёрнуто в ссылку на конкретный проект в панели детальной информации о сети.

  • Системные параметры:

    • В конфигурации NTP добавлена обязательность полей NTP servers.

    • В конфигурации DNS добавлена обязательность полей DNS.

    • Незначительно изменён вид блоков конфигураций для единообразия; добавлен перенос блоков конфигурации при отсутствии места.

DRS

  • Изменён алгоритм balance_network.

Component Version Changes

  • cinder: 24.3.1.dev6126.2.1.dev55

  • docker-ce: 3:29.1.3-1.el93:29.3.1-1.el9

  • glance: 28.1.1.dev2530.1.1.dev10

  • keystack_admin_ui: ks2025.3.1ks2026.1

  • keystone: 25.0.1.dev1527.0.1.dev26

  • mariadb-server: 10.11.13-1.el910.11.16-1.el9

  • mariadb-server: 3:10.5.27-1.sl9_5^13:10.5.29-2.sl9_6^1

  • neutron: 24.1.1.dev6026.0.3.dev46

  • nginx: 2:1.20.1-22.sl9_6.3^12:1.26.3-1.module+sl9.6+1313+8c23abef

  • nova: 29.2.2.dev5731.2.1.dev51

  • opensearch: 3.4.0-13.5.0-1

  • prometheus: 3.6.03.2.1

  • rabbitmq-server: 3.13.7-1.el84.0.9-1.el8

  • vault: v1.21.0v1.21.2

  • VictoriaMetrics (vmagent-prod, vmalert-prod, vmalert-tool-prod, vmauth-prod, vmbackup-prod, vmctl-prod, vmrestore-prod): *-20250912-132133-tags-v1.126.0-0-gaa429631a6*-20251117-142741-tags-v1.130.0-0-g04c24fc831

  • VictoriaMetrics cluster (vminsert-prod, vmselect-prod, vmstorage-prod): *-20250912-133348-tags-v1.126.0-cluster-0-g785086e5d6*-20251117-143349-tags-v1.130.0-cluster-0-ge7d9e1dbc3

Known Issues

  • При обновлении OpenSearch необходимо выключить у него backend TLS: opensearch_enable_tls_backend: "no". После обновления можно включить его обратно.

  • AdminUI не поддерживает работу с OVN.

  • При обновлении с эвакуацией ВМ с гипервизоров на Compute-узлах необходимо выключить TLS для опций:

    libvirt_tls: "no"
    rabbitmq_enable_tls: "no"
    kolla_enable_tls_backend: "no"
    

    Если они были включены ранее, то их можно не отключать.