Thanks for all the feedback. This PSARC case was approved yesterday and
will be integrated relatively soon.

Adam

On Wed, Nov 01, 2006 at 01:33:33AM -0800, Adam Leventhal wrote:
> Rick McNeal and I have been working on building support for sharing ZVOLs
> as iSCSI targets directly into ZFS. Below is the proposal I'll be
> submitting to PSARC. Comments and suggestions are welcome.
> 
> Adam
> 
> ---8<---
> 
> iSCSI/ZFS Integration
> 
> A. Overview
> 
> The goal of this project is to couple ZFS with the iSCSI target in Solaris
> specifically to make it as easy to create and export ZVOLs via iSCSI as it
> is to create and export ZFS filesystems via NFS. We will add two new ZFS
> properties to support this feature.
> 
>     shareiscsi
> 
>       Like the 'sharenfs' property, 'shareiscsi' indicates if a ZVOL should
>       be exported as an iSCSI target. The acceptable values for this property
>       are 'on', 'off', and 'direct'. In the future, we may support other
>       target types (for example, 'tape'). The default is 'off'. This property
>       may be set on filesystems, but has no direct effect; this is to allow
>       ZVOLs created under the ZFS hierarchy to inherit a default. For
>       example, an administrator may want ZVOLs to be shared by default, and
>       so set 'shareiscsi=on' for the pool.
> 
>     iscsioptions
> 
>       This property, which is hidden by default, is used by the iSCSI target
>       daemon to store persistent information such as the IQN. The contents
>       are not intended for users or external consumers.
> 
> 
> B. Examples
> 
> iSCSI targets are simple to create with the zfs(1M) command:
> 
> # zfs create -V 100M pool/volumes/v1
> # zfs set shareiscsi=on pool/volumes/v1
> # iscsitadm list target
> Target: pool/volumes/v1
>     iSCSI Name: iqn.1986-03.com.sun:02:4db92521-f5dc-cde4-9cd5-a3f6f567220a
>     Connections: 0
> 
> Renaming the ZVOL has the expected result for the iSCSI target:
> 
> # zfs rename pool/volumes/v1 pool/volumes/stuff     
> # iscsitadm list target
> Target: pool/volumes/stuff
>     iSCSI Name: iqn.1986-03.com.sun:02:4db92521-f5dc-cde4-9cd5-a3f6f567220a
>     Connections: 0
> 
> Note that per the iSCSI specification (RFC3720), the iSCSI Name is unchanged
> after the ZVOL is renamed.
> 
> Exporting a pool containing a shared ZVOL will cause the target to be removed;
> importing a pool containing a shared ZVOL will cause the target to be
> shared:
> 
> # zpool export pool
> # iscsitadm list target
> # zpool import pool
> # iscsitadm list target
> Target: pool/volumes/stuff
>     iSCSI Name: iqn.1986-03.com.sun:02:4db92521-f5dc-cde4-9cd5-a3f6f567220a
>     Connections: 0
> 
> Note again that all configuration information is stored with the dataset. As
> with NFS shared filesystems, iSCSI targets imported on a different system
> will be shared appropriately.
> 
> ---8<---
> 
> -- 
> Adam Leventhal, Solaris Kernel Development       http://blogs.sun.com/ahl
> _______________________________________________
> zfs-discuss mailing list
> zfs-discuss@opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

-- 
Adam Leventhal, Solaris Kernel Development       http://blogs.sun.com/ahl
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to