Резервное копирование и перенос данных на другой сервер

Резервное копирование и перенос данных на другой сервер

  • Данная инструкция предназначена исключительно для развертывания через Docker Swarm.

  • После запуска платформы настоятельно рекомендуется сохранить сгенерированные пароли в надёжном месте.
    Получить файл с паролями можно с помощью следующей команды:
    /var/lib/visiology/scripts/v3/utils/store_secrets.sh -f <file>

Копирование данных на исходном сервере, откуда нужно перенести резервную копию:

  1. Запустите скрипт backup.sh:

    /var/lib/visiology/scripts/v3/backup.sh

    Список доступных параметров, которые можно использовать с данной командой:

    • -h - показать справку;

    • -d - запустить в режиме debug;

    • --with-postgres <true|false> - копия базы данных, в которой хранятся дашборды, настройки наборов данных, рабочих областей, прав доступа и загрузчиков (значение по умолчанию - true);

    • --with-clickhouse <true|false> - копия базы данных, в которой хранятся загруженные данные (значение по умолчанию - true);

    • --with-sf <true|false> - копия базы данных, в которой хранятся данные из Smart Forms (значение по умолчанию - true);

    • --with-keycloak <true|false> - копия KeyCloak, в котором хранятся пользователи (значение по умолчанию - false);

    • --with-minio <true|false> - копия xlsx и csv файлов, загруженных в платформу (значение по умолчанию - true);

    • --with-dm-secret-key <true|false> - копия docker secret, который требуется для загрузки данных по jdbc. Без переноса этого secret потребуется пересохранить пароли всех jdbc-источников на целевом сервере после переноса (значение по умолчанию - true);

    • --with-ai-secret-key <true|false> - копия docker secret, который требуется для взаимодействия с remote ИИ сервером. Без переноса этого secret для работы функционала ИИ потребуется задать его вручную (значение по умолчанию - false);

    • --with-mail <true|false> - копия настроек почтового сервиса (значение по умолчанию - false);

    • --with-custom-settings <true|false> - копия настроек из папок /var/lib/visiology/scripts/v3/extended-services, /var/lib/visiology/scripts/v3/env-filescustom-configs (значение по умолчанию - true);

    • --with-onec <true|false> - копия базы данных, в которой хранятся данные для корректной работы сервиса Onec-connector (значение по умолчанию - false);

  2. После выполнения команды создастся резервная копия в каталоге /var/lib/visiology/scripts/v3 c названием <hostname>-backup-<версия платформы>-<текущая дата и время>.tar.gz

  3. Перенесите архив на целевой сервер в каталог /var/lib/visiology/scripts/v3

Восстановление данных на целевом сервере, куда нужно перенести резервную копию:

Если вы разворачиваете бэкап с сервера, где был запущен ИИ агент, то на целевом сервере тоже должен быть запущен ИИ агент.

  1. Убедитесь, что платформа на целевом сервере запущена и функционирует правильно

  2. Запустите скрипт restore.sh:

    /var/lib/visiology/scripts/v3/restore.sh

    Список доступных параметров, которые можно использовать с данной командой:

    • -h - показать справку;

    • -d - запустить в режиме debug;

    • --archive-name - после этого флага необходимо указать имя архива с бэкапом (обязательный параметр, необходимо либо расположить архив в каталоге /var/lib/visiology/scripts/v3, либо указывать абсолютный путь к файлу);

    • --with-postgres <true|false> - восстановление базы данных, в которой хранятся дашборды, настройки наборов данных, рабочих областей, прав доступа и загрузчиков (значение по умолчанию - true);

    • --with-clickhouse <true|false> - восстановление базы данных, в которой хранятся загруженные данные (значение по умолчанию - true);

    • --with-sf <true|false> - восстановление базы данных, в которой хранятся данные из Smart Forms (значение по умолчанию - false);

    • --with-keycloak <true|false> - восстановление KeyCloak, в котором хранятся пользователи (значение по умолчанию - false);

    • --with-minio <true|false> - восстановление xlsx и csv файлов, загруженных в платформу (значение по умолчанию - true);

    • --with-dm-secret-key <true|false> - восстановление docker secret, который требуется для загрузки данных по jdbc. Без восстановления этого secret потребуется пересохранить пароли всех jdbc-источников на целевом сервере после переноса (значение по умолчанию - true);

    • --with-ai-secret-key <true|false> - восстановление docker secret, который требуется для взаимодействия с remote ИИ сервером. Без переноса этого secret для работы функционала ИИ потребуется задать его вручную (значение по умолчанию - false);

    • --with-mail <true|false> - восстановление настроек почтового сервиса (значение по умолчанию - false). После восстановления настроек почтового сервиса необходимо перезапустить платформу: /var/lib/visiology/scripts/run.sh --restart

    • --with-custom-settings <true|false> - восстановление настроек для папок /var/lib/visiology/scripts/v3/extended-services, /var/lib/visiology/scripts/v3/env-filescustom-configs (значение по умолчанию - true);

    • --with-onec <true|false> - восстановление базы данных, в которой хранятся данные для корректной работы сервиса Onec-connector (значение по умолчанию - false);

    • пример команды:

      /var/lib/visiology/scripts/v3/restore.sh \ --archive-name visiology-backup-v3.16-2024-06-06-12-00-00.tar.gz \ --with-postgres true --with-clickhouse true --with-keycloak false

При использовании кластера ClickHouse перед восстановлением данных требуется предварительно удалить volumes каждого ClickHouse на каждой ноде, предварительно остановив платформу
docker volume rm visiology3_clickhouse_data

Время чтения: 1 мин.


Нужна дополнительная помощь?

Свяжитесь с технической поддержкой.

Изменение каталога для хранения бэкапа:

По умолчанию резервная копия данных хранится в каталоге /var/lib/visiology/scripts/v3

Для изменения каталога нужно выполнить следующие шаги:

  1. Остановить платформу командой:

    /var/lib/visiology/scripts/run.sh --stop
  2. Выполнить команду, заменив <dir> на нужный каталог (указать абсолютный путь вида /home/user/backup-v3):

    /var/lib/visiology/scripts/v3/prepare-config.sh --backup-dir <dir>
  3. Запустить платформу:

    /var/lib/visiology/scripts/run.sh