Правильный подход: Обновляться строго с предыдущей версии на следующую (Версия N → Версия N+1).Не рекомендуется: Пропускать версии при обновлении (например, Версия N → Версия N+2).
Добавлены новые сервисы:
- gotenberg;
- tenant_service_api;
- init_database_tool;
- toolbox.
Пожалуйста убедитесь в наличии достаточного количества свободного пространства - в результате данного обновления размер БД будет временно увеличен в два раза,а minio 30% от общего размера дискового пространства на время миграции.Узнать размер docker тома с БД `vk_database-service-volume-v17` можно командой du -sh - адрес размещения по умолчанию `/var/lib/docker/volumes/`Пожалуйста выделите дополнительное время на процесс миграции и обновления.Процесс миграции для БД размером 3 Gb занимает от 30 минут на рекомендованной конфигурации 4/8.
Перед обновлением рекомендуется сделать резервную копию.
Для обновления схемы БД и minio выполнить миграцию:
-
Распаковать релиз и перенести свои значения в .env;
-
Выключить Проекты VK WorkSpace:
docker compose -p vk down; -
Загрузить docker образы:
docker load -i images.tar; -
Запустить миграцию:
docker compose -p vk --env-file .env -f scripts/migrate-tenant-schema-db.yml up -d; -
Дождаться завершения миграции, статус контейнеров
vk-adjust_migration_tool-1иvk-init_database_tool-1должен бытьExited (0). Проверить логи контейнеров:docker logs vk-adjust_migration_tool-1иdocker logs vk-init_database_tool-1. В результате должно быть сообщениеMigrations finished/Миграции выполнены.В случае наличия сообщений об ошибках в логах контейнеров - свяжитесь со службой технической поддержки и предоставьте логи контейнеров на анализ.
-
Удалить контейнеры с миграцией:
docker compose -p vk --env-file .env -f scripts/migrate-tenant-schema-db.yml down
Если миграция успешно выполнена, то можно переходить к установке новой версии релиза.
Версия helm-чарта: 4.0.
helm чарт был разделен на:
- vk-infra - инфраструктурные сервисы;
- vk - приложение;
Перед обновлением рекомендуется сделать резервную копию.
Для обновления схемы БД и minio выполнить миграцию:
-
Перед установкой необходимо подключиться к репозиториям docker и helm или скачать комплект поставки с docker образами и helm чартами локально.
-
Создайте свой файл с параметрами для vk-infra
values_vk_infra.yamlи добавьте минимальный набор параметров для установки. -
Создайте свой файл с параметрами для vk
values_vk.yamlи добавьте минимальный набор параметров для установки. -
Удалите существующий релиз:
helm -n NAMESPACE uninstall RELEASE(сохранив Persistent Volumes!). -
Установите vk-infra указав свой
values_vk_infra.yaml. По умолчанию timeout = 60 минут. Если helm упал на установке по таймауту, то сама миграция продолжить работать. Проверить ее состояниеkubectl -n vk get jobs, она пропадет из списка как только будет завершена успешно. Не перезапускайте установку, если миграция еще идет.
```shell
# Для онлайн установкиhelm upgrade --install -n vk -f values_vk_infra.yaml --version VERSION --wait --create-namespace vk-infra vk/vk-infra --timeout 60m# Для оффлайн установкиhelm upgrade --install -n vk -f values_vk_infra.yaml --wait --create-namespace vk-infra vk-infra/ --timeout 60m```
6. Включите миграцию для vk в values_vk.yaml:
```yamladjustMigration:enabled: trueinitMigration:legacyMigrate: "true"```
7. Установите vk указав свой values_vk.yaml.
```shell# Для онлайн установкиhelm upgrade --install -n vk -f values_vk.yaml --version VERSION --wait --create-namespace vk vk/vk# Для оффлайн установкиhelm upgrade --install -n vk -f values_vk.yaml --wait --create-namespace vk vk/```
8. Выключить миграцию в values_vk.yaml:
```yamladjustMigration:enabled: falseinitMigration:legacyMigrate: "false"```
Технический писатель: Белова Ирина