KeyStack 2025.2.2 and 2025.2.5 Release Notes

Platform: SberLinux

KeyStack 2025.2.5 Release Notes

Bug Fixes

  • Добавлен образ ovn-sb-db-relay с обновлённым ovn-ctl.

  • Исправлена работа Prometheus Exporters при использовании Vault.

  • Обновлено ограничение glance-store в соответствии с upstream-изменениями.

  • Обновлён тег Consul.

  • Исправлена работа TLS для elasticsearch_exporter.

  • Исправлена настройка neutron_external_interface для hostmgmt.

  • Исправлен режим сети для FRR.

  • Добавлена поддержка управления параметром adminui_fernet_key в конфигурациях и паролях.

  • Добавлена возможность задавать oom_score_adj для контейнеров.

  • Исправлен вывод stdout при выполнении ansible-задач.

  • Исправлены имена переменных и поддержка пространств имён при работе с Vault.

  • Оптимизирована установка selinux-profiles.

  • Добавлены правила SELinux для nova_scheduler.

  • Исправлена работа экспортера prometheus_openstack_exporter при работе с secman.

  • Исправлена работа экспортера prometheus_mysqld_exporter при работе с secman.

  • Скорректирован код пайплайна, отвечающий за обработку паролей gen-pwd при взаимодействии с secman.

  • Убран дубликат обработки passwords.yml при создании региона.

  • Исправлена работа пайплайна на шаге setup — убран несуществующий эндпоинт в secman.

  • Добавлена поддержка обработки переменной glance-tls-proxy для сервиса HAproxy.

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

  • Скрыты открытые пароли в конфигурациях сервисов consul, prometheus/alertmanager, grafana.

  • Скорректирована работа выключения и перезагрузки гипервизора средствами ОС.

  • Скрыты открытые пароли в конфигурации сервиса adminui_backend.

  • Скорректирован эндпоинт для выгрузки списка host при управлении Host Aggregate.

  • Исправлена работа обновления регионов. Изменена выгрузка inventory_name и os_name. Реализована функциональность маппинга inventory_name и os_name, решена проблема с невозможностью осуществления обращений по os_name.

KeyStack 2025.2.2 Release Notes

