Централизованное восстановление резервных копий

Система резервного копирования RuBackup предусматривает возможность восстановления резервных копий как со стороны клиента системы, так и со стороны администратора СРК. В тех случаях, когда централизованное восстановление резервных копий нежелательно, например, когда восстановление данных является зоной ответственности владельца клиентской системы, эта функциональность может быть отключена на клиенте (см. «Руководство системного администратора RuBackup»). В тех случаях, когда централизованное восстановление на клиенте доступно, его можно инициировать, перейдя во вкладку «Репозиторий» на верхней панели RBM. Для этого найдите в списке требуемую резервную копию, нажмите на нее правой кнопкой мыши и выберите в контекстном меню «Восстановить» (рисунок 1):

Pictures/10000000000004FA000002BA47ED202E9C1E0E56

В окне централизованного восстановления можно увидеть основные параметры резервной копии, выбрать узел клиента, на который будет восстановлена резервная копия, задать путь назначения для восстановления резервной копии.

В том случае, если необходимо восстановить резервную копию в локальный каталог на фронтальной машине без развертывания шаблона или ВМ, снимите отметку «Развернуть, если применимо» (рисунок 2).

Pictures/10000001000002C600000110BF5C16D560991689

Узнать статус узлов кластера можно с помощью команды onezone show 0:

Pictures/10000001000002D70000018491F5B1966AD9EF60

В данном примере лидером является узел astra-front3.brest.local и именно на этом узле необходимо выполнять команды для восстановления.

При восстановлении резервной копии c помощью RBM необходимо выбрать нужную резервную копию, кликнуть по ней правой кнопкой мыши и выбрать «Восстановить» из выпадающего списка (рисунок 3).

Pictures/100000010000070A000003ACAC538CE6103C5903

Затем необходимо выбрать нужные параметры в блоке «Место восстановления» (рисунок 4).

Pictures/1000000000000697000003987752AE06CE356557
Для восстановления резервной копии необходимо добавить клиентов РК, установленных на узлах кластера Брест, в общую разделяемую группу (рисунок 5).
Pictures/10000001000004AD000002BE65DE9F7409127F5E

Если клиент РК не находится в общей разделяемой группе и не является лидером кластера, то при попытке восстановления будет выведено предупреждение (рисунок 6).

Pictures/10000001000001FE000000D1CC218625FD875A34

Восстановление резервной копии с развёртыванием должно выполняться только на тот узел, который является лидером в данный момент.

Перед запуском задачи на восстановление резервной копии, СРК выполняет проверку роли выбранного оператором клиента. Если выбранный оператором узел не является лидером и активирован параметр «Восстановить на целевом ресурсе», СРК проверяет остальных клиентов разделяемой группы и предлагает автоматически заменить выбранный узел на лидера(рисунок 7).

Pictures/10000001000001FD0000010611C4CCDD6D3DC416

Если пользователь соглашается заменить целевой ресурс на лидера, то будет запущена задача на восстановление. В случае, если пользователь отказывается, будет выведена ошибка (рисунок 8).

Pictures/10000001000001FD000000C2D2831C92D24A261E

Для настройки параметров восстановления, которые относятся к модулям резервного копирования и восстановления Brest VM и Brest template нажмите на иконку «…​» рядом с полем «Параметры восстановления для модуля:» (Таблица 1, Таблица 2).

Таблица 1. Параметры восстановления резервных копий шаблона
Параметр Описание Значение по умолчанию Допустимые значения

new_name

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

set_images_persistent

Установить для всех образов шаблона параметр PERSISTENT=yes при восстановлении.

false

true, false

restore_only_config

Выполнить восстановление из резервной копии только конфигурации шаблона, без ассоциированных с ним образов.

false

true, false

dd_block_size

Размер блока в Мб для операций DD.

5

>=1

Таблица 2. Параметры восстановления виртуальной машины из резервной копии
Параметр Описание Значение по умолчанию Допустимые значения

restore_only_config

Выполнить восстановление из резервной копии только конфигурации ВМ, без восстановления ассоциированных с ней дисков.

false

true, false

keep_cdrom

Если на момент создания резервной копии к ВМ был подключен CDROM, то информация об этом CDROM сохраняется в резервной копии.

Если выполняется восстановление резервной копии, а опция keep_cdrom имеет значение false, то перед созданием ВМ информация о CDROM будет удалена из конфигурации ВМ, то есть в созданной в процессе восстановления виртуальной машине CDROM не будет подключен.

Если выполняется восстановление резервной копии, а опция keep_cdrom имеет значение true и при этом оригинальный образ, отвечающий за CDROM, на момент резервного копирования ВМ отсутствует внутри платформы ПК СВ «БРЕСТ», задача на восстановление из резервной копии завершится с ошибкой.

false

true, false

new_name

Имя, с которым ВМ будет создана при восстановлении из резервной копии. В том случае, если этот параметр пуст, ВМ будет создана с прежним именем.

Если ВМ с таким именем уже есть в системе, к имени будет добавлен постфикс.

dd_block_size

Размер блока в Мб для операций DD.

5

>=1

restore_on_current_node

При включенном переключателе ВМ будет создана на том же узле клиента, на который выполнена распаковка резервной копии.

Переключатель можно использовать только в том случае, если вычислительные узлы ПК СВ «Брест» расположены на фронтальных машинах ПК СВ «Брест». То есть фронтальная машина соответствует вычислительному узлу.

