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

Fiona Ebner f.ebner at proxmox.com
Thu Dec 19 11:43:03 CET 2024


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




More information about the pve-devel mailing list