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.4 → ks2025.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.