Обновление компонентов, установленных на разных серверах
На основном сервере платформы:
Содержимое дистрибутива из поставки кроме файла /images/viqube.tar скопировать на сервер, сохраняя структуру вложенных элементов.
Если предполагается обновление платформы, используя Yandex Container Registry копировать папку images дистрибутива не требуется.
- На сервере перейти в скопированную папку с дистрибутивом
Сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, update.sh, выполнив команду:
sudo chmod +x *.sh
Выполнить команду
docker swarm init
- На сервере с установленным ViQube:
На основном сервере выполнить команду:
docker swarm init
- Сохранить вывод вида "
docker swarm join --token ..." от
передыдущей команды - На сервере с установленным ViQube выполнить команду из предыдущего пункта
- На основном сервере платформы:
Перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:
Обновление на версию 2.20sudo ./update.sh -m platform -l <mode>
Обновление на версию 2.20.1sudo ./update.sh -m platform -l <mode> --from <2.19|2.19.1|2.20>
- -m platform
здесь параметр -m platform означает, что на данном сервере установлены компоненты платформы кроме ViQube
- -l <mode>
здесь <mode> - режим получения новых образов. Возможные значения: local, hub.
hub - получение образов из Yandex Container Registry. Если выбран данный режим, необходимо предварительно авторизоваться в Yandex Container Registry, используя следующую команду:
sudo docker login \ --username oauth \ --password <token> \ cr.yandex
где <token> - токен, полученный из запроса
https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb
local - получение образов локально, из папки images дистрибутива платформы.- --from <2.19|2.19.1|2.20>
Данный параметр необходимо указывать только для обновления на версию 2.20.1, допустимые значения 2.19, 2.19.1, 2.20
На сервере с установленным ViQube:
содержимое дистрибутива из поставки скопировать на сервер - из папки images необходимо скопировать только файл viqube.tar - сохраняя структуру вложенных элементов.
Если предполагается обновление платформы, используя Yandex Container Registry, копировать папку images дистрибутива не требуется.
- на сервере перейти в скопированную папку с дистрибутивом
сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, update.sh, выполнив команду:
sudo chmod +x *.sh
на сервере перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:
Обновление на версию 2.20sudo ./update.sh -m viqube -l <mode>
Обновление на версию 2.20.1sudo ./update.sh -m viqube -l <mode> --from <2.19|2.19.1|2.20>
- -m viqube
здесь параметр -m viqube означает, что на данном сервере установлен только ViQube
- -l <mode>
здесь <mode> - режим получения новых образов. Возможные значения: local, hub.
hub - получение образов из Yandex Container Registry. Если выбран данный режим, необходимо предварительно авторизоваться в Yandex Container Registry, используя следующую команду:
sudo docker login \ --username oauth \ --password <token> \ cr.yandex
где <token> - токен, полученный из запроса
https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb
local - получение образов локально, из папки images дистрибутива платформы.- --from <2.19|2.19.1|2.20>
Данный параметр необходимо указывать только для обновления на версию 2.20.1, допустимые значения 2.19, 2.19.1, 2.20
- Выполнить настройку нод:
На основном сервереВыполнить
docker node ls
- В выводе должно быть две ноды. В строчке со звёздочкой указан айдишник "мастер" ноды, в другой "воркер" ноды.
Выполнить
docker node update --label-add platform=true <master_node_id> docker node update --label-add nginx=true <master_node_id>
<master_node_id> - айдишник "мастер" ноды
Выполнить
docker node update --label-add viqube-master=true <worker_node_id>
<worker_node_id> - айдишник "воркер" ноды
Проверить правильность можно командой:
docker inspect -f "{{.ID}} {{.Status.Addr}} {{.Spec.Labels}}" $(docker node ls -q)
Выполнить запуск платформы. Подробнее Запуск платформы
В параметры запуска run.sh необходимо выставить ключ --cluster-mode yes