Содержание

Skip to end of metadata
Go to start of metadata

"Горячий" Backup

Для реализации возможности горячего резервирования ВМ ей необходимо добавить новое оборудование:

Нажимаем кнопку "Добавить оборудование" в левом нижнем углу окна.

Выбираем тип оборудования "Канал", тип "com.redhat.spice.0" необходимо заменить на "org.qemu.guest_agent.0", остальные параметры оставляем в значениях по умолчанию.

Делается это для того, чтобы хостовая ОС могла взаимодействовать с гостевой, например для того чтобы сделать горячий бекап ВМ.

Нажимаем "Готово" в правом нижнем углу окна для сохранения измененных значений редактированных параметров и добавления выбранного оборудования в конфигурацию ВМ.


И установить пакет qemu-guest-agent:

sudo apt install qemu-guest-agent

Создать каталог backup:

sudo mkdir /backups

Данный пример создания каталога в той же файловой системе не совсем корректен, потому что теряется смысл бекапа как такового. По этому данный пример приводится для обучающих целей.

Для нормального резервного копирования лучше, чтобы это была папка примонтированная с отдельного физического носителя в той же ОС, а еще лучше на удаленном сервере либо СХД.

Для того чтобы понять какие виртуальные машины у нас работают выполнить в терминале на хостовой ОС следующую команду:

virsh -c qemu:///system list 

Для того чтобы понять какие диски у нас подключены к выбранным виртуальным машинам выполнить в терминале на хостовой ОС следующую команду:

virsh c qemu:///system domblklist <hostnameVM> 

Это необходимо для того чтобы понимать сколько и каких дисков будет бекапиться


Выполнить в терминале в хостовой ОС следующую команду на выполнение снимка:

virsh -c qemu:///system snapshot-create-as --domain <hostname>-BackUP backup --disk-only --atomic --quiesce --no-metadata

где:

virsh -c qemu:///system - команда на подключение virsh-ом к локальной системе виртуализации

snapshot-create-as - аргумент говорящий о выполнении снимка

--domain - имя виртуальной машины в нашем случае это smolensk-nested

backup - расширение создаваемого файла-снимка.

--disk-only - захват состояния файла-образа диска

Значение остальных параметров можно увидеть введя команду:

virsh -c qemu:///system snapshot-create-as --help

После успешного выполнения команды на экран будет выведено сообщение:

Domain snapshot backup created

И будет создан файл снимка в той же папке где и лежит файл-образ диска ВМ, при желании этот параметр можно переопределить аргументом --diskspec

Убедиться в том что данный файл создан:

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

Как и при холодном резервном копировании его можно просто скопировать в другое место, например в каталог /backups 

sudo cp /mnt/FORlabs-BackUP.qcow2 /backups/FORlabs-BackUP.qcow2_$(date +%Y-%d-%m_%k-%M-%S)

Где

FORlabs-BackUP.qcow2_$(date +%Y-%d-%m_%k-%M-%S) - имя бекапа, которое будет содержать в себе дату создания вплоть до секунд.

После того как файл-образ забекаплен необходимо внести все изменения которые произошли во время работы ВМ с файлом снимка на основной файл-образа диска ВМ:

virsh -c qemu:///system blockcommit <hostname>-backup vda --active --verbose --pivot

По окончанию операции будет выдано оповещение:

"Block commit: [100 %]" и "Successfully pivoted".

Виртуальная машина вернется к работе с основным файлом-образом диска ВМ освободив при этом созданный файл снимка.

Файл снимка с расширением *.backup нам больше не нужен - его можно удалить.

На этом создание "горячего" бэкапа ВМ без её остановки завершено.

3. Проверка "Горячего" Backup-а

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

Для начала необходимо скопировать забекапленый файл образ в хранилище:

sudo cp /backups/FORlabs-BackUP.qcow2_$(date +%Y-%d-%m_%k-%M-%S) /mnt/restore.qcow2

При создании ВМ желательно чтобы привод был пуст. 

ВМ перейдет к варианту загрузки с HDD когда обнаружит что в приводе ничего нет.

Указать в качестве HDD скопированный файл образ бекапа.

Видим что наш созданный файл-образ HDD "TEMPLATE-<hostname>.qcow2". определен программой создания ВМ, виден по указанному пути и нажимаем "Вперед".


  • No labels