Резервное копирование и восстановление Automation Dashboard

Резервное копирование и восстановление Automation Dashboard#

Automation Dashboard хранит данные в собственной базе данных PostgreSQL, которая работает в отдельном контейнере на узле этого компонента. Поэтому резервную копию Automation Dashboard утилита развертывания aa-setup создает отдельно от копии платформы.

Руководство подходит для платформы, развернутой из deb-пакетов, и для платформы, развернутой в контейнерах. Для Automation Dashboard в кластере Kubernetes используют оператор Automation Dashboard.

Создание резервной копии#

Для создания резервной копии только Automation Dashboard выполните следующие действия:

  1. На установочном узле перейдите в каталог с утилитой развертывания.

  2. Запустите утилиту aa-setup с аргументами -b и --dashboard-only:

    sudo ./aa-setup -b /opt/backups/ --dashboard-only
    

Утилита создает архив astra-automation-dashboard-backup-latest.tar.gz в указанном каталоге установочного узла. Если каталог не указан, она использует каталог /var/backups/astra-automation/.

Аргумент --dashboard-only указывают без аргумента --containerized даже для платформы, развернутой в контейнерах, так как в сочетании с ним утилита развертывания прерывает запуск с ошибкой.

Если аргумент --dashboard-only не указан, а в описании инвентаря есть группа [automationdashboard], утилита создает копию Automation Dashboard вместе с копией платформы, отдельным архивом рядом с ней.

Примечание

Каталог для резервных копий должен быть доступен для записи на установочном узле. Если это не так, утилита развертывания прерывает работу с ошибкой и не подставляет вместо него каталог по умолчанию.

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

Для восстановления Automation Dashboard выполните следующие действия:

  1. На установочном узле перейдите в каталог с утилитой развертывания.

  2. Запустите утилиту aa-setup с аргументами -r и --dashboard-only, указав путь к архиву:

    sudo ./aa-setup -r /opt/backups/astra-automation-dashboard-backup-latest.tar.gz --dashboard-only
    

Утилита загружает архив на узел Automation Dashboard, восстанавливает базу данных, применяет отложенные миграции и перезапускает контейнеры компонента.

Контейнеры Automation Dashboard работают под управлением systemd в пользовательской области, поэтому утилита перезапускает их через systemd. Команда podman restart в обход systemd останавливает веб-интерфейс и не запускает его обратно.

Ключ шифрования базы данных при восстановлении на прежнем месте утилита не перезаписывает, поэтому токены подключенных кластеров остаются действительными.

Проверка после восстановления#

Проверку выполняют на узле Automation Dashboard от имени той учетной записи, которую утилита развертывания использует для доступа по SSH. Эту учетную запись задает параметр ansible_user описания инвентаря, и она владеет контейнерами компонента. Из-под root или другой учетной записи контейнеры в режиме rootless не видны.

podman ps --format "{{.Names}}\t{{.Status}}"
curl -sk -o /dev/null -w "%{http_code}\n" https://localhost:<dashboard_port>/

Здесь:

  • <dashboard_port> – порт HTTPS веб-интерфейса, заданный параметром dashboard_nginx_https_port. Значение по умолчанию – 8447. Если задано значение 443, порт в адресе не указывают (см. настройку порта HTTPS).

Ожидаемый результат: контейнеры веб-интерфейса и обработчика задач находятся в состоянии Up, а команда curl возвращает 200.