Восстановление системы из резервной копии

Резервная копия системы хранится на отдельном компьютере в виде папки с набором файлов, полученных в результате выполнения скриптов make_standalone_backup.sh, make_cluster_backup.sh:

Восстановление системы из резервной копии отличается в зависимости от конфигурации продукта:

Для восстановления системы из резервной копии при использовании одиночной конфигурации продукта:

  1. Убедитесь, что версии docker client, docker server и docker compose соответствуют поддерживаемым:

    • для получения используемой версии docker client и docker server выполните команду:

% docker version

    • для получения используемой версии docker compose выполните команду:

% docker compose version

Если версии docker client, docker server и docker compose не соответствуют поддерживаемым, то обновите их.

  1. Скопируйте скрипты, которые содержатся в архиве standalone_compose_files_v26.06.<порядковый номер версии>.zip, и разместите их в папке установки мобильной платформы на уровне файла docker-compose.standalone.yml:

    • restore_standalone_backup.sh;

    • elasticsearch_backup.py;

    • restore_elastic_backup_standalone.sh.

Скрипты elasticsearch_backup.py, restore_elastic_backup_standalone.sh являются вспомогательными и запускаются автоматически: elasticsearch_backup.py запускается в процессе выполнения скрипта restore_standalone_backup.sh, а restore_elastic_backup_standalone.sh - в процессе выполнения скрипта elasticsearch_backup.py.

  1. Замените конфигурационный файл .env на его резервную копию.

  2. Выполните одно из действий:

    • запустите контейнеры Docker, если они были остановлены, и дождитесь окончания процесса запуска сервисов мобильной платформы:

% docker compose -f docker-compose.standalone.yml up -d

  1. Разместите папку standalone_backup_<дата и время создания резервной копии> на уровне скрипта restore_standalone_backup.sh.

  2. Запретите доступ пользователям к серверу мобильной платформы на время восстановления данных.

  3. Запустите скрипт restore_standalone_backup.sh в директории его расположения:

./restore_standalone_backup.sh

Если на уровне скрипта содержится несколько папок standalone_backup_<дата и время создания резервной копии> с сохранёнными резервными копиями, то укажите наименование необходимой папки после скрипта:

./restore_standalone_backup.sh standalone_backup_<дата и время создания резервной копии>

  1. Проверьте работу системы и объём восстановленных данных:

    1. Проверьте объём данных кеша. Если объём данных неполный, то удалите кеш и добавьте его заново в подразделе «Управление кэшем».

    2. Аннулируйте срок действия JWT для пользователей API и администраторов. Для этого измените значения параметров «Срок действия JWT токена для пользователей API», «Срок действия JWT токена для администраторов», «Срок действия refresh JWT для пользователей API и администраторов» в подразделе «Безопасность».

    3. Заново добавьте учётные записи пользователей API, если они были добавлены после создания резервной копии.

  1. Разрешите доступ пользователям к серверу мобильной платформы.

После выполнения действий будет восстановлена система из резервной копии: базы данных PostgreSQL, локальное файловое хранилище MinIO, система логирования Elasticsearch, конфигурационный файл .env.

Для восстановления системы из резервной копии при использовании кластерной конфигурации продукта:

  1. Скопируйте скрипт restore_cluster_backup.sh, который содержится в архиве cluster_charts_v26.06.<порядковый номер версии>.zip, и разместите его в папке установки мобильной платформы на одном из главных узлов кластера.

  2. Разместите папку cluster_backup_<дата и время создания резервной копии> на уровне скрипта restore_cluster_backup.sh.

  3. Запретите доступ пользователям к серверу мобильной платформы на время восстановления данных.

  4. Запустите скрипт restore_cluster_backup.sh в директории его расположения:

./restore_cluster_backup.sh

Если на уровне скрипта содержится несколько папок cluster_backup_<дата и время создания резервной копии> с сохранёнными резервными копиями, то укажите наименование необходимой папки после скрипта:

./restore_cluster_backup.sh cluster_backup_<дата и время создания резервной копии>

  1. Проверьте работу системы и объём восстановленных данных:

    1. Проверьте объём данных кеша. Если объём данных неполный, то удалите кеш и добавьте его заново в подразделе «Управление кэшем».

    2. Аннулируйте срок действия JWT для пользователей API и администраторов. Для этого измените значения параметров «Срок действия JWT токена для пользователей API», «Срок действия JWT токена для администраторов», «Срок действия refresh JWT для пользователей API и администраторов» в подразделе «Безопасность».

    3. Заново добавьте учётные записи пользователей API, если они были добавлены после создания резервной копии.

  1. Разрешите доступ пользователям к серверу мобильной платформы.

После выполнения действий будет восстановлена система из резервной копии: базы данных PostgreSQL, локальное файловое хранилище MinIO.

Примечание. Восстановление логов Elasticsearch из резервной копии выполняется отдельно от общей системы.

См. также:

Резервное копирование и восстановление системы | Создание резервной копии системы