Atom feed of this document
  
Juno -  Juno -  Juno -  Juno -  Juno -  Juno -  Juno -  Juno - 

 Oracle ZFSSA iSCSI Driver

Oracle ZFS Storage Appliances (ZFSSAs) provide advanced software to protect data, speed tuning and troubleshooting, and deliver high performance and high availability. Through the Oracle ZFSSA iSCSI Driver, OpenStack Block Storage can use an Oracle ZFSSA as a block storage resource. The driver enables you to create iSCSI volumes that an OpenStack Block Storage server can allocate to any virtual machine running on a compute host. The Oracle ZFSSA iSCSI Driver, version 1.0.0, supports ZFSSA software release 2013.1.2.0 and later.

 Configuration

  1. Enable RESTful service on the ZFSSA Storage Appliance.

  2. Create a new user on the appliance with the following authorizations:

    • scope=stmf - allow_configure=true

    • scope=nas - allow_clone=true, allow_createProject=true, allow_createShare=true, allow_changeSpaceProps=true, allow_changeGeneralProps=true, allow_destroy=true, allow_rollback=true, allow_takeSnap=true

    You can create a role with authorizations as follows:

    zfssa:> configuration roles
    zfssa:configuration roles> role OpenStackRole
    zfssa:configuration roles OpenStackRole (uncommitted)> set description="OpenStack Cinder Driver"
    zfssa:configuration roles OpenStackRole (uncommitted)> commit
    zfssa:configuration roles> select OpenStackRole
    zfssa:configuration roles OpenStackRole> authorizations create
    zfssa:configuration roles OpenStackRole auth (uncommitted)> set scope=stmf
    zfssa:configuration roles OpenStackRole auth (uncommitted)> set allow_configure=true
    zfssa:configuration roles OpenStackRole auth (uncommitted)> commit

    You can create a user with a specific role as follows:

    zfssa:> configuration users
    zfssa:configuration users> user cinder
    zfssa:configuration users cinder (uncommitted)> set fullname="OpenStack Cinder Driver"
    zfssa:configuration users cinder (uncommitted)> set initial_password=12345
    zfssa:configuration users cinder (uncommitted)> commit
    zfssa:configuration users> select cinder set roles=OpenStackRole
    [Note]Note

    You can also run this workflow to automate the above tasks.

  3. Ensure that the ZFSSA iSCSI service is online. If the ZFSSA iSCSI service is not online, enable the service by using the BUI, CLI or REST API in the appliance.

    zfssa:> configuration services iscsi
    zfssa:configuration services iscsi> enable
    zfssa:configuration services iscsi> show
    Properties:
    <status>= online
    ...

Define the following required properties in the cinder.conf file:

volume_driver = cinder.volume.drivers.zfssa.zfssaiscsi.ZFSSAISCSIDriver
san_ip = myhost
san_login = username
san_password = password
zfssa_pool = mypool
zfssa_project = myproject
zfssa_initiator_group = default
zfssa_target_portal = w.x.y.z:3260
zfssa_target_interfaces = e1000g0

Optionally, you can define additional properties.

Target interfaces can be seen as follows in the CLI:

zfssa:> configuration net interfaces
zfssa:configuration net interfaces> show
Interfaces:
INTERFACE STATE CLASS LINKS    ADDRS          LABEL
e1000g0   up    ip    e1000g0  1.10.20.30/24  Untitled Interface
...
[Note]Note

Do not use management interfaces for zfssa_target_interfaces.

 Supported operations

  • Create and delete volumes

  • Extend volume

  • Create and delete snapshots

  • Create volume from snapshot

  • Delete volume snapshots

  • Attach and detach volumes

  • Get volume stats

  • Clone volumes

 Driver options

The Oracle ZFSSA iSCSI Driver supports these options:

Table 1.34. Description of ZFS Storage Appliance iSCSI driver configuration options
Configuration option = Default value Description
[DEFAULT]
zfssa_initiator = (StrOpt) iSCSI initiator IQNs. (comma separated)
zfssa_initiator_group = (StrOpt) iSCSI initiator group.
zfssa_initiator_password = (StrOpt) iSCSI initiator CHAP password.
zfssa_initiator_user = (StrOpt) iSCSI initiator CHAP user.
zfssa_lun_compression = (StrOpt) Data compression-off, lzjb, gzip-2, gzip, gzip-9.
zfssa_lun_logbias = (StrOpt) Synchronous write bias-latency, throughput.
zfssa_lun_sparse = False (BoolOpt) Flag to enable sparse (thin-provisioned): True, False.
zfssa_lun_volblocksize = 8k (StrOpt) Block size: 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, 128k.
zfssa_pool = None (StrOpt) Storage pool name.
zfssa_project = None (StrOpt) Project name.
zfssa_rest_timeout = None (IntOpt) REST connection timeout. (seconds)
zfssa_target_group = tgt-grp (StrOpt) iSCSI target group name.
zfssa_target_interfaces = None (StrOpt) Network interfaces of iSCSI targets. (comma separated)
zfssa_target_password = (StrOpt) iSCSI target CHAP password.
zfssa_target_portal = None (StrOpt) iSCSI target portal (Data-IP:Port, w.x.y.z:3260).
zfssa_target_user = (StrOpt) iSCSI target CHAP user.

Questions? Discuss on ask.openstack.org
Found an error? Report a bug against this page

loading table of contents...