Перенос при установки AW на один сервер¶
Процесс переноса установки AW, при развороте на один сервер.
Подготавливаем сервер приемник:
- Подготавливаем сервер, выполняем установку docker и docker compose (или docker-compose-plugin) согласно документации
- Создаем директории для AW
mkdir -p /opt/aw/app
- Загружаем релизный архив в /opt/aw/app
-
Распаковываем релизный архив:
-
Выполняем скрипт
./create_project_dirs.sh
- Для закрытого контура выполняем скрипт install.sh для распаковки образов сервисов AW
-
При наличии доступа в сеть Интернет и к регистри AW выполняем авторизацию в Docker registry:
Действия на сервере источнике:
- Подключаемся к исходному серверу по ssh
- Переходим в директорию установки AW (/opt/aw/app)
- Останавливаем AW: docker compose down -v
- Создать рез. копию установки 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
- Переносим созданный архив на новый сервер в /opt/aw:
scp ./aw-2024-11-26.tar.gz <пользователь>@<IP-адрес нового сервера>:/opt/aw/
Продолжаем на сервере приемнике:
- Подключаемся к новому серверу по ssh и переходим в директорию /opt/aw
- Распаковываем:
sudo tar -xzf ./aw-2024-11-26.tar.gz
- В случае необходимости вносим изменения в /opt/aw/app/.env
- Переходим в /opt/aw/app и запускаем AW:
docker compose up -d
Перенос распределенной установки¶
Процесс переноса распределенной установки AW
- Подготавливаем новые сервера (устанавливаем docker и docker compose)
- создаем профиль awctl для нового кластера, переносим необходимые настройки из старого профиля (секции env)
- генерируем конфигурацию для нового кластера:
/opt/awctl/awctl gen <имя нового профиля>
- создаем необходимые директории
/opt/awctl/awctl md <имя нового профиля>
- Выполняем загрузку сгенерированной конфигурации на новый кластер
/opt/awctl/awctl install --config-only <имя нового профиля>
- Выполняем загрузку образов на новый кластер
/opt/awctl/awctl pull <имя нового профиля>
- Останавливаем старый кластер
/opt/awctl/awctl stop <имя старого профиля>
- Архивируем данные на backend
cd /opt/aw; sudo tar -czf aw.tar.gz ./db ./file_storage
- Переносим архив на новой backend: cd /opt/aw; scp aw.tar.gz <имя_пользователя>@<адрес нового backend>:~/
- Подключаемся на новый backend по ssh, переносим архив в /opt/aw и распаковываем:
mv aw.tar.gz /opt/aw; cd /opt/aw; sudo tar -xf ./aw.tar.gz
- В случае необходимости аналогичным образом архивируем и переносим данные clickhouse на соответствующий сервер
- Запускаем новый кластер AW:
/opt/awctl/awctl start <имя нового профиля>
- Обновляем лицензию