Предупреждения при обновлении

Изменения в поставке 8.1.0

  1. Поставка 8.1.0 содержит пакеты для установки Закрома.Хранение 2.10.1 (роль zakroma-storage 11.0.1). В роли добавлена поддержка ОС ROSA Chrome 13 и ROSA Chrome 12 ФСТЕК; версии остальных ролей приведены в составе поставки.

  2. Для новых инсталляций рекомендуется задавать ключи шифрования данных в БД scrambler_keys в блоках zakroma_storage_gateway и zakroma_storage_core (при использовании notification — и в zakroma_storage_notification). Шифрование настраивается только при новой инсталляции: если ранее ключи не использовались, зашифровать записи в БД уже нельзя — оставьте scrambler_keys: []. Если шифрование уже включено, перенесите действующие ключи без изменений. Порядок генерации ключа и ротации приведён в инструкции базового кластера.

  3. Примеры base-cluster и stretched-cluster переведены на TLS и балансировщик haproxy-ha (HAProxy и keepalived на узлах Закрома.Хранение): S3 API публикуется на VIP на порту 443, Admin UI — на порту 8443. В group_vars/zakroma-storage.yml примеров изменены значения: s3api_port: 6443, management_port: 8444, zakroma_storage_admin.reverse_proxy.enabled: true, reverse_proxy.port: 8443, tls.enabled: true. При обновлении существующей инсталляции сохраните фактические порты и параметры TLS: их изменение меняет адреса подключения клиентов. Переход на haproxy-ha выполняйте отдельно по инструкции базового кластера.

  4. Из примеров base-cluster и multicluster удалена установка ZDS v1: группа хостов zakroma-zds-ec, файл group_vars/zakroma-zds-ec.yml и плейбук sample-play-zakroma-zds-ec.yml. ZDS v1 остаётся только в примере single-node (режим FS); роль zakroma-zds 5.3.8 по-прежнему входит в архив.

  5. Из примеров base-cluster и single-node удалены Nginx и Nginx для Kafka-UI: группы zakroma-storage-nginx и kafka-ui-nginx и файлы group_vars/zakroma-storage-nginx.yml и group_vars/kafka-ui-nginx.yml. Роль nginx и плейбуки sample-play-zakroma-storage-nginx.yml и sample-play-kafka-ui-nginx.yml остаются в архиве. Если Nginx используется в существующей инсталляции, перенесите группы и файлы group_vars из своей текущей конфигурации. Подробнее см. Настройку Nginx.

  6. Плейбук preflight-проверок ZDS переименован: sample-play-zakroma-zdsv2-preflight.yml → sample-play-zakroma-zds-v2-preflight.yml. Обновите собственные скрипты и пайплайны, которые вызывают плейбук по имени.

  7. Параметр zakroma_storage_gateway.post_object_temp_dir удалён из роли zakroma-storage и примеров group_vars; роль больше не создаёт для него каталог. Удалите параметр из собственных group_vars.

  8. Параметр zakroma_storage_postgresql_host поддерживает перечисление узлов PostgreSQL через запятую для работы с отказоустойчивой конфигурацией БД без VIP.

  9. В примере multicluster исправлены параметры CDN второго кластера: zakroma_storage_cdn.this ссылается на топики ZakromaStorageCluster-2 и ZakromaGatewayCluster-2, others — на топики первого кластера, а kafka_dead_letter_topic в others использует имена ZakromaStorageDeadLetterQueueCluster-N. Параметр mtls.enabled задаётся логическим значением false вместо строки "false". При обновлении существующего мультикластера сверьте имена топиков с фактической конфигурацией Kafka и не переименовывайте используемые топики без отдельной миграции.

  10. В блоке zakroma_storage_admin.reverse_proxy добавлен необязательный ключ tls, задающий протокол адреса Admin UI при публикации через балансировщик: пустое значение (по умолчанию) или true — HTTPS, false — HTTP. Значение по умолчанию сохраняет прежнее поведение.

  11. Добавлен пример растянутого кластера inventories/stretched-cluster и плейбук sample-play-haproxy-ha.yml. См. Установку растянутого кластера.

Важные изменения при переходе на 2.10 (поставка 8.0.0)

  1. В поставке 8.0.0 (Закрома.Хранение 2.10.0) сервисы gateway и core объединены в один сервис zakroma-storage-monolith. Отдельный сервис zakroma-storage-gateway больше не устанавливается, переменная zakroma_storage_gateway_version удалена, файл лицензии располагается по пути /opt/zakroma/zakroma-storage-monolith/bin/licence. Для обновления используйте плейбук playbooks/sample-play-zakroma-storage-upgrade.yml — он переносит лицензию из каталога legacy-сервиса и выполняет обновление. После успешного обновления и ручной проверки удалите артефакты legacy gateway плейбуком playbooks/sample-play-delete-old-version.yml с явным подтверждением -e cleanup_approved=true. Порядок обновления приведён в Обновлении Закрома.Хранение.

  2. В group_vars/zakroma-storage.yml изменён набор параметров блока zakroma_storage_gateway: удалены host, api_enable и max_conns_per_host, параметр aws_sing_v4_logs_enable переименован в aws_sig_v4_logs_enable, в блок zakroma_storage_gateway добавлены ключи шифрования scrambler_keys (в блоках zakroma_storage_core и zakroma_storage_notification они сохранены). При обновлении перенесите собственные значения в новую структуру параметров.

  3. Автоматическое создание топиков Kafka по умолчанию отключено (topic_auto_creation.enabled: false). В group_vars/kafka.yml добавлены топики ZakromaCoreBackgroundMonitoring и ZakromaCoreBackgroundMonitoringDL.

  4. При обновлении до 2.10 существующие правила политик доступа автоматически преобразуются в формат S3 Bucket Policy. Правилами можно управлять как в разделе политик доступа, так и через S3 API PutBucketPolicy, GetBucketPolicy и DeleteBucketPolicy.

  5. Трассировка запросов переведена на OpenTelemetry взамен внутренней передачи TraceID. Параметры задаются в блоке zakroma_storage_extra.tracer; по умолчанию экспорт трасс отключён (exporter_type: none).

  6. Политики жизненного цикла с действием «Удаление» больше не удаляют объекты с ObjectLock (LegalHold или RetentionMode). Бакет с такими объектами нельзя переместить в корзину.

  7. Для групп хранения на ZDS 2.0 при удалении бакета из корзины данные удаляются всегда: флажок «Удалить данные» включён и заблокирован.

Порядок обновления

Инструкции по обновлению Закрома.Хранение и ZDS и по переносу конфигурации утилитой helper приведены в Обновлении Закрома.Хранение.