Обновление компонентов, установленных на разных серверах
Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.
Перед обновлением платформы убедитесь, что она запущена. Если запущены обе версии платформы (2 и 3), то обновятся обе версии. Если запущена одна версия, то обновится только эта версия. Вторая версия не будет обновлена.
Проверка прав docker
Перед обновлением важно убедиться, что у пользователя, из-под которого будет происходить обновление, есть все права на выполнение команды docker
. Более подробную информацию вы найдете в разделе Общая часть обновления.
Обновление через образы
На основном сервере платформы:
Скопировать на сервер образы из поставки с сохранением иерархии каталогов.
Загрузите образ обновления в память:
docker load < update.tar.gz
Запустите образ обновления для получения новых скриптов загрузки образов:
Обновление до версии 2.37
docker run --rm -it \ --name update-container \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v /var/lib/visiology:/mnt/volume \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.37_3.8 \ --only-extract-load-scripts "$(id -u):$(id -g)" | \ tee /var/lib/visiology/logs/update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
Запустите скрипт
load_images.sh
для загрузки образов нового релиза:/var/lib/visiology/scripts/load_images.sh --version <VERSION> -i <path_to_distrib>/images
где
path_to_distrib
- абсолютный путь к дистрибутиву платформы.VERSION
может принимать значенияv2
- для загрузки образов 2.37, илиall
- для загрузки образов 2.37 и 3.8.Запустите обновление. Скрипты запуска появятся в директории
/var/lib/visiology/scripts
.Опционально выполните удаление образов от старой версии:
Для удаления образов 3.7 выполните команду:
Если ViQube установлен на другом сервере:
Скопируйте на сервер образы
viqube.tar.gz, promtail.tar.gz
из поставки в каталогimages/v2
Запустите обновление на сервере ViQube.
Обновление до версии 2.37Удалите старые образы, если это необходимо
Если Smart Forms установлен на другом сервере:
Скопируйте на сервер образы
smart-forms-app.tar.gz
,smart-forms-db.tar.gz
,viloader-app.tar.gz
,viloader-db.tar.gz
,python-script-service.tar.gz
,promtail.tar.gz
из поставки в каталогimages/v2
Запустите обновление на сервере Smart-Forms.
Обновление до версии 2.37Удалите старые образы, если это необходимо
Если при запуске в кластерном режиме возникли проблемы, то необходимо выполнить следующую команду на всех серверах:docker swarm leave -f
и произвести недостающие действия, описанные в разделе Установка компонентов на разные серверы.
Обновление через Yandex Container Registry
Войдите в Yandex Container Registry:
где
<token>
- токен, предоставленный отделом поддержки по вашему запросу.На основном сервере платформы:
Создайте новую папку и перейдите в неё. Скрипты запуска появятся в текущей директории.
Загрузите образ обновления
Запустите образ обновления для получения новых скриптов загрузки образов:
Обновление до версии 2.37
Запустите скрипт
load_from_release_dockerhub.sh
для загрузки образов нового релиза:/var/lib/visiology/scripts/load_from_release_dockerhub.sh --version <VERSION>где
VERSION
может принимать значенияv2
- для загрузки образов 2.37, илиall
- для загрузки образов 2.37 и 3.8Запустите обновление. Скрипты запуска появятся в директории
/var/lib/visiology/scripts
.Опционально выполните удаление образов от старой версии:
Для удаления образов 3.7 выполните команду:
Если ViQube установлен на другом сервере:
Запустите обновление на сервере ViQube.
Обновление до версии 2.37
Удалите старые образы, если это необходимо
Если Smart Forms установлен на другом сервере:
Запустите обновление на сервере Smart Forms.
Обновление до версии 2.37
Удалите старые образы, если это необходимо