Навигатор по разделу:
1. Резервное копирование Avanpost DS
Резервная копия Avanpost DS требуется для восстановления в случае полной утраты данных на ВСЕХ контроллерах домена.
Для резервного копирования Avanpost DS используется утилита "/opt/avanpost/tools/cli/cli db-backup".
Утилита создаёт резервную копию базы данных. Запускается на контроллере домена при работающем Avanpost DS, не прерывая его работу.
ВНИМАНИЕ!
Необходимо обязательно сохранять версии дистрибутива. Резервная копия Avanpost DS привязана к конкретной версии продукта. Восстановление данных возможно только на ту же версию, с которой создавалась копия.
Флаги:
- --output — Путь и имя файла для архива бэкапа. Архив бэкапа будет создан по указанному пути с заданным именем.
--config — Путь и имя файла конфигурации, который будет включён в архив бэкапа. Этот файл будет скопирован и сохранён в составе бэкапа.
- --keytab — Путь и имя файла keytab, который будет включён в архив резервной копии. Этот файл будет скопирован и сохранён в составе бэкапа.
--cert — Путь и имя файла сертификата, который будет включён в архив бэкапа. Этот файл будет скопирован и сохранён в составе бэкапа.
--key — Путь и имя файла приватного ключа, который будет включён в архив бэкапа. Этот файл будет скопирован и сохранён в составе бэкапа.
sudo /opt/avanpost/tools/cli/cli db-backup \ --output "/opt/avanpost/ads/backup_$(date +%F)" \ --config "/opt/avanpost/ads/config/config.yaml" \ --keytab "/opt/avanpost/ads/config/.mkey.keytab" \ --cert "/opt/avanpost/ads/dc_cert" \ --key "/opt/avanpost/ads/dc_key" #Database Backup: starting... #Database Backup: successful $ ls -la /opt/avanpost/ads/backup -rw-r--r--. 1 ads ads 691682334 мар 20 17:09 backup_2025-03-20.tar
2. Восстановление Avanpost DS из резервной копии
Из резервной копии восстанавливается только первый КД. Остальные КД восстанавливаются путем добавления их в репликацию.
2.1. Полное восстановление Avanpost DS из резервной копии
Восстановление требуется в случае сбоя всех контроллеров в домене. Для восстановления Avanpost DS используется утилита "/opt/avanpost/tools/cli/cli db-load".
Утилита восстанавливает базу данных из резервной копии. Запускать утилиту необходимо только при выключенном Avanpost DS. При восстановлении удаляет информацию о контроллерах домена в репликации (replhosts).
Для восстановления Avanpost DS необходимо выполнить шаги:
Шаг 1. Выключить Avanpost DS на восстанавливаемом контроллере домена.
Для этого требуется выполнить команду:
sudo systemctl stop ads
Шаг 2. Восстановить контроллер из резервной копии.
Для этого требуется на выбранном КД выполнить команду:
sudo /opt/avanpost/tools/cli/cli db-load \ --backup "/opt/avanpost/ads/backup_2025-03-20.tar" \ --config-dest "/opt/avanpost/ads/config/config.yaml" \ --keytab-dest "/opt/avanpost/ads/config/.mkey.keytab" \ --cert-dest "/opt/avanpost/ads/dc_cert" \ --key-dest "/opt/avanpost/ads/dc_key" #Database LOAD: starting... #config is valid #badger 2025/04/16 10:24:43 INFO: All 0 tables opened in 0s #badger 2025/04/16 10:24:43 INFO: Discard stats nextEmptySlot: 0 #badger 2025/04/16 10:24:43 INFO: Set nextTxnTs to 0 #Database LOAD: successful, please, start DS again. sudo ls -la /opt/avanpost | grep "data" drwx------ 2 ads ads 691682334 апр 07 07:05 data drwx------ 2 ads ads 891482734 апр 07 07:05 data_old_2025-04-7-07-05-55
Флаги:
- --backup — Путь к архиву бэкапа. Указывает расположение файла бэкапа, который нужно восстановить.
- --config-dest — Путь, по которому будет восстановлен конфигурационный файл из архива бэкапа. Файл будет извлечён и сохранён по этому пути (включая название).
- --keytab-dest — Путь, по которому будет восстановлен файл keytab из архива бэкапа. Файл будет извлечён и сохранён по этому пути (включая название).
- --cert-dest — Путь, по которому будет восстановлен сертификат из архива бэкапа. Файл будет извлечён и сохранён по этому пути (включая название).
- --key-dest — Путь, по которому будет восстановлен приватный ключ из архива бэкапа. Файл будет извлечён и сохранён по этому пути (включая название).
Шаг 3. Установить права для пользователя "ads" на директорию "/opt/avanpost".
Для этого необходимо выполнить команду:
sudo chown -R ads:ads /opt/avanpost/ads
Шаг 4. Запустить Avanpost DS на восстановленном контроллер домена.
Для этого требуется выполнить команду:
sudo systemctl start ads
Данный контроллер станет основным.
Шаг 5. Ввести контроллер в домен.
Для этого необходимо выполнить команду по шаблону:
sudo /opt/avanpost/dscli/dscli joindc -domain [Домен2ур].[Домен1ур] -login [Логин]
Заменить [Домен1ур] на свой домен первого уровня, а [Домен2ур] — на свой домен второго уровня.
Заменить [Логин] на логин пользователя с правами администратора Avanpost DS.
Подробнее о создании пользователей в веб-интерфейсе администратора см. статью "6.2. Управление Пользователями".
sudo /opt/avanpost/dscli/dscli joindc -domain avanpost.local -login lipov
Шаг 6. Перезапустить сервис "ads".
Для этого необходимо выполнить команду:
sudo systemctl restart ads
Шаг 7. Добавить остальные контроллеры домена в репликацию.
Для этого необходимо выполнить команду на каждом неосновном КД, подставив свои значения в шаблон:
sudo /opt/avanpost/tools/cli/cli add-instance --host [IP2] --name [FQDN2] --endpoint [IP1]:48910 --user [ADMIN_USER] --password [ADMIN_PASSWORD] --resync true
Заменить [ADMIN_USER] и [ADMIN_PASSWORD] на реквизиты учетной записи пользователя с правами добавления контроллеров, по умолчанию это Administrator:Avanp0st
Заменить [IP2] на IP-адрес нового контроллера.
Заменить [IP1] на IP-адрес первичного(основного) контроллера.
Заменить [FQDN2] на FQDN нового контроллера.
sudo /opt/avanpost/tools/cli/cli add-instance --host 192.168.1.12 --name ds02.avanpost.local --endpoint 192.168.1.11:48910 --user Administrator --password Avanp0st --resync true
Шаг 8. Проверить репликацию.
Все вторичные КД должны синхронизироваться с основным КД, восстановленным из резервной копии. После завершения репликации инфраструктура будет восстановлена.
Подробнее о проверке репликации см. статью "7.2.2. Проверка репликации Avanpost DS".
2.2. Частичное восстановление Avanpost DS из резервной копии
Для частичного восстановления Avanpost DS используется утилита "/opt/avanpost/tools/cli/cli db-load-partial".
Утилита загружает выборочные записи из резервной копии БД по указанным UID. Запускать утилиту необходимо только при выключенном Avanpost DS. Восстанавливаются только те объекты, UIDs которых переданы явно.
Флаги:
- --backup — Путь к архиву бэкапа. Указывает расположение файла бэкапа, из которого нужно извлечь объекты.
- --uids — Список UIDs, которые нужно восстановить, указанные через пробел. Например: "uid1 uid2 uid3".
$ /opt/avanpost/tools/cli/cli db-load-partial \ --backup "/opt/avanpost/ads/backup_2025-08-10.tar" \ --uids "0182735e-32f8-4df3-820f-279cd2f8c183 bd448a8d-0a40-43a1-870f-b24a54e21176" Database LOAD PARTIAL: starting... config is valid Restored USN 296 296 Restored HWM for ds02.example.com 212 Restored UTD for ds02.example.com 155 2025/08/10 17:24:02 Processing UID: 0182735e-32f8-4df3-820f-279cd2f8c183 2025/08/10 17:24:02 current usn 296 attr 'surname' replacing 2025/08/10 17:24:02 new usn 297 2025/08/10 17:24:02 Processing UID: bd448a8d-0a40-43a1-870f-b24a54e21176 2025/08/10 17:24:02 current usn 297 attr 'surname' replacing 2025/08/10 17:24:02 new usn 298 Database LOAD PARTIAL: successful, please, start DS again.