Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Следующий »

Начиная с версии 1.36 установка в Deb больше не поддерживается. В случае наличия Deb версии SoftWLC необходимо произвести миграцию в Docker версию.

Более подробно про установку скриптом в Docker с помощью плейбуков Ansible можно посмотреть здесь:

v1.37_Пошаговая установка SoftWLC в Docker через Ansible скриптом-установщиком

Схема миграции

Установка в Ansible позволяет провести миграцию из Deb установки в Docker.

Миграция производится в несколько этапов:

1) Миграция параметров конфигурации (только для однохостовой установки)

2) Установка решения в Docker с использованием Ansible

3) Миграция базы данных

4) Смена виртуального ip адреса (только для многохостовой установки)

Миграция параметров конфигурации

Для проведения данной миграции на хосте с Deb версией SoftWLC необходим установленный Python версии не ниже 3.7

Также данная миграция возможна только при миграции: Однохостовое решение Deb → Однохостовое решение Docker-Ansible. При миграции многохостовго решения производится только перенос базы данных.

Шаги по переносу параметров конфигурации:

1) Иметь установку deb версии SoftWLC.

2) Скачать скрипт-установщик на хост с Deb версией SoftWLC и запустить его с флагом --migrate-from-debs:

sudo ./eltex-softwlc-helper-ansible-latest.sh --migrate-from-debs

При запросе ввода ip адреса указать ip адрес хоста с установленной Deb версией SoftWLC

После этого шага в директории с параметрами конфигурации Ansible - softwlc-ansible-1.37/inventory/my_softwlc/group_vars/ появятся новые файлы - eltex-*.yml, содержащие все перенесённые параметры.

3) При установке SoftWLC в Docker на тот же хост, где расположен SoftWLC в Deb - остановить все сервисы eltex-*.service, nginx, mysql:

sudo systemctl stop eltex-*.service
sudo systemctl stop nginx
sudo systemctl stop mysql
sudo systemctl disable eltex-*.service
sudo systemctl disable nginx
sudo systemctl disable mysql

Установка решения в Docker с использованием Ansible

Для установки необходимой версии можно воспользоваться соответствующую вашим требованиям версию:

Standalone version

v1.37_Пошаговая установка SoftWLC в Docker через Ansible скриптом-установщиком

Reservation 1+1 (Galera Cluster) version

v1.37_Настройка схемы резервирования SoftWLC 1+1 в Docker при помощи Ansible

Replication 1+1+3 Galera Database Nodes version

v1.37_Настройка схемы репликации SoftWLC 1+1+3 GaleraNodes в Docker при помощи Ansible

При запросе ввода ip адресов указать ip адреса хостов, используемых для установки Docker версии SoftWLC

Миграция базы данных

Миграцию баз данных можно произвести с помощью скрипта, либо вручную. Для больших эксплуатация (количество точек больше 1000) рекомендуется производить восстановление базы данных вручную.

Миграция базы данных вручную

Данный вариант является более предпочтительным в связи с возможностью отслеживания процесса архивирования и переноса дампа базы данных

Шаги по переносу базы данных:

1) Иметь установку deb версии SoftWLC.

2) Подключиться по SSH на хост, с установленной Deb версией

ssh <user_login>@<ip_address_deb>

3) Перейти в директорию /var/lib/mysql/

cd /var/lib/mysql/

4) Проверить установленный пакет

sudo apt update && sudo apt install zip

5) Создать архив с файлами выбранной директории. Для удобства дальнейшего переноса файлов разместите его в домашней директории пользователя.

zip -r /home/<user_login>/mysql_backup.zip *

6) Скопировать данный архив на хост, где будет разворачиваться решение в Docker, первая нода с базой данных:

softwlc_main для Standalone version

softwlc_reserv_1 для Reservation 1+1 (Galera Cluster) version

database_1 для Replication 1+1+3 Galera Database Nodes version

scp /home/<user_login>/mysql_backup.zip <user_login>@<ip_address_docker>:/home/<user_login>/

7) Запустить скрипт с флагом --stop для остановки сервисов (указать ip адреса хостов с Docker)

sudo ./eltex-softwlc-helper-ansible-latest.sh --stop

8) На хосте с Docker удалить существующие данные в volume MariaDB и перенести туда архив с БД с домашней директории 

cd /<path_to_softwlc_docker>/volumes/mysql/datadir
sudo rm *
sudo mv ~/mysql_backup.zip .

9) Проверить установленный пакет

# AstraLinux, Ubuntu
sudo apt update && sudo apt install unzip
# RedOS
sudo dnf update && sudo dnf install unzip

10) Разархивировать полученные данные с заменой старых данных

sudo unzip -o mysql_backup.zip

11) На хосте с Deb запустим скрипт с ключом --reconfigure для замены значений localhost, которые по умолчанию остались при переносе БД из Deb в Docker

sudo ./eltex-softwlc-helper-ansible-latest.sh --reconfigure

После данных шагов миграция баз данных на новую установку в Docker будет завершена

Миграция базы данных через Ansible

Шаги по переносу базы данных:

1) Иметь установку deb версии SoftWLC.

2) Создать архив базы данных на сервере с Deb установкой запустив скрипт с ключом --migrate-db-backup

sudo ./eltex-softwlc-helper-ansible-latest.sh --migrate-db-backup

При запросе ввода ip адреса указать ip адрес хоста с установленной Deb версией SoftWLC

Архив mysql_backup.zip будет создан в директории /tmp/mysql_backup.zip

3) Подключиться к серверу с Deb установкой, ip которой был указан при создании архива и скопировать архив на сервер с установленным Ansible, выполнив команду:

scp /tmp/mysql_backup.zip <user_login>@<ip_address_ansible>:/home/<user_login>/

4) На хосте с Ansible перенести перенести архив базы в директорию Ansible командой:

sudo mv /home/<user_login>/mysql_backup.zip /home/<user_login>/ansible/softwlc-ansible-1.37/roles/migration_restore_db/files/

4) Из директории со скриптом (/home/<user_login>/ansible) запустить его с ключом --migrate-db-restore:

sudo ./eltex-softwlc-helper-ansible-latest.sh --migrate-db-restore

При запросе ввода ip адресов указать ip адреса хостов, куда ранее было установлена Docker версия SoftWLC

После данных шагов миграция баз данных на новую установку в Docker будет завершена

Смена виртуального адреса

Смена данного параметра возможна только при использовании многохостового решения.

В случае необходимости поменять VIP адрес для многохостовых установок необходимо запустить скрипт с ключом --reconfigure:

sudo ./eltex-softwlc-helper-ansible-latest.sh --reconfigure

При запросе Virtual IP указать необходимый виртуальный ip адрес. Если остальные параметры не изменялись вручную, то их можно пропустить нажатием Enter.

После чего скрипт выполнит смену VIP адреса.

  • Нет меток