Re-add ZFSSA iSCSI cinder driver documentation.
This patch adds back the ZFSSA iSCSI driver documentation. It also adds volume migration support documentation to the ZFSSA iSCSI as well as NFS driver. Another change part of this patch is the addition of extra spec documentation to the ZFSSA iSCSI driver. Closes-Bug: 1501804 Closes-Bug: 1501806 Closes-Bug: 1503081 Change-Id: Ib682b6781695239e376378a637f8b0cab45ff3c4
This commit is contained in:
parent
e8e239d73a
commit
bb6faae07d
@ -0,0 +1,211 @@
|
||||
<section xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="zfssa-iscsi-driver" version="5.0">
|
||||
<title>Oracle ZFS Storage Appliance iSCSI driver</title>
|
||||
<para>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 <literal>1.0.0</literal> and later, supports ZFSSA software release <literal>2013.1.2.0</literal> and later.
|
||||
</para>
|
||||
|
||||
<simplesect>
|
||||
<title>Configuration</title>
|
||||
<procedure>
|
||||
<step>
|
||||
<para>Enable RESTful service on the ZFSSA Storage Appliance.</para>
|
||||
</step>
|
||||
<step>
|
||||
<para>Create a new user on the appliance with the following authorizations:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para><code>scope=stmf - allow_configure=true</code></para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para><code>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</code></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
You can create a role with authorizations as follows:
|
||||
</para>
|
||||
<screen><prompt>zfssa:></prompt> <userinput>configuration roles</userinput>
|
||||
<prompt>zfssa:configuration roles></prompt> <userinput>role OpenStackRole</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole (uncommitted)></prompt> <userinput>set description="OpenStack Cinder Driver"</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole (uncommitted)></prompt> <userinput>commit</userinput>
|
||||
<prompt>zfssa:configuration roles></prompt> <userinput>select OpenStackRole</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole></prompt> <userinput>authorizations create</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>set scope=stmf</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>set allow_configure=true</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>commit</userinput></screen>
|
||||
<para>You can create a user with a specific role as follows:</para>
|
||||
<screen><prompt>zfssa:></prompt> <userinput>configuration users</userinput>
|
||||
<prompt>zfssa:configuration users></prompt> <userinput>user cinder</userinput>
|
||||
<prompt>zfssa:configuration users cinder (uncommitted)></prompt> <userinput>set fullname="OpenStack Cinder Driver"</userinput>
|
||||
<prompt>zfssa:configuration users cinder (uncommitted)></prompt> <userinput>set initial_password=12345</userinput>
|
||||
<prompt>zfssa:configuration users cinder (uncommitted)></prompt> <userinput>commit</userinput>
|
||||
<prompt>zfssa:configuration users></prompt> <userinput>select cinder set roles=OpenStackRole</userinput></screen>
|
||||
<note>
|
||||
<para>
|
||||
You can also run this <link xlink:href="https://java.net/projects/solaris-userland/sources/gate/content/components/openstack/cinder/files/zfssa/cinder.akwf">workflow</link> to automate the above tasks.
|
||||
</para>
|
||||
</note>
|
||||
</step>
|
||||
<step>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
<screen><prompt>zfssa:></prompt> <userinput>configuration services iscsi</userinput>
|
||||
<prompt>zfssa:configuration services iscsi></prompt> <userinput>enable</userinput>
|
||||
<prompt>zfssa:configuration services iscsi></prompt> <userinput>show</userinput>
|
||||
<computeroutput>Properties:
|
||||
<status>= online
|
||||
...</computeroutput></screen>
|
||||
</step>
|
||||
</procedure>
|
||||
|
||||
<para>Define the following required properties in the <filename>cinder.conf</filename> file:</para>
|
||||
<programlisting language="ini">volume_driver = cinder.volume.drivers.zfssa.zfssaiscsi.ZFSSAISCSIDriver
|
||||
san_ip = <replaceable>myhost</replaceable>
|
||||
san_login = <replaceable>username</replaceable>
|
||||
san_password = <replaceable>password</replaceable>
|
||||
zfssa_pool = <replaceable>mypool</replaceable>
|
||||
zfssa_project = <replaceable>myproject</replaceable>
|
||||
zfssa_initiator_group = <replaceable>default</replaceable>
|
||||
zfssa_target_portal = <replaceable>w.x.y.z:3260</replaceable>
|
||||
zfssa_target_interfaces = <replaceable>e1000g0</replaceable></programlisting>
|
||||
<para>Optionally, you can define additional properties.</para>
|
||||
<para>Target interfaces can be seen as follows in the CLI:</para>
|
||||
<screen><prompt>zfssa:></prompt> <userinput>configuration net interfaces</userinput>
|
||||
<prompt>zfssa:configuration net interfaces></prompt> <userinput>show</userinput>
|
||||
<computeroutput>Interfaces:
|
||||
INTERFACE STATE CLASS LINKS ADDRS LABEL
|
||||
e1000g0 up ip e1000g0 1.10.20.30/24 Untitled Interface
|
||||
...</computeroutput></screen>
|
||||
<note>
|
||||
<para>
|
||||
Do not use management interfaces for <code>zfssa_target_interfaces</code>.
|
||||
</para>
|
||||
</note>
|
||||
</simplesect>
|
||||
|
||||
<simplesect>
|
||||
<title>Supported operations</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Create and delete volumes</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Extend volume</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Create and delete snapshots</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Create volume from snapshot</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Delete volume snapshots</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Attach and detach volumes</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Get volume stats</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Clone volumes</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Volume migration</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
<title>ZFSSA assisted volume migration</title>
|
||||
<para>The ZFSSA iSCSI driver supports storage assisted volume migration starting in the Liberty release. This feature
|
||||
uses remote replication feature on the ZFSSA. Volumes can be migrated between
|
||||
two backends configured not only to the same ZFSSA but also between
|
||||
two separate ZFSSAs altogether.
|
||||
</para>
|
||||
<para>The following conditions must be met in order to use ZFSSA assisted volume
|
||||
migration:
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Both the source and target backends are configured to ZFSSAs.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Remote replication service on the source and target appliance is enabled.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The ZFSSA to which the target backend is configured should be configured as a target in
|
||||
the remote replication service of the ZFSSA configured to the source backend.
|
||||
The remote replication target needs to be configured even when the source
|
||||
and the destination for volume migration are the same ZFSSA.
|
||||
Define <literal>zfssa_replication_ip</literal> in the <filename>cinder.conf</filename> of the source backend as the IP
|
||||
address used to register the target ZFSSA in the remote replication service of
|
||||
the source ZFSSA.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The name of the iSCSI target group(<literal>zfssa_target_group</literal>) on the source and the
|
||||
destination ZFSSA is the same.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The volume is not attached and is in available state.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>If any of the above conditions are not met, the driver will proceed with generic
|
||||
volume migration.</para>
|
||||
<para>
|
||||
The ZFSSA user on the source and target appliances will need to have additional
|
||||
role authorizations for assisted volume migration to work. In scope nas,
|
||||
set <literal>allow_rrtarget</literal> and <literal>allow_rrsource</literal> to <literal>true</literal>.
|
||||
</para>
|
||||
<screen>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>set scope=nas</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>set allow_rrtarget=true</userinput>
|
||||
<prompt>zfssa:configuration roles OpenStackRole auth (uncommitted)></prompt> <userinput>set allow_rrsource=true</userinput>
|
||||
</screen>
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
<title>Supported extra specs</title>
|
||||
<para>Extra specs provide the OpenStack storage admin the
|
||||
flexibility to create volumes with different characteristics from the
|
||||
ones specified in <filename>cinder.conf</filename>. The admin will
|
||||
specify the volume properties as keys at volume type creation. When a
|
||||
user requests a volume of this volume type, the volume will be created
|
||||
with the properties specified as extra specs.
|
||||
</para>
|
||||
<para>The following extra specs scoped keys are supported by the driver
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>zfssa:volblocksize</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>zfssa:sparse</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>zfssa:compression</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>zfssa:logbias</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
<para>Volume types can be created using the <literal>cinder type-create</literal>. Extra spec keys can be added using <literal>cinder type-key</literal> command.
|
||||
</para>
|
||||
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
|
||||
<title>Driver options</title>
|
||||
<para>The Oracle ZFSSA iSCSI Driver supports these options:</para>
|
||||
<xi:include
|
||||
href="../../../common/tables/cinder-zfssa-iscsi.xml"/>
|
||||
</simplesect>
|
||||
|
||||
</section>
|
@ -35,6 +35,9 @@
|
||||
<listitem>
|
||||
<para>Clone a volume</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Volume migration</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</simplesect>
|
||||
<simplesect>
|
||||
|
@ -54,7 +54,6 @@
|
||||
<xi:include href="../../common/tables/cinder-violin.xml"/>
|
||||
<xi:include href="../../common/tables/cinder-vzstorage.xml"/>
|
||||
<xi:include href="../../common/tables/cinder-zeromq.xml"/>
|
||||
<xi:include href="../../common/tables/cinder-zfssa-iscsi.xml"/>
|
||||
<xi:include href="../../common/tables/cinder-zones.xml"/>
|
||||
|
||||
</section>
|
||||
|
@ -49,5 +49,6 @@
|
||||
<xi:include href="drivers/vmware-vmdk-driver.xml"/>
|
||||
<xi:include href="drivers/windows-iscsi-volume-driver.xml"/>
|
||||
<xi:include href="drivers/xio-volume-driver.xml"/>
|
||||
<xi:include href="drivers/zfssa-iscsi-driver.xml"/>
|
||||
<xi:include href="drivers/zfssa-nfs-driver.xml"/>
|
||||
</section>
|
||||
|
@ -596,8 +596,8 @@ zfssa_nfs_share_compression zfssa-nfs
|
||||
zfssa_nfs_share_logbias zfssa-nfs
|
||||
zfssa_pool zfssa-iscsi
|
||||
zfssa_project zfssa-iscsi
|
||||
zfssa_replication_ip zfssa-nfs
|
||||
zfssa_rest_timeout zfssa zfssa-nfs
|
||||
zfssa_replication_ip zfssa-iscsi
|
||||
zfssa_rest_timeout zfssa-iscsi zfssa-nfs
|
||||
zfssa_target_group zfssa-iscsi
|
||||
zfssa_target_interfaces zfssa-iscsi
|
||||
zfssa_target_password zfssa-iscsi
|
||||
|
@ -65,7 +65,6 @@ windows Windows
|
||||
xio X-IO volume driver
|
||||
xiv IBM XIV and DS8000 volume driver
|
||||
zadara Zadara Storage driver
|
||||
zfssa ZFS Storage Appliance iSCSI driver
|
||||
zfssa-iscsi ZFS Storage Appliance iSCSI driver
|
||||
zfssa-nfs ZFS Storage Appliance NFS driver
|
||||
zones zones
|
||||
|
Loading…
Reference in New Issue
Block a user