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

  1. На основном сервере платформы:

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

      Если предполагается обновление платформы, используя Docker Hub, копировать папку images дистрибутива не требуется.

    2. На сервере перейти в скопированную папку с дистрибутивом
    3. Сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, update.sh, выполнив команду:

      sudo chmod +x *.sh
    4. Выполнить команду

      docker swarm init
  2. На сервере с установленным ViQube:
    1. На основном сервере выполнить команду:

      docker swarm init
    2. Сохранить вывод вида  "docker swarm join --token ..." от передыдущей команды
    3. На сервере с установленным ViQube выполнить команду из предыдущего пункта
  3. На основном сервере платформы:
    1. Перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:

      sudo ./update.sh -m platform -l <mode>
      • -m platform

      здесь параметр -m platform означает, что на данном сервере установлены компоненты платформы кроме ViQube

      • -l <mode>

      здесь <mode> - режим получения новых образов. Возможные значения: local, hub.

      hub - получение образов из Docker Hub. Если выбран данный режим, необходимо предварительно авторизоваться в Docker Hub, используя следующую команду:

      sudo docker login

      local - получение образов локально, из папки images дистрибутива платформы.

  4. На сервере с установленным ViQube:

    1. содержимое дистрибутива из поставки скопировать на сервер - из папки images необходимо скопировать только файл viqube.tar - сохраняя структуру вложенных элементов.

      Если предполагается обновление платформы, используя Docker Hub, копировать папку images дистрибутива не требуется.

    2. на сервере перейти в скопированную папку с дистрибутивом
    3. сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, update.sh, выполнив команду:

      sudo chmod +x *.sh
    4. на сервере перейти в скопированную папку с дистрибутивом и запустить скрипт update.sh с правами суперпользователя:

      sudo ./update.sh -m viqube -l <mode> 
      • -m viqube

      здесь параметр -m viqube означает, что на данном сервере установлен только ViQube

      • -l <mode>

      здесь <mode> - режим получения новых образов. Возможные значения: local, hub.

      hub - получение образов из Docker Hub. Если выбран данный режим, необходимо предварительно авторизоваться в Docker Hub, используя следующую команду:

      sudo docker login

      local - получение образов локально, из папки images дистрибутива платформы.

  5. Выполнить настройку нод:
     На основном сервере
    1. Выполнить

      docker node ls
    2. В выводе должно быть две ноды. В строчке со звёздочкой указан айдишник "мастер" ноды, в другой "воркер" ноды.
    3. Выполнить

      docker node update --label-add platform=true <master_node_id>
      docker node update --label-add nginx=true <master_node_id>

      <master_node_id> - айдишник "мастер" ноды

    4. Выполнить

      docker node update --label-add viqube-master=true <worker_node_id>

      <worker_node_id> - айдишник "воркер" ноды

    5. Проверить правильность можно командой:

      docker inspect -f "{{.ID}} {{.Status.Addr}} {{.Spec.Labels}}" $(docker node ls -q)

  6. Создать необходимые папки на сервере ViQube:

    sudo mkdir -p /docker-volume/viqube/config && \
    sudo mkdir -p /docker-volume/viqube/apiLog && \
    sudo mkdir -p /docker-volume/viqube/crashdumps && \
    sudo mkdir -p /docker-volume/viqube/drivers && \
    sudo mkdir -p /docker-volume/viqube/log && \
    sudo mkdir -p /docker-volume/viqube/snapshots && \
    sudo mkdir -p /docker-volume/viqube/storage
  7. Выполнить запуск платформы. Подробнее Запуск платформы

    В параметры запуска run.sh необходимо выставить ключ --cluster-mode yes