Release notes
ЗАКРОМА.Хранение v 2.9.1
🚀 Новый функционал
Управление параметрами и классом хранения ZDS v2
Добавлена возможность управлять классом хранения и схемой хранения нижнего слоя ZDS v2 непосредственно из административного интерфейса — без необходимости ручного редактирования конфигурационных файлов. При добавлении хранилища типа ZDS v2 в настройки хранения бакета теперь доступны новые поля: Класс хранения, Схема хранения.

Подробнее смотрите Настройка хранения бакета.
✨ Улучшения
Улучшена производительности системы хранения
Оптимизирован механизм обработки операций хранения, что повышает скорость выполнения запросов и снижает нагрузку на инфраструктуру при работе с большими объёмами данных.
🐞 Исправления
- Исправлена ошибка аварийного завершения процесса-обработчика при выполнении S3 Select запроса с
LIMIT 0. ЗапросSELECT * FROM s3object LIMIT 0теперь корректно возвращает ответ согласно спецификации AWS S3: событиеStatsс нулевым значениемBytesReturnedи завершающее событиеEndбез записей данных.
ZDS v2.1.0
🚀 Новый функционал
Поддержка нескольких схем EC в рамках одного кластера
В рамках одного кластера ZDS теперь поддерживается несколько схем EC одновременно. Схема хранения задаётся для каждого вольюма отдельно и может отличаться у разных вольюмов в рамках одного кластера. В ZDS v1 схема EC была единой для всего кластера.
Подробнее смотрите Как ZDS хранит данные и Рекомендации к подбору схемы Erasure Coding.
Поддержка режима репликации (FC) для вольюмов
Добавлена поддержка режима репликации (Full Copy, FC) для вольюмов ZDS. При создании вольюма теперь можно выбрать схему FC с параметрами replicas и minReplicas.
Подробнее смотрите Как ZDS хранит данные.
✨ Улучшения
Управление временными окнами фоновых процессов
Добавлена библиотека управления временными окнами для централизованного и гибкого управления фоновыми процессами (вакуум, сканирование, репейр). Процессы запускаются только внутри настроенных временных окон и сохраняют checkpoint при выходе из окна.
Подробнее смотрите Конфигурация ZDS.
Параллельная запись частей файла при записи
Реализована параллельная запись частей файлов, что повышает скорость записи данных.
Расширенный мониторинг
Добавлены новые метрики для мониторинга операций ввода-вывода, групп хранения, синхронизации ченджлога, а также фоновых процессов (сканирование, репейр, вакуум).
Подробнее смотрите Метрики ZDS.
Безопасное удаление вольюмов
Переработан механизм удаления вольюмов: после завершения процесса удаления и получения подтверждения от всех узлов запись автоматически удаляется из реестра — вольюм исчезает из листинга.
Подробнее смотрите Кластер ZDS и состояния компонентов.
Оптимизированная загрузка регистратора и асинхронная инициализация шардов
Оптимизирована загрузка регистратора при старте сервиса; шарды базы данных инициализируются асинхронно, что сокращает время запуска.
Улучшенное логирование в фоновых процессах и критических компонентах
Расширена детализация логов в фоновых процессах (сканирование, vacuum, repair) и критических компонентах сервиса.
Валидация имени вольюма
Добавлена валидация параметра volume для методов /volume/init и /inner/volume/init. Допустимые символы: латинские и русские буквы, цифры, ., -, _. Последовательность .. недопустима; при нарушении возвращается код 400.
Подробнее смотрите API ZDS.
Выбор схемы хранения при создании вольюма
Добавлена возможность указания схемы хранения (EC или FC) при создании вольюма через API и CLI. Также добавлена валидация комбинации класса хранения и схемы для внешних запросов.
Подробнее смотрите API ZDS и Командная строка (zcli).
🐞 Исправления
- Игнорирование ошибок синхронизации ченджлога для отсутствующих вольюмов: ошибки синхронизации для вольюмов, которых нет на узле, больше не блокируют работу.
- Исправлено отсутствие информации о классе хранения в ответе метода
/volume/list. Подробнее: API ZDS. - Исправлена логика коммита смещений (
ExternalOffset) для обеспечения целостности данных в распределённом кластере. - Ручной запуск сканирования теперь работает при отключённом фоновом режиме. Подробнее: API ZDS.
ЗАКРОМА.Хранение v 2.9
В релизе ЗАКРОМА.Хранение 2.9 основной акцент сделан на упрощении перехода с внешних S3-хранилищ на Закрома, расширении возможностей управления пользователями, добавлении лимитов (QoS), а также унификации доступа к S3 API для разных стилей адресации.
🚀 Новый функционал
Бесшовная миграция данных с внешних S3-хранилищ
Реализован режим миграции с поддержкой проксирования запросов к старому хранилищу для бесшовной миграции. Позволяет перевести клиентов с другого S3-хранилища (например, MinIO) на ЗАКРОМА с минимальным простоем (лишь на время переключения клиентов на другой S3-endpoint - 10-15 минут).
При включении миграции бакет блокируется на изменение конфигурации (группы хранения, политики), но операции с данными не прерываются.
Подробнее смотрите Бесшовная миграция с внешнего S3.
Единый endpoint ps/vs style
Упрощена настройка доступа к S3 API: path-style и virtual-hosted-style теперь доступны через единый адрес <workspace>.<FQDN>. Ранее нужно было использовать разные endpoint для разных стилей.
Изменение адреса глобального namespaceАдрес глобального namespace изменён с
gs.<FQDN>наglobal.<FQDN>. При обновлении с версии 2.8 необходимо обновить DNS-записи и настройки клиентских приложений. Для обратной совместимости старые адреса<workspace>.ps.<FQDN>и<workspace>.vs.<FQDN>можно добавить как дополнительные домены.
Локальные пользователи рабочей области
Администраторы рабочей области (роли Workspace-owner и Workspace-editor) теперь могут создавать локальных пользователей S3 API — аналогично созданию локальных групп. Локальные пользователи работают только с S3 API и не затрагиваются синхронизацией Keycloak.
Подробнее смотрите Локальные пользователи рабочей области.
Интеграция с Blitz по протоколу OIDC
Реализована интеграция с внешней системой идентификации Blitz по протоколу OIDC. Изменена конфигурация метода авторизации.
Подробнее смотрите Авторизация.
Управление лимитами (QoS) пропускной способности
Реализовано управление пропускной способностью S3 API на трёх уровнях: рабочая область (тенант), бакет, пользователь. Доступны следующие параметры:
- лимит скорости скачивания,
- лимит скорости загрузки,
- максимальный размер данных,
- лимит RPS (количество запросов в секунду).
При превышении лимитов запросы не отклоняются — они переводятся в режим ожидания.
Подробнее смотрите QoS — управление пропускной способностью S3 API.
✨ Улучшения
Оптимизация сканирования исторических хранилищ
Расчёт контрольных сумм (etag) теперь выполняется непосредственно на стороне целевых хранилищ (ZDS/S3). Сканирование использует только листинг объектов без передачи содержимого файлов на сервер Закрома.Хранение. Это значительно сокращает время сканирования и нагрузку на сеть при работе с хранилищами большого объёма.
Поддержка вложенных групп Keycloak
При использовании стратегии синхронизации sync_strategy: groups реализован рекурсивный обход вложенных групп Keycloak. Клиенты могут объединять пользователей из нескольких независимых доменов или разных LDAP-групп в единый список синхронизации.
ОграничениеПоддерживается не более 100 вложенных групп на корневом уровне иерархии.
Подробнее смотрите Авторизация.
ZCLI: управление S3 credentials другого пользователя
В утилиту командной строки zcli добавлен функционал создания и генерации ключей доступа S3 для других пользователей. Операция доступна администратору или пользователю с пермиссией users.
Подробнее смотрите Командная строка (zcli).
Бесшовное обновление
С версии 2.9 становится возможным полноценное бесшовное обновление (без простоя сервиса). Это стало возможным благодаря новой библиотеки миграций изменений базы данных и улучшениям Ansible-ролей установки, которые позволяют обновлять узлы кластера поочерёдно, не останавливая сервис целиком.
🐞 Исправления
- Исправлена работа параметра
skipCertificateVerificationпри создании хранилища. - Исправлена ошибка
403 SignatureDoesNotMatchпри подключении через s3fs.
Перед обновлением на 2.9Перед обновлением ознакомьтесь с инструкцией.