New Features

  • Добавлена поддержка SberLinux 9.6.0.

  • Добавлена поддержка selinux для ОС SberLinux 9.6.0.

  • Добавлена возможность установки на podman для ОС SberLinux 9.6.0.

  • Добавлена поддержка firewall правил для ОС SberLinux 9.6.0.

  • Добавлена ротация консольных логов ВМ.

  • По умолчанию ставится VictoriaMetrics для системы мониторинга.

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

  • Добавлена возможность автоматизированного обновления региона.

  • Добавлено описание настроек OVN на базе KeyStack.

  • Верхнее меню:

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

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

    • Добавлен индикатор обновления региона (при наличии такового статуса).

  • Фильтры: Обновлены все фильтры в ресурсах и гипервизорах на новые.

  • Виртуальные машины:

    • Добавлено действие Создать снимки всех дисков с подтверждающим диалоговым окном в котором отображается выбранная ВМ и список дисков, прикрепленных к серверу. Если снимки созданы не для всех дисков, то будет дополнительное выпадающее сообщение.

    • Добавлено действие Create all volumes backup для выбранной ВМ. с подтверждающим диалоговым окном в котором отображается выбранная ВМ и список дисков, прикрепленных к серверу.

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

    • Добавлена функциональность групповых действий, которые будут выполняться для всех выбранных в таблице ВМ.

    • Добавлены групповые действия Добавить группу безопасности и Убрать группу безопасности с полями выбора группы безопасности и сетей, для портов которых будет применено (выбор сетей необязателен, в таком случае изменение коснется всех портов ВМ).

    • Добавлено действие Сменить права доступа, открывающее диалоговое окно изменения Тег App и Тег OS с выпадающими подсказками уже имеющихся тегов на доступных ВМ.

  • Создание ВМ: Во вторую вкладку New VM params Добавлены поля Тег App и Тег OS с выпадающими подсказками уже имеющихся тегов на доступных ВМ.

  • Диски: Создана страница конкретного диска. У поля attachments — attachment_id является кликабельным и при клике перенаправляет на страницу конкретного attachment, поле server_id перенаправляет на страницу конкретной ВМ.

  • Группа безопасности: Добавлена страница конкретной группы безопасности.

  • Динамический планировщик ресурсов: Добавлена серверная пагинация на все страницы через URL-строку.

  • Гипервизоры: Добавлены действия в меню Power Management — Poweroff и Reboot с подтверждающими диалоговыми окнами, запускающие соответствующую команду Systemd.

  • Агрегаты: Добавлены действия — Создать агрегат, Изменить агрегат, Управление узлами, Изменение метадаты и Удалить агрегат.

  • Анализ логов, Мониторинг: Добавлена обработка событий внутри встроенного окна для обновления жизненного цикла сессии авторизации.

  • Службы:

    • Добавлена новая страница в разделе Настройки региона. На странице можно выбрать Hostname (узел), Систему (Docker или Podman и Systemd), Команду (список команд зависит от сервиса), Идентификатор/Наименование (если применимо, список берется в соответствии с тем, что возможно для данной команды) с поиском, группировкой по типу (images, networks, containers, services). В выпадающем списке Идентификатор/Наименование для Docker показывается ID в скобочках и поле Names для контейнеров, Name для сетей, repo для образов (все что после последнего /); для Podman показывается id в скобочках и поле name для сетей, Labels.name для контейнеров и образов; для Systemd сервисов показывается поле unit без .service в конце.

    • При выборе команды Systemd List вместо обычного вывода выводится таблица списка сервисов с сортировкой и фильтрацией по полям внутри таблицы, и с возможностью выбора нескольких сервисов в таблице и выполнения групповых действий (команд Старт, Стоп, Рестарт), с обработкой ошибок и показом всплывающего сообщения.

  • Обновление региона: Добавлена новая страница в разделе Настройка региона. На странице показаны доступная для обновления версия, кнопка запуска обновления всего региона, вкладки Контроллеры и Гипервизоры (разделенные по зонам доступности) с таблицами соответствующих узлов (по нахождению узла в группе), с возможностью проверки и запуска обновления. В диалоговых окнах обновления есть выбор количества обновляемых параллельно узлов, выбор из трех типов обновления (ОС, KeyStack, ОС+KeyStack) и информационных сообщений. В диалоговых окнах доступных обновлений показан список доступных для обновления пакетов ОС.

  • Группы: Добавлена новая страница в разделе Управление доступом. На странице отображается таблица списка групп и действие Сменить роль, работающее аналогично одноименному действию на странице пользователей, но для группы.

  • Добавлена поддержка пагинации для ответов API.

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

  • Внедрена поддержка фильтра AggreagateMultiTenancyIsolation.

  • Добавлен ретрай обращений к сервисам OpenStack.

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

  • Добавлены API эндпоинты:

    • /is_leader, возвращающая leader, если нода, с которой запрашивали, лидер, not_leader — если нет.

    • /cluster_members, возвращающая список всех нод (если нода не была лидером, то время у нее будет минимальное).

  • Для взаимодействия с DRS используется сервисный каталог. Использование параметра OS_DRS_ENDPOINT_OVERRIDE прекращено.

  • Hardreboot заменен на poweroff+evacuate+poweron.

  • Реализован учет состояния HBA.

  • Прекращена поддержка отправки алертов о событиях в Zabbix.

Bug Fixes

AdminUI

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

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

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

  • Левое Меню: Исправлена падение приложения в ошибку, если запрос данных Мониторинга или Логирования вернул ошибку сервера.

  • Фильтры: При изменении размера страницы, блок с фильтрами адаптивно изменяет свой размер и не съедает элементы фильтров.

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

  • Виртуальные машины:

    • Исправлена некорректное появление плашки 'no HA' для ВМ с любой метадатой со значением 'true'.

    • Исправлена попытка запроса данных о ВМ, помеченной на удаление (из-за которого всплывало сообщение об ошибке).

  • Создание ВМ. Если проект не выбран, кнопка Save as new template больше не доступна.

  • Диски. Исправлена ошибка, при которой не отображались всплывающие окна об ошибке, возникшей при запросе списка дисков.

  • Тип ВМ (флейвор). Значения в полях extra_specs, перечисляемые через запятую, теперь отображаются корректно. Раньше, например, значение hw:numa_cpus:1, 2, 3, 4 преобразовывались в hw:numa_cpus:1 2 3 4 с потерей запятых.

  • Образы. В диалоговом окне создания образа исправлены ошибки валидации.

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

  • Гипервизоры. В фильтрах исправлена возможность поиска.

  • Пользователи:

    • При отсутствии доступа к списку ролей и проектов больше не будет совершаться их вызов с показом всплывающей ошибки (актуально для роли member).

    • Пользователи. В диалоговом окне действия Изменить пароль исправлена ошибка, не позволяющая выполнить данное действие.

