[pve-devel] General direct [i]SCSI storage plugin to extend for specific SAN

Dmitry Petuhov mityapetuhov at gmail.com
Mon Jun 27 11:14:05 CEST 2016

I want to write storage plugin for my Netapp iSCSI SAN. But I'm little 
confused what to use as base.

ISCSIDirectPlugin.pm is first candidate, but currently it looks not very 
usable. Am I right understood that the only way to use it is to manually 
create LUN on SAN and write its number in VM config via cli?

ZFSPlugin.pm is more promising candidate, because of its extensibility 
via LunCmd/* modules by design. Actually, it could become good general 
direct-lun iSCSI plugin, if all ZFS-specific stuff would moved out to 
LunCmd/* modules.

Another consideration is that LunCmd/* plugins can be used by other 
transports of nowadays enterprise SANs, like SAS or FC. Their 
volume-image-snapshot APIs are often pretty same for different 
transports. At same time, actual transport can be masked at PVE side by 
multipathd: we could associate SAN-specific image name with its WWN in 
LunCmd code and feed qemu with unified devices 
/dev/disk/by-id/wwn-0x{$wwn} generated by multipathd.

Any thoughts?

More information about the pve-devel mailing list