с использованием ubuntu 20.04 в качестве узла kvm, инициализация гостевой системы с помощью cloud-init. это дает мне рабочего гостя с цепочкой изображений в результате. Чтобы упростить процесс резервного копирования и повторно использовать существующий сценарий, я хотел бы объединить цепочку изображений в один файл.
исходная конфигурация
virsh domblklist test
Target Source
-----------------------------
vda test-rootfs.qcow2
hdd -
объединить изображения
virsh blockcommit test vda --verbose --pivot --active
Block commit: [100 %]
Successfully pivoted
результат
virsh domblklist test
Target Source
------------------------------------------
vda /data/libvirt/disk-images/test
hdd -
Это ожидаемый результат. Каждый раз, когда я выключаю виртуальную машину и начинаю заново, конфигурация образа меняется на:
virsh domblklist test
Target Source
-----------------------------
vda test-rootfs.qcow2
hdd -
, и консолидированный образ больше не используется, вместо этого он снова использует исходную цепочку образов ... -> Мой вопрос: Почему?
BR и спасибо за подсказки
// edit:
Я отключил cloud-init в гостевой системе, затем процедуру shudtown / start.
Вот разница, сравниваемая после фиксации блока и после выключения / запуска домена (с использованием virsh dumpxml).
$ diff 0_blockcommit 1_shutdown_start
1c1
< <domain type='kvm' id='8'>
---
> <domain type='kvm' id='9'>
32c32
< <disk type='file' device='disk'>
---
> <disk type='volume' device='disk'>
34,35c34,39
< <source file='/data/libvirt/pools/disk-images/test.qcow2' index='3'/>
< <backingStore/>
---
> <source pool='disk-images' volume='test-rootfs.qcow2' index='2'/>
> <backingStore type='file' index='3'>
> <format type='qcow2'/>
> <source file='/data/libvirt/pools/disk-images/test.qcow2'/>
> <backingStore/>
> </backingStore>
42c46,47
< <source index='4'/>
---
> <source file='/data/libvirt/pools/disk-images/test.iso' index='1'/>
> <backingStore/>
89c94
< <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-8-test/org.qemu.guest_agent.0'/>
---
> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-9-test/org.qemu.guest_agent.0'/>