Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Информация

В связи с переименованием docker-сущности для 2.30 с visiology на visiology2, при обновлении происходит копирование volume с данными database-backups, loki_data, grafana_data, prometheus_data.

Если эти volume занимают много места (больше 1 Гб), то обновление может занять продолжительное время.

Посмотреть их размер можно с помощью команды docker system df -v | grep visiology

В database-backups хранятся бэкапы сервиса mongodb. Их удаление не приведет ни к каким последствиям.

В loki_data, grafana_data и prometheus_data хранится индексированная история логов и метрик. При их удалении нельзя будет посмотреть историю логов в Grafana до текущего момента. Если вам нужна история логов, удалять эти сервисы нельзя! Но обновление может занять значительное время.

Удалить всё можно следующим образом:

  1. Остановить сервисы:

    Блок кода
    docker service scale visiology_admin=0 && \
    docker service scale visiology_loki=0 && \
    docker service scale visiology_grafana=0 && \
    docker service scale visiology_prometheus=0
  2. Удалить volume с помощью следующей команды:
    docker volume rm visiology_database-backups visiology_loki_data visiology_grafana_data visiology_prometheus_data

  3. Далее можно запустить обновление платформы.

Примечание

При обновлении с версии 3.0 будут удалены все пользователи в Keycloak и создастся пользователь по умолчанию:

логин: user
пароль: 123456

При обновлении платформы необходимо учитывать, какой протокол обмена данными используется на сервере – HTTP или HTTPS.

При использовании HTTP:

Раскрыть
titleОбновление версии 3.0
панель
panelIconIdatlassian-warning
panelIcon:warning:
bgColor#FFEBE6
Примечание
  • Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.

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

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

Yandex Container Registry

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

