/
Обновление компонентов, установленных на разных серверах

Обновление компонентов, установленных на разных серверах

Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.

Проверка прав docker

Перед обновлением важно убедиться, что у пользователя, из-под которого будет происходить обновление, есть все права на выполнение команды docker или производить обновление из-под суперпользователя. Подробнее здесь Общая часть обновления.

Обновление через Yandex Container Registry

  1. Войдите в Yandex Container Registry:

    docker login \
      --username oauth \
      --password <token> \
      cr.yandex 

    где <token> -  токен, полученный из запроса https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb

  2. На всех серверах установите образ обновления:

    Обновление на версию 2.30
    docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1
  3. На основном сервере платформы:
    • Создайте новую папку и перейдите в неё. Скрипты запуска появятся в текущей директории.

    • Запустите обновление на основном сервере платформы.

      Обновление на версию 2.30
      docker run -it \
          -v /var/run/docker.sock:/var/run/docker.sock \
          -v /docker-volume:/docker-volume \
          -v /var/lib/visiology:/mnt/visiology \
          -v /docker-volume/proxy:/mnt/certs \
          -v $(pwd):/mnt/volume \
          -v $HOME/.docker:/root/.docker \
          cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
              -l hub -m dashboard-server $(pwd) \
              $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
      tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
  4. Если ViQube установлен на другом сервере:
    • Запустите обновление на сервере ViQube.

      Обновление на версию 2.30
      docker run -it \
          -v /var/run/docker.sock:/var/run/docker.sock \
          -v /docker-volume:/docker-volume \
          -v /var/lib/visiology:/mnt/visiology \
          -v /docker-volume/proxy:/mnt/certs \
          -v $(pwd):/mnt/volume \
          -v $HOME/.docker:/root/.docker \
          cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
              -l hub -m viqube $(pwd) \
              $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
      tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
  5. Если Smart Forms установлен на другом сервере:
    • Запустите обновление на сервере Smart Forms.

      Обновление на версию 2.30
      docker run -it \
          -v /var/run/docker.sock:/var/run/docker.sock \
          -v /docker-volume:/docker-volume \
          -v /var/lib/visiology:/mnt/visiology \
          -v /docker-volume/proxy:/mnt/certs \
          -v $(pwd):/mnt/volume \
          -v $HOME/.docker:/root/.docker \
          cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
              -l hub -m smart-forms $(pwd) \
              $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
      tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
    • В файле /docker-volume/viloader/application/configs/config.json изменить значение параметра Server=visiology_viloader-db на Server=viloader-db

      Если при запуске в кластерном режиме возникли проблемы, то необходимо выполнить команду на всех серверах.

      docker swarm leave -f

      И произвести недостающие действия из секции Установка компонентов на разные серверы.

Обновление через образы

  1. На всех серверах платформы:
    • Скопируйте на сервер образ обновления update.tar.gz в новый каталог.
    • Загрузите образ обновления в память:

      docker load < update.tar.gz
  2. На основном сервере платформы:
  • Скопировать на сервер оставшиеся образы из поставки с сохранением иерархии каталогов
  • Запустите обновление на основном сервере платформы.

    Обновление на версию 2.30
    docker run -it \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /docker-volume:/docker-volume \
        -v /var/lib/visiology:/mnt/visiology \
        -v /docker-volume/proxy:/mnt/certs \
        -v $(pwd):/mnt/volume \
        -v $HOME/.docker:/root/.docker \
        cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
            -l local -m dashboard-server $(pwd) \
            $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
    tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

3.  Если ViQube установлен на другом сервере:

  • Скопируйте на сервер образы viqube.tar.gz, promtail.tar.gz из поставки в каталог images/v2
  • Запустите обновление на сервере ViQube.

    Обновление на версию 2.30
    docker run -it \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /docker-volume:/docker-volume \
        -v /var/lib/visiology:/mnt/visiology \
        -v /docker-volume/proxy:/mnt/certs \
        -v $(pwd):/mnt/volume \
        -v $HOME/.docker:/root/.docker \
        cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
            -l local -m viqube $(pwd) \
            $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
    tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
    4. Если Smart Forms установлен на другом сервере:
  • Скопируйте на сервер образы smart-forms-app.tar.gz, smart-forms.tar.gz, viloader-app.tar.gz, viloader-db.tar.gz, python-script-service.tar.gz, promtail.tar.gz из поставки в каталог images/v2
  • Запустите обновление на сервере Smart-Forms.
Обновление на версию 2.30
docker run -it \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /docker-volume:/docker-volume \
    -v /var/lib/visiology:/mnt/visiology \
    -v /docker-volume/proxy:/mnt/certs \
    -v $(pwd):/mnt/volume \
    -v $HOME/.docker:/root/.docker \
    cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
        -l local -m smart-forms $(pwd) \
        $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

В файле /docker-volume/viloader/application/configs/config.json изменить значение параметра Server=visiology_viloader-db на Server=viloader-db


Если при запуске в кластерном режиме возникли проблемы, то необходимо выполнить команду на всех серверах.

docker swarm leave -f

И произвести недостающие действия из секции Установка компонентов на разные серверы.



Related content

Обновление компонентов, установленных на одном сервере
Обновление компонентов, установленных на одном сервере
Read with this
Обновление компонентов, установленных на одном сервере
Обновление компонентов, установленных на одном сервере
More like this
Особенности обновления до версии 2.30
Особенности обновления до версии 2.30
Read with this
Обновление компонентов, установленных на одном сервере
Обновление компонентов, установленных на одном сервере
More like this
Общая часть обновления
Общая часть обновления
Read with this
Обновление компонентов, установленных на одном сервере
Обновление компонентов, установленных на одном сервере
More like this