KeyStack 2025.1 Release Notes

New Features

AdminUI

  • Переработана страница ВМ: добавлены вкладки, добавлены новые данные, связанные с ВМ (логи ВМ, таблица Volumes по ВМ, таблица Ports по ВМ).

  • В списке ВМ действие Revert boot volume to latest snapshot теперь не доступно, если оно невозможно.

  • Переработано удаление серверов. Добавлен параметр cascade для удаления сервера вместе с дисками и снапшотами.

  • Диски: в диалоговом окне создания диска поле Project сделано обязательным для выбора.

  • Диски: добавлена возможность создать снапшот диска если его статус “in-use”, в этом случае выдаётся предупреждение, что снапшот диска будет создан принудительно и потенциально может привести к испорченному снапшоту.

  • Security groups. В действии Редактировать при создании правила группы безопасности теперь доступны вкладки Security group / IP prefix. Это позволяет создавать версию правила, которая будет проверять что пакет идет от порта, включенного в данную SG.

  • Security groups. В действии Редактировать в таблице правил групп безопасности изменен заголовок колонки с Remote ip prefix на Security group / IP prefix. Значение в данной колонке стало динамическим и зависит присутствия значений в полях remote_group_id / remote_ip_prefix.

  • Key pairs. Добавлена новая страница. На ней можно создать пару ключей аналогично диалогу при создании ВМ. В таблице показан список пар ключей и их параметры: name, type, fingerprint, а также кнопка для копирования public key в буфер обмена.

  • Гипервизор. Переработана страница: добавлены вкладки, добавлены новые данные, связанные с гипервизором (Containers, Packages, Processes, System, Logs, VMs).

  • Папки ВМ. Страница убрана из левого меню, функционал перенесен на страницу Список ВМ.

  • Глобальный проект, Ресурсы, Квоты. В выпадающих списках выбора проекта заменено использование списка всех проектов на список доступных пользователю проектов.

  • Config NTP. Добавлено меню для управления запуском и остановкой пайплайна, аналогичное странице Inventory, но с запуском пайплайна для NTP.

  • Добавлены единицы измерения на графиках (Гипервизоры, ВМ)

  • Добавлен ретрай миграции в случае ошибки при переходе в Maintenance Мode.

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

  • Реализован переход с Apache mod_wsgi (WSGI) на gunicorn + uvicorn (ASGI).

  • Оптимизированы async запросы.

  • Реализован переход с Memcache на Redis.

  • Добавлены unit-тесты.

  • Добавлен log rotation.

HA

  • Теперь логика работы ограничителя dead_compute_threshold считает такими как dead узлы, так и узлы в Maintenance Mode.

  • Зависимости подсистемы обновлены до актуальных версий релиза OpenStack Caracal.

  • Ввод узла в Maintenance Mode после успешной эвакуации всех ВМ теперь выполняется тем же способом, что и из AdminUI: через выставление значения в поле admin_state гипервизора.

  • Добавлена поддержка подстановки клиентских TLS сертификатов для запросов в смежные системы: OpenStack API, IPMI, Redfish, Prometheus, Alertmanager, Consul.

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

  • Формат конфигурации необратимо изменён с JSON на oslo.config, добавлена поддержка Castellan.

  • Для опции конфигурации power_fence_mode добавлено третье допустимое значение shutdown. Логически это режим soft-poweroff. Добавлена опция power_check_timeout (в секундах), по истечению которой в догонку shutdown будет отправлена команда poweroff, если узел не успел выключиться.

  • Поле admin_state гипервизора добавлено в информационные логи сервиса HA.

DRS

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

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

  • Добавлена поддержка подстановки клиентских TLS сертификатов для запросов в смежные системы: OpenStack API, Prometheus, Alertmanager, MariaDB.

  • В API-endpoint текущего статуса планировщика добавлено поле scheduler_status в тело сущности job, информирующее о ситуациях блокировки задач друг другом.

  • Зависимости и код подсистемы обновлены до актуальных версий релиза OpenStack Caracal.

  • Добавлен log rotation.

