Добавление ещё одной ноды с ViQube


Эта страница предназначена для конфигурации, когда платформа уже настроена на работу хотя бы с одним сервером ViQube.

Подробнее можно посмотреть /wiki/spaces/insidedoc/pages/1345613 и Установка компонентов на разные серверы

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

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

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

    sudo chmod +x *.sh
  3. a. Для локальной установки:

    на сервере ViQube перейти в скопированную папку с дистрибутивом и запустить скрипт load_images.sh с правами суперпользователя:

    sudo ./load_images.sh -m viqube
    • -m viqube

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

    b. Для установки из Yandex Container Registry:

    На сервере ViQube перед запуском скрипта необходимо авторизоваться в Yandex Container Registry, используя следующую команду:

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

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

    на сервере ViQube перейти в скопированную папку с дистрибутивом и запустить скрипт load_from_release_dockerhub.sh с правами суперпользователя:

    Установка версии 2.19
    sudo ./load_from_release_dockerhub.sh -t 2.19 -m viqube
    Установка версии 2.19.1
    sudo ./load_from_release_dockerhub.sh -t 2.19.1 -m viqube
    • -m viqube

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

    • -t 2.19|2.19.1

    здесь -t 2.19|2.19.1 означает, что скрипту необходимо загрузить образы релиза версии 2.19 или 2.19.1

  4. Проверить количество нод. На основном сервере выполнить:

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

  5. Получить токен для подключения ноды. На основном сервере выполнить:

    docker swarm join-token worker

    Сохранить вывод вида "docker swarm join --token <TOKEN> <IP>"

  6. На сервере с ViQube выполнить сохранённую команду из предыдущего пункта
  7. На основном сервере проверить ноды

    docker node ls
    1. В выводе должны быть ноды. Запомнить идентификатор добавляемой ноды
  8. На основном сервере выполнить

    docker node update --label-add viqube-slave=true <viqube_slave_id>

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

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

  9. Создать необходимые папки на сервере 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
  10. Выполнить Синхронизация данных
  11. Выполнить Запуск платформы

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