[pve-devel] [pve-dev] Storage assisted copy feature for Proxmox storage plugin
Fabian Grünbichler
f.gruenbichler at proxmox.com
Fri Oct 3 08:42:25 CEST 2025
On October 3, 2025 2:15 am, Andrei Perapiolkin via pve-devel wrote:
> Hi,
>
> Can the honorable community help me find an elegant way for
> volume_import to identify the source volume origin type and name?
>
> I'm investigating this to implement storage-assisted copy (i.e.,
> performing the volume copy entirely on the storage side).
>
> My initial assumption was that this could be achieved by defining custom
> volume_export and volume_import functions.
> However, may be there is a better way to do storage assisted copy.
volume_export and volume_import are only used for a few specific cases
(mainly offline migration of local disks, and offline remote migration
of disks).
for those you could define your own transport format that includes or
just contains the relevant metadata to do a storage side copy - it would
only be selected if the storage for the source and target volume both
say they support that particular format.
I assume your storage is shared, so you'd be more interested in the
move disk/full clone case, which currently uses either a mirror block
job (if the VM is running), qemu-img convert (if the VM is not running)
or rsync (for container volumes). These mechanisms are all not
extensible at the moment for storage plugins.
Maybe you could describe for which tasks you would see a clear benefit
for extending the interface to allow a storage plugin to provide a "copy
volume A into volume B storage side" - for the live move disk it might
be hard (without dirty bitmap trickery like we use for replication, but
that might be an option?), for the offline moves it would probably be
possible to somehow special case this and let plugins opt in, we've
discussed this ourselves in the past..
> P.S.
> Just found out about
> https://pve.proxmox.com/wiki/Storage_Plugin_Development:_Writing_a_Storage=
> _Plugin_for_SSHFS
> This is grate!
> Many thanks for posting this article!
Great that it found its intended audience! :)
More information about the pve-devel
mailing list