[pve-devel] [PATCH v2 storage 00/10] import/export for shared storages

Fiona Ebner f.ebner at proxmox.com
Tue Dec 17 16:48:04 CET 2024


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 )


Fiona Ebner (9):
  iscsi direct plugin: fix return value for path() method in non-array
    context
  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
  iscsi plugin: support volume export
  iscsi direct plugin: support volume export
  rbd plugin: volume exists helper: distinguish between different errors
  plugins: volume import: align size up to 1KiB

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 |  65 ++++++++++++-
 src/PVE/Storage/ISCSIPlugin.pm       |  48 +++++++++
 src/PVE/Storage/LVMPlugin.pm         |   4 +-
 src/PVE/Storage/Makefile             |   2 +
 src/PVE/Storage/Plugin.pm            |   4 +-
 src/PVE/Storage/RBDPlugin.pm         | 139 ++++++++++++++++++++++++++-
 9 files changed, 318 insertions(+), 9 deletions(-)
 create mode 100644 src/PVE/Storage/Common.pm
 create mode 100644 src/PVE/Storage/Common/Makefile

-- 
2.39.5





More information about the pve-devel mailing list