Восстановление из резервной копии
Общие сведения
Восстановление из резервной копии выполняется под ОС GNU/Linux с базовым набором утилит. Рекомендовано использовать установочный дистрибутив SpaceVM в режиме Live Mode.
Подробная информация о возможностях работы с резервной копией ОС содержится в разделе Работа с резервной копией ОС.
Процесс полного восстановления из резервной копии ОС SpaceVM
Для полного восстановления из резервной копии ОС SpaceVM необходимо выполнить действия, описанные далее.
1. Загрузиться в режиме Live Mode с диска ОС SpaceVM
2. Примонтировать ФС с резервной копией
Примонтировать файловое хранилище, на котором находятся резервные копии.
Пример команды монтирования сетевого хранилища NFS
sudo mount -t nfs 192.168.8.8:/storages/datapool_of_backups_of_nodes /mnt
где:
-
192.168.8.8
— IP-адрес NFS-хранилища. -
/storages/datapool_of_backups_of_nodes
— путь до директории_LIBRARY
, в которой находится резервная копия ОС SpaceVM. -
/mnt
- директория монтирования содержимого резервной копии.
Внимание
Не рекомендуется использовать в качестве источника резервных копий диск от узла с установленным SpaceVM, т.е. если резервное копирование делалось на локальный пул данных, и этот диск предпологается напрямую подключить к серверу, на котором будет производиться восстановление. Это может привести к конфликту имен LVM-томов или групп томов, даже если восстановление будет проводиться не на этом диске.
3. Подготовить диск
Подготовить диск, на который будет производиться восстановление, удалив с него LVM-тома, группы томов и физические LVM-тома.
Примеры команд
-
Деактивировать все тома:
sudo vgchange -an
-
Удалить группы томов со всеми томами:
sudo vgremove -y `sudo vgs --noheadings -o vg_name`
-
Удалить физические тома:
sudo pvremove `sudo pvs --noheadings -o pv_name`
Внимание
Необходимо соблюдать аккуратность при использовании приведенных команд. Их можно использовать, если нет других дисков с LVM. В противном случае возможно удаление сторонних данных.
4. Начать восстановление
Запустить восстановление ОС SpaceVM из резервной копии. Так как файл резервной копии является posix-shell-скриптом, то запуск восстановления из резервной копии выполняется следующей командой:
sudo sh /mnt/_LIBRARY/192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run -v restore /dev/sda
где:
-
/mnt/_LIBRARY/192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run
— путь к файлу. -
/dev/sda
— целевой диск для восстановления.
Восстановление (опция restore
) считается успешным,
если последняя строка вывода имела вид:
Restore to /dev/sda successful.
После этого необходимо перезагрузить сервер, загрузив его с восстановленного диска.
Внимание
Если требуется сохранить вывод команды в файл, необходимо запустить восстановление из резервной копии следующим образом:
echo 'y' | sudo sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run -v restore /dev/sda 2>&1 | sudo tee restore.log
Пример этой и других команд можно посмотреть с помощью опции help
:
sh 192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run help
5. Перезагрузка после восстановления
Отмонтировать файловое хранилище с помощью команды ниже и перезагрузить сервер.
sudo umount /mnt
При успешном восстановлении должна произойти загрузка ОС SpaceVM, которая была восстановлена из резервной копии.
После загрузки ОС SpaceVM, восстановленной из резервной копии, задача резервного копирования ОС узла будет еще несколько минут находиться в статусе IN_PROGRESS. Это происходит, потому что в саму резервную копию статус завершения задачи попасть не мог. Но после того как все службы начнут работать, задача завершится, и блокировки с узла снимутся. Статус файла резервной копии также изменится на активный через несколько минут.
Процесс восстановления отдельных файлов или директорий из резервной копии ОС SpaceVM
Для восстановления отдельных файлов или директорий из резервной копии ОС SpaceVM необходимо выполнить действия, описанные далее.
1. Перейти в shell
Перейти в shell сервера, на котором требуется восстановить отдельные файлы или директории из резервной копии. В случае невозможности перейти в shell необходимо загрузиться в режиме Live Mode с диска ОС SpaceVM.
2. Примонтировать ФС с резервной копией
Примонтировать файловое хранилище, на котором находятся резервные копии, если оно еще не примонтировано.
Пример команды монтирования сетевого хранилища NFS
sudo mount -t nfs 192.168.8.8:/storages/datapool_of_backups_of_nodes /mnt
где:
-
192.168.8.8
- IP-адрес NFS-хранилища. -
/storages/datapool_of_backups_of_nodes
- путь до директории_LIBRARY
, в которой находится резервная копия ОС SpaceVM. -
/mnt
- директория монтирования содержимого резервной копии.
3. Извлечь файлы и директории
Извлечь целевые файлы или директории из резервной копии, выполнив следующую команду:
sudo sh /mnt/_LIBRARY/192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run tar -xC extract-backup/ 'etc/passwd'
где:
-
/mnt/_LIBRARY/192.168.122.41__8fee191e-b2b7-4bf3-be64-05b244f5a2dc.run
— путь до файла резервной копии. -
extract-backup/
— путь до директории, в которую будет извлечен файл или директория. -
'etc/passwd'
— путь к целевому файлу или директории.
Если работа происходила через Live Mode, то необходимо скопировать извлеченные файлы на целевой сервер.
4. Отмонтирование ФС, если это необходимо
Отмонтировать файловое хранилище с помощью команды ниже и перезагрузить сервер.
sudo umount /mnt