[pve-devel] partially-applied: [PATCH storage/container v3 00/13] import/export for shared storages

Fabian Grünbichler f.gruenbichler at proxmox.com
Thu Dec 19 12:45:38 CET 2024


Folded in Filip's T-B from v2, and applied all but the last
pve-container patch - those checks are there to cancel the migration
early on if a storage that is not supported is contained in the mix..

ideally they should move to the storage layer, as the original comment
indicates.. basically a helper that checks export and import formats
(and snapshots/base status) and returns a bool?

On December 19, 2024 11:43 am, Fiona Ebner wrote:
> Chnages in v3:
> * add fix for path() calls in Plugin.pm
> * use rbd export/import instead of mapping+dd
> * list images for volume exists helper
> * fix commit message for patch adding Common module
> * add patch dropping outdated error message check
> 
> Changes in v2:
> * add fix for path() in iSCSI direct plugin
> * add export for iSCSI plugins
> * add RFC for improving RBD volume exists helper
> 
> For remote migration, export/import functionality is also useful for
> storages that are shared within a single cluster. While file-based
> network storages already can rely on the default file-based
> implementation in Plugin.pm, RBD and iSCSI plugins did not have the
> functionality yet.
> 
> 
> Regarding RBD:
> 
> For now, only 'raw+size' is supported and it's not possible to
> export/import with snapshots. The volume or snapshot is mapped using
> rbd and then the data is read via 'dd'.
> 
> Introducing an 'rbd' transport format might be feasible for more
> complete (i.e. with snapshots, incremental) transfer between two RBD
> storages.
> 
> 
> For iSCSI plugins, remote migration will still fail further up the
> stack though:
> 
>> can't migrate local disk 'iscsidirect:lun0': owned by other VM (owner = VM )
>> can't migrate local disk 'iscsi:0.0.0.scsi-360014055b29367fb79a46b0bdb179fae': owned by other VM (owner = VM )
> 
> pve-storage:
> 
> Fiona Ebner (10):
>   plugin: export/import: fix calls to path() method
>   rbd plugin: schema: document default value for 'krbd' setting
>   export: redirect stdout to avoid any unrelated messages ending up in
>     the export stream
>   rbd plugin: factor out helper to check if volume already exists
>   rbd plugin: implement volume import/export
>   rbd plugin: improve volume exists helper
>   iscsi plugin: support volume export
>   iscsi direct plugin: support volume export
>   plugins: volume import: align size up to 1KiB
>   rbd plugin: list: drop outdated error message check
> 
> Max Carrara (1):
>   common: introduce common module
> 
>  src/PVE/CLI/pvesm.pm                 |   5 +-
>  src/PVE/Storage/Common.pm            |  54 ++++++++++
>  src/PVE/Storage/Common/Makefile      |   6 ++
>  src/PVE/Storage/ISCSIDirectPlugin.pm |  63 ++++++++++++
>  src/PVE/Storage/ISCSIPlugin.pm       |  48 +++++++++
>  src/PVE/Storage/LVMPlugin.pm         |   4 +-
>  src/PVE/Storage/Makefile             |   2 +
>  src/PVE/Storage/Plugin.pm            |  12 ++-
>  src/PVE/Storage/RBDPlugin.pm         | 142 ++++++++++++++++++++++++---
>  9 files changed, 317 insertions(+), 19 deletions(-)
>  create mode 100644 src/PVE/Storage/Common.pm
>  create mode 100644 src/PVE/Storage/Common/Makefile
> 
> 
> pve-container:
> 
> Fiona Ebner (2):
>   migration: allow rbd storages for remote migration
>   migration: add reminder to evaluate dropping seemingly useless check
>     for PVE 9
> 
>  src/PVE/LXC/Migrate.pm | 3 +++
>  1 file changed, 3 insertions(+)
> 
> 
> Summary over all repositories:
>   10 files changed, 320 insertions(+), 19 deletions(-)
> 
> -- 
> Generated by git-murpp 0.5.0
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
> 
> 
> 




More information about the pve-devel mailing list