Блок кода
languagebash
docker login \
   --username oauth \
   --password <token> \
   cr.yandex 

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

  • Установите образ обновления:

    Блок кода
    languagebash
    docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1
  • Создать новую папку и перейти в неё. Скрипты запуска появятся в ней.

  • Запустить обновление.

    Блок кода
    languagebash
    docker run -it \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /docker-volume:/docker-volume \
        -v /var/lib/visiology:/mnt/visiology \
        -v $(pwd):/mnt/volume \
        -v $HOME/.docker:/root/.docker \
        cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
        -l hub $(pwd) \
        $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
    tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
  • Перейдите в раздел Запуск платформы

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

    Скопировать

    образы

    1. Скопируйте дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.

    2. На сервере

    перейти
    1. перейдите в скопированную папку с дистрибутивом.

    Загрузить
    1. Загрузите образ обновления в память

    .
    1. :

      Блок кода
      languagebash
      docker load < update.tar.gz
    Перейти в папку с дистрибутивами и запустить
    1. Запустите обновление. Скрипты запуска появятся в

    текущей директории
    1. директории /var/lib/visiology/scripts.

      Блок кода
      languagebash
      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/
    visiology
    1. volume \
          -v 
    $(pwd):
    1. /
    mnt/volume \ -v $HOME/.docker:/root/.docker
    1. home/visio/2.31+3.2:/mnt/old-scripts \
          cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.
    30
    1. 32_3.
    1
    1. 3 \
          
    -l
    1.  
    local
    1.  
    $(pwd) \
    1.   
    1. "$(id -u)
    :$(cut -d
    1. :
    -f3 < <(getent group
    1. $(id -
    gn
    1. g)
    ))
    1. " | \
      tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

    Перейдите в раздел Запуск платформы

    Раскрыть
    titleОбновление версий 2.29 и 3.0 одновременно

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

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

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

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

    Блок кода
    docker login \
       --username oauth \
       --password <token> \
       cr.yandex 

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

  • Установите образ обновления:

    Блок кода
    languagebash
    docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1
  • Создать новую папку и перейти в неё. Скрипты запуска появятся в ней.

  • Запустить обновление.
    1. где в 6 строке нужно заменить /home/visio/2.31+3.2 на ваш путь к каталогу со скриптами запуска предыдущего релиза.

    2. Запустите скриптload_images.sh для загрузки образов нового релиза:

      Блок кода
      languagebash
      /var/lib/visiology/scripts/load_images.sh --version <VERSION> -i <path_to_distrib>/images

      где path_to_distrib - абсолютный путь к дистрибутиву платформы.
      VERSION может принимать значения v3 - для загрузки образов 3.3, или all - для загрузки образов 2.32 и 3.3

    3. Перейдите в раздел Запуск платформы .

    4. Опционально выполните удаление образов от старой версии:

      Блок кода
      languagebash
      docker 
    run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v /var/lib/visiology:/mnt/visiology \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \
    1. rmi $(docker images --filter=reference='cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/
    update:2.30_
    1. *3.
    1 \ -l hub $(pwd) \ $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \ tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
  • Перейдите в раздел Запуск платформы

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

  • Скопировать дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.

  • На сервере перейти в скопированную папку с дистрибутивом.

  • Загрузить образ обновления в память.

    Блок кода
    languagebash
    docker load < update.tar.gz
  • Перейти в папку с дистрибутивами и запустить обновление. Скрипты запуска появятся в текущей директории.
    1. 2' --format "{{ .Repository }}:{{ .Tag }}")

      Для удаления образов 2.31 и 2.31.1 выполните следующую команду:

      Блок кода
      languagebash
      docker 
    run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v /var/lib/visiology:/mnt/visiology \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \
    1. rmi $(docker images --filter=reference='cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/
    update:
    1. *2.
    30_3.1 \ -l local $(pwd) \ $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \ tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
  • Перейдите в раздел Запуск платформы

  • При использовании HTTPS:

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

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

    Обновление
    1. 31*' --format "{{ .Repository }}:{{ .Tag }}")

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

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

      Блок кода
      languagebash
      docker login \
         --username oauth \
         --password <token> \
         cr.yandex 

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

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

      Блок кода
      languagebash
      docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.
    30
    1. 32_3.
    1Создать новую папку и перейти в неё
    1. 3
    2. Запустите обновление. Скрипты запуска появятся в

    ней.Запустить обновление
    1. директории /var/lib/visiology/scripts.

      Блок кода
      languagebash
      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/
    visiology
    1. volume \
          -v /home/visio/
    visio3.0/visiology-certs
    1. 2.31+3.2:/mnt/
    certs \ -v $(pwd):/mnt/volume
    1. old-scripts \
          
    -v $HOME/.docker:/root/.docker \
    1. cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.
    30
    1. 32_3.
    1
    1. 3 \
          
    -l
    1.  
    hub $(pwd)
    1.  
    \
    1.   
    1. "$(id -u):$(
    cut -d: -f3 < <(getent group $(
    1. id -
    gn
    1. g)
    ))
    1. " | \
      tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

      где

    вместо
    1. в 6 строке нужно заменить /home/visio/

    visio3.0/visiology-certs в 5 строке укажите ваш каталог с сертификатами 3.0
  • Перейдите в раздел Запуск платформы

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

  • Скопировать дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.

  • На сервере перейти в скопированную папку с дистрибутивом.

  • Сделать исполняемыми скрипты load_images.sh,
    1. 2.31+3.2 на ваш путь к каталогу со скриптами запуска предыдущего релиза.

    2. Запустите скрипт load_from_release_dockerhub.sh

    , run.sh, выполнив команду
    1. для загрузки образов нового релиза:

      Блок кода
      languagebash
    sudo chmod +x *.sh

    Загрузить образ обновления в память.

    Блок кода
    languagebash
    docker load < update.tar.gz

    Перейти в папку с дистрибутивами и запустить обновление. Скрипты запуска появятся в текущей директории.

    Блок кода
    languagebash
    docker run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v
    1. /var/lib/visiology
    :
    1. /
    mnt/visiology \ -v /home/visio/visio3.0/visiology-certs:/mnt/certs \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \ -l local $(pwd) \ $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \ tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
    • где вместо /home/visio/visio3.0/visiology-certs в 5 строке укажите ваш каталог с сертификатами 3.0

    6. Перейдите в раздел Запуск платформы

    Раскрыть
    titleОбновление версий 2.29 и 3.0 одновременно
    Примечание
    • Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.

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

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

    Войдите в Yandex Container Registry
    1. scripts/load_from_release_dockerhub.sh --version <VERSION>

      где VERSION может принимать значения v3 - для загрузки образов 3.3, или all - для загрузки образов 2.32 и 3.3.

    2. Перейдите в раздел Запуск платформы .

    3. Опционально выполните удаление образов от старой версии:

      Блок кода
      languagebash
      docker 
    login
    1. rmi 
    \
    1. $(docker images 
    --username oauth \ --password <token> \ cr.yandex

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

    Установите образ обновления:

    Блок кода
    languagebash
    docker pull
    1. --filter=reference='cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/
    update:2.30_3.1
  • Создать новую папку и перейти в неё. Скрипты запуска появятся в ней.

  • Запустить обновление.

    Блок кода
    languagebash
    docker run -it \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /docker-volume:/docker-volume \
        -v /var/lib/visiology:/mnt/visiology \
        -v /home/visio/visio3.0/visiology-certs:/mnt/certs \
        -v $(pwd):/mnt/volume \
        -v $HOME/.docker:/root/.docker \
        cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.30_3.1 \
        -l hub $(pwd) \
        $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \
    tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
    • где вместо /home/visio/visio3.0/visiology-certs в 5 строке укажите ваш каталог с сертификатами 3.0

  • 5. Перейдите в раздел Запуск платформы

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

  • Скопировать дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.

  • На сервере перейти в скопированную папку с дистрибутивом.

  • Загрузить образ обновления в память.

    1. *3.2' --format "{{ .Repository }}:{{ .Tag }}")

      Для удаления образов 2.31 и 2.31.1 выполните следующую команду:

      Блок кода
      languagebash
      docker 
    load < update.tar.gz

    Перейти в папку с дистрибутивами и запустить обновление. Скрипты запуска появятся в текущей директории.

    Блок кода
    languagebash
    docker run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v /var/lib/visiology:/mnt/visiology \ -v /home/visio/visio3.0/visiology-certs:/mnt/certs \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \
    1. rmi $(docker images --filter=reference='cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/
    update:
    1. *2.
    30_3.1 \ -l local $(pwd) \ $(id -u):$(cut -d: -f3 < <(getent group $(id -gn))) | \ tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
    • где вместо /home/visio/visio3.0/visiology-certs в 5 строке укажите ваш каталог с сертификатами 3.0

  • Перейдите в раздел Запуск платформы

  • (warning)
    1. 31*' --format "{{ .Repository }}:{{ .Tag }}")
    Примечание

    При возникновении неполадок, см. Возможные неполадки и пути их устранения в разделе Работа по HTTPS.

    Нужна дополнительная помощь?

    Свяжитесь с технической поддержкой.