OpenStack

  • Все компоненты обновлены до версий релиза Caracal.

  • Nova: теперь API обновления admin_state можно вызвать атомарно вместе с изменением disabled/disabled_reason.

  • Nova и Cinder: добавлена поддержка SDS 1.3.

  • Nova: для команды эвакуации реализована обработка флага preserve_ephemeral, позволяющая отменять эвакуацию ВМ, загрузочный диск которых эфемерен и не расположен на распределённом хранилище.

  • Nova: реализован Prometheus Weigher для планирования старта ВМ с учётом реальной (а не ёмкостной) нагрузки на гипервизоры.

Monitoring

  • Добавлена возможность включения авторизации при подключении к компонентам VictoriaMetrics.

  • Добавлена переменная enable_central_monitoring, отвечающая за включение/выключение репликации метрик в систему централизованного мониторинга.

  • Добавлены правила алертов для мониторинга ошибок на OVS-интерфейсах.

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

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

  • Добавлен экспортёр для сбора метрик состояния сервиса Bird.

  • Добавлены правила алертов для мониторинга состояния сервиса Bird.

  • Добавлена поддержка нового libvirt exporter.

  • Добавлена поддержка нового haproxy exporter.

Upgrade Notes

  • При обновлении ks2024.4ks2025.1 необходимо запустить пайплайн с аргументом: KOLLA_ANSIBLE_DEPLOY_ACTION: rabbitmq-upgrade 3.12. ВАЖНО! действие необходимо выполнить на версии ks2024.4.x ДО обновления версий релиза в конфигурационных файлах.

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

    [prometheus-hypervisor-exporter:children]
    compute
    [victoriametrics:children]
    monitoring
    [systemd-dependencies:children]
    control
    compute
    network
    
  • Из inventory региона убрать следующие группы:

    chrony*
    rally*
    prometheus-rally-exporter
    sahara*
    vitrage*
    solum*
    murano*
    freezer*
    senlin*
    monasca*
    prometheus-haproxy-exporter
    informer*
    limiter*
    
  • Если в регионе активен сервис Octavia, то нужно из папки config/octavia репозитория региона в GitLab перенести содержимое следующих двух файлов в директорию deployments / <ks-lcm> / <REGION> / ssl_certificates в Vault:

    • содержимое server_ca.cert.pem перенести в octavia_cert_server;

    • содержимое client_ca.cert.pem перенести в octavia_cert_client.

  • Обновление с версии ks2024.4.x на ks2025.1 необходимо производить действием upgrade:

    KOLLA_ANSIBLE_DEPLOY_ACTION: upgrade

Monitoring

  • Переменная prometheus_central_url заменена на central_monitoring_url.

  • Переменная enable_prometheus_backend_victoriametrics заменена на prometheus_use_victoriametrics_as_backend.

Bug Fixes

AdminUI

  • Гипервизоры: исправлена работа Disable Fence Mode.

  • Исправлена работа API-эндпоинта загрузки образов.

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

  • DRS-рекомендации теперь возвращаются отсортированными согласно запросам от frontend.

  • Ограничена возможность указывать неподдерживаемые политики при создании групп серверов.

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

  • Status page: таблице Nodes Statuses исправлено отображение статуса is_fenced.

  • Квоты: исправлен показ других квот; если выбранные не удалось получить, то отображается пустая таблица.

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

  • Снапшоты: исправлен редирект URL при отсутствии id с несуществующего /admin/snapshots на правильный /admin/volume-snapshots.

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

  • Flavors: исправлено отображение поля extra_specs в таблице.

  • Server groups: при создании у поля policy из выпадающего списка убраны неподдерживаемые типы soft-affinity, soft-anti-affinity.

  • Исправлены недочёты в UI.

HA

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

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

  • Теперь обрабатываются и эвакуируются ВМ, принадлежащие удалённым из Keystone проектам.

  • Исправлена работа oslo-config-generator для модуля HA.

  • В рамках изменений в Nova добавлена на данный момент пустая обработка ВМ, размещённых на эфемерных нераспределённых дисках. Такие ВМ не будут эвакуироваться и потребуют вмешательства администратора.

