KeyStack 2024.3 Release Notes

New Features

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

  • Добавлена поддержка bird для Sberlinux.

  • Добавлена возможность настройки зависимостей между сервисами KeyStack (systemd unit-файлы сервисов платформы).

  • Добавлена зависимость сервиса neutron-openvswitch-agent от сервиса openvswitch-db.

  • LMA:

  • Добавлен multipath-exporter и правила уведомлений (алертов) на появление сбойных устройств и путей.

  • Добавлен consul-exporter и правила уведомлений на появление сбойных устройств и путей.

  • В вывод openstack exporter добавлены метрики: openstack_cinder_pool_info, openstack_cinder_pool_capacity_allocated_gb, openstack_nova_server_net_info.

  • Добавлены правила алертов Cinder на заполнение cinder volume, на длительное нахождение тома в статусе attaching, а также на длительное нахождение тома в статусе error.

  • Добавлено правило алерта по повторяющимся IP-адресам ВМ.

  • Для blackbox exporter добавлены правила мониторинга и алертов статуса доступности эндпоинтов Grafana, AdminUI, Horizon, Opensearch dashboard, GitLab и nova-api.

  • Шаблон для рассылки почтовых уведомлений с алертами скорректирован и переименован в default_email.tmpl. Добавлены ссылки на Grafana и Horizon.

  • Доработаны дашборды KS — VM Overview, KS — Node Overview, KS — SSL Certificate Monitor. Также добавлены дашборды KS — AZ Overview, KS — AZ Graph, KS — Volume Overview, Consul Dashboard.

  • На шаге bootstrap-servers в случае изменения конфигурационного файла docker daemon.json будет выполнено действие Reload вместо Restart, что гарантированно не вызовет перезапуска контейнеров.

  • Добавлено шифрование резервных копий базы данных MariaDB регионов KeyStack.

  • Добавлена настройка параметров sysctl-окружения. Для включении функции требуется установить sysctl_enabled: "true" в host_config/host-config.yml региона.

  • Добавлена возможность настройки firewalld для ограничения доступа к портам Public endpoint. Для включения необходимо выставить disable_firewall: False.

  • Добавлена возможность сбора журналов событий в формате CADF. Для включения функции требуется указать в конфигурационном файле региона enable_cadf_audit: "yes".

  • Добавлена поддержка СХД TATLIN.UNIFIED Gen1, Gen2 с ПО версии 3.1 и выше. Cinder драйвер версии 24.07.

Admin UI

  • CADF-события:

    • Добавлена новая страница “CADF-события”, где показана таблица событий аудита с фильтрами и возможностью скачать CSV. Эта страница располагается в подпункте “Логирование” в левом меню. Туда же перенесена предыдущая страница “Логирование” с переименованием в “Opensearch”.

    • Фильтры на этой странице сохраняются в URL в виде query-параметров. При заходе на страницу по подобному URL фильтры из query-параметров будут сразу же применяться к данным в таблице. Также при повторном заходе на страницу будут применяться последние примененные фильтры.

  • Добавлена новая страница “Конфиги”, где доступна секция “NTP Config”, отвечающая за показ и редактирования файла конфига NTP. Эта страница располагается в подпункте “Настройки региона” в левом меню, туда же перенесена “Inventory”.

  • Header страницы: добавлен выпадающий список с выбором проекта глобально.

  • Список виртуальных машин (далее ВМ):

    • Добавлен прогресс бар для миграций ВМ с состояниями Preparing, Running и Ending. Preparing и Running — стандартные состояния миграций, Ending — состояние, которое появляется, когда в списке серверов ВМ все еще отображается со статусом MIGRATING, но по факту миграция уже закончена. У состояния Preparing помимо прогресс бара отображается только прошедшее время с начала миграции, у Running — прошедшее время и прогресс в виде процентов, а у Ending — только прогресс бар.

    • Новое действие Migrate to region с диалоговым окном выбора региона, проекта, сети и с кнопкой запуска.

    • Убран из списка фильтров project_id. Список ВМ теперь фильтруется по глобальному проекту по умолчанию.

    • Добавлены новые фильтры по LUN ID, Port ID и MAC address.

  • Диски:

    • Добавлена возможность создания Volume через Snapshot. Также остается возможность, как и ранее, создавать его пустым.

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

    • Добавлена страница для просмотра конкретного вложения (attachment) по ссылке из поля в таблице.

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

  • Порты: убран из списка фильтров project_id. Cписок портов теперь фильтруется по глобальному проекту по умолчанию.

  • Сети: список сетей теперь фильтруется по глобальному проекту.

  • Flavors: добавлено действие “Удалить flavor” с подтверждающим диалоговым окном.

  • Drs Configs:

    • В таблицу добавлен столбец, показывающий значение algorithm.

    • В таблицу добавлен столбец, показывающий список заданий (job) у конкретного config.

  • Drs Jobs: добавлено поле availability_zone при создании jobs. При выборе ограничивает работу задания только в выбранной зоне доступности (AZ). Добавлен столбец с соответствующим полем в таблицу.

  • Drs Optimizations: в таблице списка уменьшен внутренний отступ кнопки “Посмотреть рекомендации”.

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

    • Добавлено действие Abort entering maintenance mode. Доступно, если admin_state=’EnteringMaintenanceMode’.

    • Добавлен столбец admin_state, показывающий service.admin_state и service.error_details, связанные с режимом обслуживания (Maintenance mode).

    • Действия Enable/Disable Service больше не будут доступны, если гипервизор в режиме обслуживания.

  • Переписаны логи: добавлены имя пользователя и его id, убран pid, скрыты успешные get-запросы, добавлена информация о не переехавших на другой хост ВМ и добавлен счетчик не переехавших ВМ. Также скрыты пароли, описание действия заключено в кавычки, добавлены события таймаута сессии пользователя и логи для maintenance mode.

  • Оптимизировано поведение диалоговых окон, списков, фильтров и пунктов меню.