Задача на восстановление должна запускаться на узле ПК СВ «Брест», находящемся в состоянии leader.

false

true, false

Примечания

При установленном флаге restore_only_config происходит следующее:

  1. Модуль проверяет наличие образов дисков, которые присутствовали в конфигурации ВМ на момент резервного копирования.

  2. Если оригинальные образы отсутствуют, задача восстановления завершается с ошибкой.

  3. Если в конфигурации ВМ есть диски, созданные на основе «постоянного образа» и на момент восстановления они присутствуют внутри платформы, но не в состоянии ready, задача восстановления завершается с ошибкой.

  4. Если внутри платформы есть ВМ с оригинальным именем, генерируется новое имя (добавляется постфикс к имени). Информация о новом имени ВМ помещается в vm.xml — файл, который был сформирован при резервном копировании.

  5. Из результирующего vm.xml создается ВМ внутри платформы.

  6. Данные дисков ВМ (даже если они были сохранены при резервном копировании) не подменяются у вновь созданной при восстановлении ВМ — т.е. на выходе получается ВМ с такой же конфигурацией, как и на момент резервного копирования, которая базируется на оригинальных образах дисков.

Для восстановления резервной копии шаблона или ВМ с помощью утилиты командной строки rb_archives необходимо определить идентификатор резервной копии, которую необходимо восстановить, например, при помощи команды rb_archives:

root@srv:~# rb_archives
Id 1 | Ref ID | Resource | Resource type       | Backup type | Created                | Crypto  | Signed | Status
-----+--------+----------+---------------------+-------------+------------------------+---------+--------+-------------
53   |        | 9        | Brest template      | full        | 2020-04-14 15:17:57+03 | nocrypt | True   | Not Verified
111  |        | 117      | Brest template      | full        | 2020-04-28 13:54:09+03 | nocrypt | True   | Not Verified
117  |        | 131      | Brest VM            | full        | 2020-04-28 20:54:42+03 | nocrypt | True   | Not Verified
134  |        | 31       | OpenNebula VM       | full        | 2020-04-29 14:16:01+03 | nocrypt | True   | Not Verified
135  |        | 19       | OpenNebula template | full        | 2020-04-29 14:18:29+03 | nocrypt | True   | Not Verified
136  |        | 1        | Brest VM            | full        | 2020-04-29 19:12:25+03 | nocrypt | True   | Not Verified
137  |        | 131      | Brest VM            | full        | 2020-04-30 09:46:47+03 | nocrypt | True   | Not Verified

В приведенном примере в системе резервного копирования присутствуют семь резервных копий. ВМ с идентификатором 131 может быть восстановлена из полной резервной копии с идентификатором 137. Для этого необходимо выполнить команду:

rb_archives -x 137

В случае успешно принятой задачи команда вернет «ок», а восстановление будет происходить в фоновом режиме.

root@srv:~# rb_archives -x 137
Password:
Restore archive chain: 137
[RBC] Request to restore next archive(s) ID from repository: 137 to: /root
ok

Проконтролировать процесс восстановления можно при помощи rb_tasks:

root@srv:~# rb_tasks
Id   | Task type | Resource | Backup type | Status | Created
-----+-----------+----------+-------------+--------+-----------------------
1116 | Restore   | 131      | full        | Done   | 2020-04-30 10:03:27+03

или при помощи RBC (рисунок 9):

Pictures/100000010000050F00000126A894C00650CE7D88

Проконтролировать процесс можно при помощи журнала:

root@srv:~# tail -f /opt/rubackup/log/RuBackup.log
Thu Apr 30 10:04:14 2020: Virtual machive with name: VM test disk snapshots-3 is exists.
Thu Apr 30 10:04:14 2020: Check new virtual machine name: VM test disk snapshots-4
Thu Apr 30 10:04:14 2020: Virtual machine will be restored with the name: VM test disk snapshots-4
Thu Apr 30 10:04:14 2020: Image: Ubuntu 18.04 10G is exist
Thu Apr 30 10:04:14 2020: Create new virtual machine from: /root/srv.brest.loc_TaskID_1114_RuleID_39_D2020_4_30H09_44_24_BackupType_l_ResourceType_17/vm.xml
Thu Apr 30 10:04:15 2020: Check VM creating...
Thu Apr 30 10:07:56 2020: VM created ID: 143
Thu Apr 30 10:07:56 2020: Restore VM data to: /var/lib/one/datastores/101/143
Thu Apr 30 10:07:56 2020: Required commit for: /root/srv.brest.loc_TaskID_1114_RuleID_39_D2020_4_30H09_44_24_BackupType_l_ResourceType_17/hda.2
Thu Apr 30 10:08:07 2020: Task was done. ID: 1116

В модулях RuBackup также предусмотрено ведение отдельного журнала, в котором фиксируется подробная информация о выполнении задачи на создание резервной копии или восстановление из резервной копии. Ниже перечислены пути к соответствующим файлам журналов:

  • /opt/rubackup/log/rb_module_brest_template.log

  • /opt/rubackup/log/rb_module_brest_vm.log

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

После выполнения восстановления в ПК СВ «БРЕСТ» появилась новая ВМ (ID 143), полностью идентичная той, которая была в системе в момент резервного копирования (рисунок 10):

Pictures/1000000100000515000001D28D0EC696E2758B6D