qemu-server/PVE
Fiona Ebner 5d85728282 backup: implement fleecing option
Management for fleecing images is implemented here. If the fleecing
option is set, for each disk (except EFI disk and TPM state) a new
fleecing image is allocated on the configured fleecing storage (same
storage as original disk by default). The disk is attached to QEMU
with the 'size' parameter, because the block node in QEMU has to be
the exact same size and the newly allocated image might be bigger if
the storage has a coarser allocation or rounded up. After backup, the
disks are detached and removed from the storage.

If the storage supports qcow2, use that as the fleecing image format.
This allows saving some space even on storages that do not properly
support discard, like, for example, older versions of NFS.

Since there can be multiple volumes with the same volume name on
different storages, the fleecing image's name cannot be just based on
the original volume's name. The schema vm-ID-fleece-N(.FORMAT) with N
incrementing for each disk is used.

Partially inspired by the existing handling of the TPM state image
during backup.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2024-04-19 15:47:42 +02:00
..
API2 api: stop: reword overrule-shutdown parameter description 2024-04-18 23:08:30 +02:00
CLI qm: add VM import command 2024-03-14 13:35:11 +01:00
QemuServer fix #3784: config: Parameter for guest vIOMMU + test-cases 2024-04-11 16:40:17 +02:00
VZDump backup: implement fleecing option 2024-04-19 15:47:42 +02:00
Makefile buildsys: use $(MAKE) instead of make 2019-09-24 18:06:16 +02:00
QemuConfig.pm config: define machine schema as property-string 2024-04-11 10:18:27 +02:00
QemuMigrate.pm migration: secure and use source volume names for deactivation 2024-01-30 10:41:45 +01:00
QemuServer.pm clone disk: prevent 'uninitialized value' warning for unused check 2024-04-19 08:58:40 +02:00
QMPClient.pm QMP client: sort commands with 10 minutes timeout alphabetically 2024-03-08 14:37:29 +01:00