Перейти к содержанию

Перенос при установки AW на один сервер

Процесс переноса установки AW, при развороте на один сервер.

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

  1. Подготавливаем сервер, выполняем установку docker и docker compose (или docker-compose-plugin) согласно документации
  2. Создаем директории для AW mkdir -p /opt/aw/app
  3. Загружаем релизный архив в /opt/aw/app
  4. Распаковываем релизный архив:

    cd /opt/aw/app
    tar -xf ./<архив с релизом AW>
    
  5. Выполняем скрипт ./create_project_dirs.sh

  6. Для закрытого контура выполняем скрипт install.sh для распаковки образов сервисов AW
  7. При наличии доступа в сеть Интернет и к регистри AW выполняем авторизацию в Docker registry:

    docker login registry.analyticworkspace.ru/aw
    # и загрузку образов
    docker compose pull
    

Действия на сервере источнике:

  1. Подключаемся к исходному серверу по ssh
  2. Переходим в директорию установки AW (/opt/aw/app)
  3. Останавливаем AW: docker compose down -v
  4. Создать рез. копию установки AW
    • переходим в директорию /opt/aw/
    • полная копия tar -czf ./aw-$(date "+%Y-%m-%d").tar.gz ./app ./db ./file_storage
    • копия без clickhouse tar -cz --exclude db/clickhouse -f ./aw-$(date "+%Y-%m-%d").tar.gz ./app ./db ./file_storage
  5. Переносим созданный архив на новый сервер в /opt/aw: scp ./aw-2024-11-26.tar.gz <пользователь>@<IP-адрес нового сервера>:/opt/aw/

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

  1. Подключаемся к новому серверу по ssh и переходим в директорию /opt/aw
  2. Распаковываем: sudo tar -xzf ./aw-2024-11-26.tar.gz
  3. В случае необходимости вносим изменения в /opt/aw/app/.env
  4. Переходим в /opt/aw/app и запускаем AW: docker compose up -d

Перенос распределенной установки

Процесс переноса распределенной установки AW

  1. Подготавливаем новые сервера (устанавливаем docker и docker compose)
  2. создаем профиль awctl для нового кластера, переносим необходимые настройки из старого профиля (секции env)
  3. генерируем конфигурацию для нового кластера: /opt/awctl/awctl gen <имя нового профиля>
  4. создаем необходимые директории /opt/awctl/awctl md <имя нового профиля>
  5. Выполняем загрузку сгенерированной конфигурации на новый кластер /opt/awctl/awctl install --config-only <имя нового профиля>
  6. Выполняем загрузку образов на новый кластер /opt/awctl/awctl pull <имя нового профиля>
  7. Останавливаем старый кластер /opt/awctl/awctl stop <имя старого профиля>
  8. Архивируем данные на backend cd /opt/aw; sudo tar -czf aw.tar.gz ./db ./file_storage
  9. Переносим архив на новой backend: cd /opt/aw; scp aw.tar.gz <имя_пользователя>@<адрес нового backend>:~/
  10. Подключаемся на новый backend по ssh, переносим архив в /opt/aw и распаковываем: mv aw.tar.gz /opt/aw; cd /opt/aw; sudo tar -xf ./aw.tar.gz
  11. В случае необходимости аналогичным образом архивируем и переносим данные clickhouse на соответствующий сервер
  12. Запускаем новый кластер AW: /opt/awctl/awctl start <имя нового профиля>
  13. Обновляем лицензию