DRS

  • DRS CLI: Оптимизирован запрос для выдачи списка оптимизаций.

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

  • Исправлена логика «мягкого» удаления задания.

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

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

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

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

  • Исправлен запрос в Prometheus из-за которого алгоритм Equal_hypervisor_load по RAM создавал некорректные рекомендации.

  • Исправлено поведение DRS при получении 'NaN' метрики из Prometheus, при котором происходила генерация ошибок в БД и спам в логах. Теперь в при получении подобной метрики в логах выводится ошибка и формируется алерт, информирующий о некорректной работе Prometheus.

  • Исправлена ошибка вызывающая появление некорректной записи в базу данных после «мягкого» удаления сущности Job. Добавлена поддержка «мягкого» удаления для сущности Config.

  • Исправлена ошибка из-за которой DRS не генерировал рекомендации для пустых гипервизоров при network_weight: 1.

  • Исправлена ошибка из-за которой генерировал огромный объем логов по ранее удалённым сущностям Job.

  • Исправлен учёт «мягкого» удаления сущности Job из шедуллера.

  • Изменена логика учета фильтра AggregateMultiTenancyIsolation, ранее миграции на гипервизоры без применённых аггрегаций не осуществлялись, хотя логика компонента Nova предусматривает обратное.

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

  • Исправлена работа фильтра AggregateMultiTenancyIsolation из-за которой сервис игнорировал изоляцию tenant при генерации рекомендаций миграции.

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

  • Добавлена обработка и логирование события установленной несуществующей azone у задания.

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

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

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

  • Исправлена ошибка из-за которой система игнорировала проверку AZ при выполнении миграции.

DRS-cli

  • Исправлен конфликт зависимостей DRS-cli, python-cinderclient, python-novaclient, python-openstackclient, который приводил к ошибкам при сборке KeyStack.

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

  • Исправлена ошибка, из-за которой команды show в DRS-cli при условии наличия только одной сущности показывали пустой вывод.

HA

  • В логи добавлена информация о состоянии гипервизора.

  • Исправлено неочевидное поведение consul при обработке метадаты no_evacuate.

  • Исправлена отправка команды на эвакуацию до отключения nova-compute.

  • Исправлена проблема из-за которой состояние счётчиков ВМ не сохранялось и не являлось консистентным.

  • Исправлена ошибка из-за которой сервис генерировал бесконечные попытки эвакуации в случае отказа целевого гипервизора.

  • Исправлена ошибка из-за которой ВМ с несколькими дисками застревали в вечной эвакуации, а после пересборки имели статус error.

  • Исправлена ошибка из-за которой сервис не мог определить инстанс-лидер при сборке в конфигурации network bridge.

OpenStack

  • Nova:

    • Исправлена ошибка, возникающая при дублировании прикреплённых томов диска из-за кратковременных сетевых неполадок в конечной стадии «живой» миграции.

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

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

  • Cinder:

    • Исправлена ошибка, возникающая в случае отсутствия файла volume при удалении снапшота.

  • Os-Brick:

    • Исправлена ошибка из-за которой первая попытка миграции блокировалась с ошибкой path not found.

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

Upgrade notes