HA

  • Доступна поддержка дополнительной конфигурации логирования через отдельный файл oslo.config посредством стандартной переменной log_config_append в основном конфигурационном файле.

  • Повторное выполнение запросов на эвакуацию ВМ на случай 500-ых и 409-ых ошибок от nova-api.

  • Изменены тела уведомлений prometheus (alertmanager): доступны новые поля summary, az, node.

  • Добавлена функция отключения (openstack compute service set –disable) вычислительного узла и отправки prometheus alert с префиксом BOND_DISABLED, если указанный в конфигурации интерфейс bond на этом вычислительном узле (все его slave-интерфейсы) длительное время находится в состоянии down. Управляется параметрами enable_bond_check и bond_name.

DRS

  • В ответ списка файлов конфигурации добавлено вложенное поле “job” со списком связанных заданий (jobs).

  • Доступен перевод DRS backend на wsgi, а также оптимизация инфраструктуры запуска веб-сервера.

  • Задача job теперь может быть запущена с ограничением на зону доступности, а не на всех вычислительных узлах региона.

Nova

  • Добавлена поддержка последовательной эвакуации ВМ в affinity сервер-группе. Такие ВМ эвакуируются на один вычислительный узел и сохранят взаимную локальность.

  • Доступны новые поля admin_state и error_details в сущности compute service, используемые для регистрации переходных состояний и ошибок compute service в процессе его ввода в Maintenance Mode.

Cinder

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

Security

  • Добавлена интеграция Horizon c Vault для возможности хранения SECRET_KEY в защищенном хранилище.

Upgrade Notes

  • Библиотека urllib3 обновлена до версии 1.26.18.

  • Библиотека typing_extensions обновлена до версии 4.8.0.

  • Kolla-ansible обновлена до версии 16.7.0.

  • Kolla обновлена до версии 16.6.0.

  • Heat выключен по умолчанию. Для включения компонента необходимо указать enable_heat: "yes" в REGION.yml — конфигурационном файле региона.

  • LMA: в существующие регионы необходимо добавить секцию prometheus-multipath-exporter в inventory-файл региона с группами control, compute.

  • LMA: в существующие регионы необходимо добавить секцию prometheus-consul-exporter в inventory-файл региона с группой consul-server.

  • LMA: в существующие регионы в секцию prometheus-blackbox-exporter необходимо добавить группу compute в inventory-файл региона.

  • LMA: для использования VictoriaMetrics в существующие регионы необходимо добавить секцию victoriametrics в inventory-файл региона с группой monitoring.

  • При обновлении существующих регионов в passwords.yml необходимо добавить новый ключ opensearch_initial_admin_password и присвоить любое значение.

Bug Fixes

  • Исправлена ошибка невозможности отключения SAN дисков (multipathd del map) при миграции виртуальных машин. Подробности см. по ссылке.

  • Исправлена ошибка, из-за которой не было возможности провести конфигурацию Octavia o-hm0 порта для взаимодействия Octavia Health Manager с экземплярами Amphora для больших инсталляций. Подробности см. по ссылке.

  • Исправлено поведение при перезапуске docker.service: возвращена возможность не перезапускать контейнеры вместе со службой docker.service. Подробности см. по ссылке.

Admin UI

  • Snapshots: при редактировании snapshot убрана обязательность поля description.

  • Security Groups: при редактировании security group убрана обязательность поля description.

  • Configs: исправлена валидация полей весов. Теперь они обновляются синхронно. Добавлена middleware для синхронизированной валидации полей в диалоговых окнах.

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

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

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

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

DRS

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

  • Регистронезависимая обработка значения ключа no_drs метаданных ВМ.

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

Nova

  • Исправлена ошибочная смена AZ у ВМ, чья live-миграция была отменена либо завершилась неудачно.

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

Security

  • Устранены уязвимости, описанные в OpenStack Security Advisories: OSSA-2024-001, OSSA-2024-002.

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

Known Issues

AdminUI

  • При наличии старых файлов конфигурации DRS или DRS Jobs соответствующие страницы показывают ошибку, это не позволяет видеть список имеющихся файлов конфигурации/jobs, редактировать и удалять их, но не влияет на работу DRS. В качестве компенсирующей меры нужно выполнить следующее: очистить таблицы в базе данных (БД) DRS (при этом пропадут текущие файлы конфигурации и jobs), а затем создать требуемые файлы конфигурации/jobs снова.

HA

  • Некоторые из запросов в Keystone и Nova пока не выполняются повторно при 500-ых ошибках.

  • Необходимо добавить переменную NETBOX_TOKEN со значением токена из Netbox в Vault по адресу deployments/secrets/accounts.

DRS

  • Проверка вместимости виртуальных ядер на целевом вычислительном узле отключена в рамках воркэраунда ошибки имитации логики cpu-allocation-ratio: отключена проверка, что вычислительный узел вмещает vCPU флейвора ВМ, которые на него предполагается мигрировать.

Deployment

  • В шаблоне региона Region1 необходимо добавить секцию prometheus-consul-exporter в inventory- файл региона с группой consul-server.

  • Пайплайн Deploy иногда может завершаться с ошибкой на задаче TASK [octavia : Copying over octavia.conf]. В случае ошибки нужно запустить Retry задачи.

  • При деплое OpenSearch иногда возникает ошибка TASK: [opensearch : Check if a log retention policy exists]. В случае ошибки необходимо создать индекс вручную. Подробности см. по ссылке.

Alertmanager

  • Правило алерта MTU mismatch не работает при типах сетей, отличных от flat и vlan.