Операции над ВМ, восстановленной без развертывания

При восстановлении резервной копии без развертывания она будет восстановлена в выбранный пользователем каталог. При использовании утилиты rb_archives (см. опцию -X) она будет восстановлена в локальный каталог, либо же в тот, который был задан опцией -d.

В выбранном пользователем пути будем создан каталог с именем восстанавливаемой виртуальной машины со следующем содержимым:

  1. конфигурационный файл виртуальной машины в формате xml;

  2. файлы дисков виртуальной машины.

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

Для примера рассмотрим восстановленную виртуальную машину KVM с именем small. Файлы резервной копии ВМ были восстановлены в каталог /kvm/small.

XML-файл конфигурации ВМ small.xml содержит следующее описание базовой конфигурации виртуальной машины:

<domain type='kvm'>
<name>small</name>
<uuid>3b42f58f-9fe5-4012-b7d0-2f29a208526e</uuid>
<memory unit='KiB'>2097152</memory>
<currentMemory unit='KiB'>2097152</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_62' machine='pc-i440fx-bionic'>hvm</type>
</os>

Внесите следующие изменения в XML-файл конфигурации:

  1. Удалите строку с UUID.

  2. Измените имя домена между тегами <name> и </name>. Например, на <name>small-restored</name>.

Следуйте действиям ниже в зависимости от формата файлов дисков восстановленной ВМ.

1. Файлы дисков виртуальной машины в формате qcow2

Для примера рассмотрим XML-файл конфигурации ВМ, содержащий следующее описание диска в формате qcow2:

<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/small.qcow2'/>
<target dev='vda' bus='virtio'/>
<boot order='1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07'
function='0x0'/>
</disk>
  • Изменить пути доступа к файлам виртуальной машины в xml файле конфигурации:

<source file='/var/lib/libvirt/images/small.qcow2'/>

замените на этот путь:

<source file='/kvm/small/small.qcow2'/>
Image30

При этом необходимо, чтобы данный каталог был разрешён для хранения данных KVM.

  • Проверить запуск виртуальной машины:

virsh create small.xml
  • Для создания виртуальной машины используйте:

virsh define small.xml

2. Файлы дисков виртуальной машины в формате raw

В данном случае есть два пути (предположим, что файлы находятся в /kvm/small):

  • Восстановить файлы дисков виртуальной машины в подходящее raw устройство с помощью команды dd, например:

dd if=/kvm/small/sde1 of=/dev/sde1 bs=5M

Далее изменить пути доступа к raw устройствам в XML-файле конфигурации виртуальной машины.

  • Другой путь − это конвертировать восстановленные файлы raw устройств в qcow2 формат при помощи команды qemu-img convert, например:

qemu-img convert -f qcow2 -O raw /kvm/small/sde1 /kvm/small/image.qcow2

Далее изменить пути доступа к raw устройствам в XML-файле конфигурации виртуальной машины.

  • Запустить виртуальную машину:

virsh create small.xml

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

3. Файлы дисков виртуальной машины в raw формате находились в хранилище Ceph в rados block device

В данном случае необходимо внести изменения в xml файл:

  • Для возможности запуска виртуальной машины с локальным образом изменить секцию, заключенную в теги <disk> …​ </disk> следующим образом:

<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='path_to_restored_image'/>
<backingStore/>
  • Удалить секцию

<auth> ... </auth>
  • Удалить секцию

<source protocol='rbd' .... </source>
  • Запустить виртуальную машину для проверки:

virsh create small.xml

Для создания виртуальной машины используйте команду:

virsh define small.xml

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