AdminUI

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

    • На всех страницах с действиями, если нет доступа ни к одному действию, то будет скрыт весь столбец действий.

    • Выполнена частичная русификация приложения.

    • В некоторые таблицы ресурсов добавлена возможность сортировки по полям.

  • Верхнее меню: Доработана ссылка при нажатии на логотип — если нет доступа к Состоянию системы, то ссылка будет на страницу Виртуальных машин а ссылка Мониторинг будет скрыта.

  • Левое Меню:

    • Если у раздела меню (например, Ресурсы) каждый пункт подменю скрыт (т.к. у пользователя нет доступа ко всем этим страницам), то и само раскрывающееся меню будет скрыто.

    • Левое меню полностью русифицировано.

  • Фильтры: Доработан поиск по фильтрам. Теперь поиск в выпадающем списке всех фильтров осуществляется по названию фильтра и его кодовому значению.

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

    • Добавлена кнопка Очистить фильтры.

    • Отображение фильтров сделано всегда справа.

    • Пустые значения у фильтров больше не отправляются в запросе на сервер.

  • Состояние системы: Добавлена обработка статуса сервиса error, будет показываться красным, также как и down.

  • Виртуальные машины:

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

    • Данные по папкам ВМ переехали из server.tags в server.metadata.folders. Старые данные по папкам в тегах перестанут работать как папки и убрать их можно только вручную.

    • В форму изменения папки ВМ добавлено ограничение в 5 уровней вложенности.

    • Добавлена вкладка Группы безопасности со списком групп и раскрывающимся списком портов ВМ, находящихся в данной группе.

  • Виртуальные машины, Создание ВМ: При создании ВМ и в диалоговом окне действия Live migrate в поле выбора гипервизора доработана фильтрация гипервизоров по доступности (новое условие "state не равен 'down' и status не равен 'disabled'", гипервизор будет считаться недоступным если хотя бы одно условие не выполнено, раньше только если оба).

  • Диски:

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

    • Колонка Attachments убрана, добавлена колонка Bootable.

    • Удалена колонка id, а внутри колонки name значение является ссылкой на конкретный диск. При этом, если есть name — отображается name, иначе — id.

  • Типы дисков, QoS:

    • Все specs-поля для добавления QoS, редактирования QoS и добавления QoS-specs к существующему QoS ограничены на принятие только целых чисел не меньше 1.

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

    • Теперь при редактировании QoS specs все параметры обязательны.

  • Создание Порта: При создании порта в выпадающем списке subnets теперь отображаются имена подсетей. Если поле name пустое — отображается id.

  • Типы ВМ (флейвор): Для диалоговых окон создания и редактирования типа ВМ (флейвор), в Extra specs упрощены поля типа quota, теперь это три отдельных, необязательных и независимых друг от друга поля.

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

  • Оптимизации: В таблице добавлено отображение общего количества оптимизаций (0-50 из [total]).

  • Гипервизор:

    • На вкладке Stats удален график с температурой, у графика power_supply_state изменены метрики с Off/On на Ok/Warning/Critical.

    • На вкладке Processes добавлена пагинация в таблице, а также сортировка к колонкам PID, %cpu, %mem.

    • На вкладках Containers, Packages, Processes, System добавлено автоматическое обновление данных.

  • Агрегаты: В диалоговом окне действия Изменение метадаты добавлен сценарий блокировки поля метадаты availability_zone в диалоге. Поле блокируется только если оно уже изначально было в метадате агрегата.

  • Узлы и роли: Поле Address заменено на поле Host options в таблице и в диалоговых окнах создания и редактирования. В диалоговых окнах также изменено поле ввода с текстовой строки на заполнение аналогично метаданным (пары ключ-значение), которые преобразовываются в строку вида ключ1=значение1 ключ2=значение2.

  • Пользователи:

    • При создании или редактировании пользователя убраны поля Домен и Описание, все поля сделаны обязательными, поле Проект переименовано в Проект по умолчанию.

    • В диалоговом окне действия Сменить роль добавлено поле Проекты, отображающееся, если выбраны роли, имеющие доступы по проектам (member или operator_vm).

  • Роли: Убрана возможность управления ролями (создание, редактирование, удаление), теперь они доступны только для чтения.

HA

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

    [firewall:children]
    baremetal
    

Security Fixes

  • Образа пересобран с IPA на SberLinux 9.6, вместо Ubuntu.

  • Всеобщий переход со SberLinux 9.4 на SberLinux 9.6.

  • Были устранены уязвимости:

  • GitLab: (CVE-2025-5996, CVE-2025-4225, CVE-2025-3601, CVE-2025-3279, CVE-2025-3111, CVE-2025-2937, CVE-2025-2853, CVE-2025-2614, CVE-2025-1677, CVE-2025-1516, CVE-2025-1478, CVE-2025-1477, CVE-2025-0993, CVE-2025-0673, CVE-2024-8973, CVE-2024-7803, CVE-2025-4700, CVE-2025-4439, CVE-2025-1763)

  • NetBox: (CVE-2024-56918, CVE-2024-56917, CVE-2024-56916, CVE-2024-56915)

  • Vault: (CVE-2025-6037, CVE-2025-6015, CVE-2025-6014, CVE-2025-6011, CVE-2025-6004, CVE-2025-6000, CVE-2025-5999, CVE-2025-4166, CVE-2025-3879)

HA

  • Выполнен рефакторинг модуля compute.

  • Выполнен рефакторинг модуля alert.

  • Выполнен рефакторинг модуля fence.

Known Limitations

Данный релиз продукта на sberlinux поддерживается только на SberLinux 9.6.0

  • Дистрибутив для установки: SLO-9.6.0-x86_64-distrib.iso.

  • Хеш-сумма: 9bbdc9279500b0757cb7324068e7cf3b82556cf6d8bd63c375858eaf3de97553.

  • Причина ограничения: имеются жесткие зависимости от пакетов, доступных только в стандартных репозиториях SberLinux 9.6.0.