DRS

  • Корректно обработан случай неверно указанного имени зоны доступности в объекте job.

  • Теперь вручную применённые рекомендации меняют статус оптимизации.

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

  • Узлы в Maintenance Mode теперь игнорируются в вычислениях.

  • Теперь drs-cli корректно сообщает об ошибке при попытке создания объекта job из несуществующей конфигурации.

  • Добавлена поддержка длинных (до 128 символов) user_id в одноимённом поле большинства сущностей.

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

OpenStack

  • Nova: исправлены гонки при попытке эвакуировать группу ВМ, состоящую в affinity сервер-группе.

  • Neutron: исправлена обработка отрицательной “безлимитной” квоты на ресурсы.

  • Neutron: исправлена поддержка Castellan.

  • Cinder: исправлены обязательные требования роли admin в большинстве служебных эндпоинтов, реализована корректная логика роли reader.

  • SDS: реализована возможность подключить более 1 кластера SDS.

  • Исправлен PDNS Healthcheck.

  • Добавлен механизм systemd-зависимостей между сервисами ovs, ovs-db, neutron-ovs-agent, nova-compute.

Monitoring

  • Исправлено описание алерта RabbitMQUnroutableDroppedMessagesIncrease.

Security

  • Из поставки был исключён образ гостевой системы: jammy-server-cloudimg-amd64.img.

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

    • CVE-2024-10043, CVE-2024-10240, CVE-2024-10925, CVE-2024-11274, CVE-2024-11668, CVE-2024-11669, CVE-2024-11828, CVE-2024-11931, CVE-2024-12292, CVE-2024-12379, CVE-2024-12380, CVE-2024-12431, CVE-2024-12570, CVE-2024-13041, CVE-2024-13054, CVE-2024-3303, CVE-2024-6324, CVE-2024-6324, CVE-2024-7296, CVE-2024-7404, CVE-2024-8114, CVE-2024-8116, CVE-2024-8177, CVE-2024-8179, CVE-2024-8180, CVE-2024-8186, CVE-2024-8233, CVE-2024-8237, CVE-2024-8402, CVE-2024-8647, CVE-2024-8648, CVE-2024-8650, CVE-2024-9367, CVE-2024-9387, CVE-2024-9633, CVE-2024-9693, CVE-2024-9870, CVE-2025-0194, CVE-2025-0307, CVE-2025-0314, CVE-2025-0376, CVE-2025-0475, CVE-2025-0516, CVE-2025-0555, CVE-2025-0652, CVE-2025-1042, CVE-2025-1072, CVE-2025-1198, CVE-2025-1212, CVE-2025-1257, CVE-2025-1540, CVE-2025-25291, CVE-2025-25292, CVE-2025-27407, CVE-2024-10307, CVE-2024-10307, CVE-2024-12619, CVE-2024-9773, CVE-2025-0811, CVE-2025-2242, CVE-2025-2255.

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

    • core/raft: Добавлены ограничения на подключения к raft-бэкэнду (GH-28790, HCSEC-2024-26).

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

    • Sonatype Nexus Repository теперь обеспечивает повышенную безопасность за счёт повторного шифрования конфиденциальных данных. Также устраняет уязвимость: CVE-2024-5764.

    • Улучшена безопасность конфигураций blob store путём шифрования конфиденциальных данных в логах и support zip-архивах (NEXUS-30690).

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

    • Django (CVE-2024-56374).

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

    • PyMySQL (CVE-2024-36039).

    • Horizon:

      • Django: CVE-2024-27351, CVE-2024-38875, CVE-2024-39329, CVE-2024-39330, CVE-2024-39614, CVE-2024-41989, CVE-2024-41990, CVE-2024-41991, CVE-2024-42005, CVE-2024-45230, CVE-2024-45231, CVE-2024-53907, CVE-2024-53908, CVE-2024-56374.

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

    • Ansible: CVE-2023-4237, CVE-2023-5764, CVE-2024-0690, CVE-2024-8775.

Known Limitations

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

  • Дистрибутив для установки: SLO-9.4.3-402_20241107.0-iso-distrib.iso.

  • Хеш-сумма: 73426c1469fc42f9955765f483ca34ef.

  • Подпись ГОСТ: 2B21D654C1354F9D4EA0397B8A177B2D4C0D7AF9C182468C2C12EFE872053925.

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