На основном сервере платформы:
Содержимое дистрибутива из поставки кроме файла /images/viqube.tar скопировать на сервер, сохраняя структуру вложенных элементов.Предупреждение |
---|
Если предполагается обновление платформы, |
используя Yandex Container Registry |
, то копирование файлов дистрибутива не требуется. |
Предупреждение | ||
---|---|---|
| ||
Перед обновлением важно убедиться, что у пользователя, из-под которого будет происходить обновление, есть все права на выполнение команды docker или производить обновление из-под суперпользователя. Подробнее здесь Общая часть обновления |
Обновление через Yandex Container Registry
- Залогиниться в Yandex Container Registry на всех серверах. См Общая часть обновления.
- На основном сервере платформы:
Установить образ обновления:
Блок кода language bash theme RDark sudodocker chmod +x *.sh
Выполнить командуpull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21
Создать новую папку и перейти в неё. Скрипты запуска появятся в текущей директории.
Запустить обновление на основном сервере платформы
Блок кода language bash theme RDark docker
swarm init
- На основном сервере выполнить
run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21 \ -l hub -m dashboard_server
Сделать исполняемым скрипт run.sh, выполнив команду:
Блок кода language bash theme RDark sudo chmod +x *.sh
Сохранить вывод вида "docker swarm init
docker swarm join --token ..." от
передыдущей команды - На сервере с установленным ViQube выполнить команду из предыдущего пунктаНа основном сервере платформы:Перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:
Установить образ обновления:
Блок кода language bash theme RDark - -m dashboard_server
- -l <mode>
docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21
Запустить обновление на сервере ViQube
Блок кода language bash theme RDark sudodocker
dockerrun
login-it \ -v /var/run/docker.sock:/var/run/docker.sock \
--username oauth \
--password <token> \
-v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21 \ -l hub
cr.yandex
title Обновление на версию 2.20 sudo ./update.sh -m dashboard_server -l <mode>
Примечание здесь параметр -m dashboard_server означает, что на данном сервере установлены компоненты платформы кроме ViQube
здесь <mode> - режим получения новых образов. Возможные значения: local, hub.
hub - получение образов из Yandex Container Registry. Если выбран данный режим, необходимо предварительно авторизоваться в Yandex Container Registry, используя следующую команду:где <token> - токен, полученный из запроса
https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb
local - получение образов локально, из папки images дистрибутива платформы. - на сервере перейти в скопированную папку с дистрибутивом сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, update.sh, выполнив команду:
-m viqube
Выполнить запуск платформы. Подробнее Запуск платформы
Предупреждение В параметры запуска run.sh необходимо выставить ключ --cluster-mode yes
sudoПримечание Если при запуске в кластерном режиме возникли проблемы, то необходимо выполнить команду на всех серверах
Блок кода language bash theme RDark
chmoddocker
+x *.shна сервере перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:swarm
leave -f
И произвести недостающие действия из секции Установка компонентов на разные серверы.
На сервере с установленным ViQube:
содержимое дистрибутива из поставки скопировать на сервер - из папки images необходимо скопировать только файл viqube.tar - сохраняя структуру вложенных элементов.
Предупреждение |
---|
Если предполагается обновление платформы, используя Yandex Container Registry, копировать папку images дистрибутива не требуется. |
Обновление через образы
- На основном сервере платформы:
- Скопировать на сервер все образы из поставки и перейти в эту папку.
Загрузить образ обновления в память
Блок кода language bash theme RDark
- -m viqube
- -l <mode>
docker load < update.tar.gz
Запустить обновление, скрипты запуска появятся в текущей директории.
Блок кода language bash theme RDark
sudodocker
dockerrun
login-it \ -v /var/run/docker.sock:/var/run/docker.sock \
--username oauth \
--password <token> \
-v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21 \ -l hub
cr.yandex-m dashboard_server
Сделать исполняемым скрипт run.sh, выполнив команду:
Блок кода language bash theme RDark
- В выводе должно быть две ноды. В строчке со звёздочкой указан айдишник "мастер" ноды, в другой "воркер" ноды.
sudo chmod +x *.sh
- На сервере ViQube:
- Скопировать на сервер образы viqube.tar.gz, promtail.tar.gz из поставки и перейти в эту папку.
Загрузить образ обновления в память
Блок кода language bash theme RDark docker
node update --label-add platform=true <master_node_id>
docker node update --label-add nginx=true <master_node_id> load < update.tar.gz
Запустить обновление на сервере ViQube.
Блок кода language bash theme RDark docker
node update --label-add viqube-master=true <worker_node_id>run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.21 \ -l hub -m viqube
Выполнить запуск платформы. Подробнее Запуск платформы
Предупреждение В параметры запуска run.sh необходимо выставить ключ --cluster-mode yes Примечание Если при запуске в кластерном режиме возникли проблемы, то необходимо выполнить команду на всех серверах
Блок кода language bash theme RDark docker swarm leave -f
И произвести недостающие действия из секции Установка компонентов на разные серверы.
sudo ./update.sh -m viqube -l <mode>
здесь параметр -m viqube означает, что на данном сервере установлен только ViQube
здесь <mode> - режим получения новых образов. Возможные значения: local, hub.
hub - получение образов из Yandex Container Registry. Если выбран данный режим, необходимо предварительно авторизоваться в Yandex Container Registry, используя следующую команду:где <token> - токен, полученный из запроса
https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb
local - получение образов локально, из папки images дистрибутива платформы.
На основном сервереВыполнитьВыполнитьdocker node ls
Примечание |
---|
<master_node_id> - айдишник "мастер" ноды |
Выполнить
Примечание |
---|
<worker_node_id> - айдишник "воркер" ноды |
Проверить правильность можно командой: