Резервное копирование и восстановление в контейнерах#
Руководство относится к платформе Astra Automation, развернутой в контейнерах. Для платформы, развернутой из deb-пакетов, используйте Резервное копирование и восстановление, а для платформы в кластере Kubernetes – Резервное копирование и восстановление в Kubernetes.
Обе операции выполняет утилита развертывания aa-setup с установочного узла по тем же соединениям SSH, которыми она развертывала платформу.
Состав узлов утилита берет из описания инвентаря, а не из резервной копии.
Резервную копию Automation Dashboard создают отдельно, так как этот компонент хранит данные в собственной базе данных (см. Резервное копирование и восстановление Automation Dashboard).
Структура архива резервной копии#
Резервная копия – единый файл astra-automation-backup-<date>.tar.gz, где <date> – дата и время создания копии в формате dd-mm-YYYY-HHMMSS.
Рядом с ним утилита развертывания создает символическую ссылку astra-automation-backup-latest.tar.gz на самую новую копию.
Внутри архива лежит каталог backups/ с отдельным архивом каждого компонента:
Цифра в названии – порядковый номер узла в его группе описания инвентаря, начиная с нуля.
При нескольких узлах одного компонента утилита развертывания создает архивы controller_0.tar.gz, controller_1.tar.gz и так далее.
Архив базы данных порядкового номера не имеет, так как база данных в платформе одна.
Архив каждого компонента содержит секреты Podman, дамп его базы данных и каталоги с данными и настройками:
Компонент |
Содержимое архива |
|---|---|
Automation Controller |
Секреты Podman, дамп базы данных, каталог проектов, настройки, конфигурация nginx, данные метрик и сертификаты |
Шлюз платформы |
Секреты Podman, дамп базы данных, данные шлюза и его обратного прокси, сертификаты |
Private Automation Hub |
Секреты Podman, дамп базы данных, данные компонента, том с контентом и сертификаты |
Контроллер Event-Driven Automation |
Секреты Podman, дамп базы данных, данные компонента и сертификаты |
PostgreSQL |
Секреты Podman, каталог данных и настроек сервера, сертификаты |
Redis |
Данные Redis и сертификаты |
Receptor |
Данные Receptor и сертификаты |
Дамп базы данных каждого компонента лежит внутри его архива. Отдельный архив Receptor утилита развертывания создает для каждого управляющего и исполняющего узла.
Создание резервной копии#
Для создания резервной копии выполните следующие действия:
На установочном узле перейдите в каталог с утилитой развертывания.
Запустите утилиту
aa-setupс аргументами--containerizedи-b:sudo ./aa-setup --containerized -b
По умолчанию утилита создает копию в каталоге
/var/backups/astra-automation/.Чтобы создать копию в другом каталоге, укажите его после аргумента
-b:sudo ./aa-setup --containerized -b /opt/backups/
Для запуска без запросов подтверждения, например из сценария, добавьте аргументы --plain и -y:
sudo ./aa-setup --containerized --plain -y -b /opt/backups/
Свободное место на установочном узле необходимо в объеме всей резервной копии. Основной вклад в ее размер дает Private Automation Hub, который хранит контент.
Восстановление из резервной копии#
Для восстановления платформы выполните следующие действия:
На установочном узле перейдите в каталог с утилитой развертывания.
Запустите утилиту
aa-setupс аргументами--containerizedи-r:sudo ./aa-setup --containerized -r
По умолчанию утилита восстанавливает копию из файла
/var/backups/astra-automation/astra-automation-backup-latest.tar.gz.Чтобы восстановить другую копию, укажите путь к ее архиву:
sudo ./aa-setup --containerized -r /opt/backups/astra-automation-backup-16-06-2026-155236.tar.gz
Утилита развертывания распаковывает единый архив рядом с ним, останавливает службы компонентов, восстанавливает данные и базы данных, пересоздает контейнеры и запускает службы заново. Промежуточные файлы распаковки она удаляет после восстановления.
Особенности контейнерной модели#
Резервное копирование и восстановление в контейнерах отличаются от развертывания из deb-пакетов следующим:
Дамп базы данных утилита развертывания создает не системной командой
pg_dump, а такой же командой внутри контейнера образа PostgreSQL. Поэтому клиент PostgreSQL на узлах платформы не требуется.Дамп утилита создает с аргументом
--disable-macs, поэтому мандатные метки Astra Linux Special Edition в дамп не попадают, и восстановление под непривилегированной учетной записью базы данных проходит без сообщений о нехватке привилегий.Контейнеры работают в режиме rootless под служебной учетной записью, поэтому обе операции утилита выполняет от ее имени, а не от имени
root.Топологию восстановления утилита берет из описания инвентаря. Номер в названии архива соответствует порядку узла в группе, поэтому копию восстанавливают в платформу того же состава. Архивы, созданные прежними версиями платформы по именам узлов, утилита тоже распознает.
Важно
Резервную копию платформы, развернутой из deb-пакетов, восстановить в контейнерную платформу нельзя, как и наоборот. Это разные по структуре артефакты: секреты, данные компонентов и дампы баз данных в них лежат по-разному. Переход между моделями развертывания выполняют миграцией, а не восстановлением из резервной копии.