Merge "Convert pure storage driver to RST"

This commit is contained in:
Jenkins 2015-12-09 07:49:41 +00:00 committed by Gerrit Code Review
commit 6100e1d7eb

View File

@ -1,3 +1,152 @@
===================================================
Pure Storage iSCSI and Fibre Channel volume drivers
===================================================
The Pure Storage FlashArray volume drivers for OpenStack Block Storage
interact with configured Pure Storage arrays and support various
operations.
Support for iSCSI storage protocol is available with the PureISCSIDriver
Volume Driver class, and Fibre Channel with PureFCDriver.
All drivers are compatible with Purity FlashArrays that support the REST
API version 1.2, 1.3, or 1.4 (Purity 4.0.0 and newer).
Limitations and known issues
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If you do not set up the nodes hosting instances to use multipathing,
all network connectivity will use a single physical port on the array.
In addition to significantly limiting the available bandwidth, this
means you do not have the high-availability and non-disruptive upgrade
benefits provided by FlashArray. Multipathing must be used to take advantage
of these benefits.
Supported operations
~~~~~~~~~~~~~~~~~~~~
* Create, delete, attach, detach, retype, clone, and extend volumes.
* Create a volume from snapshot.
* Create, list, and delete volume snapshots.
* Create, list, update, and delete consistency groups.
* Create, list, and delete consistency group snapshots.
* Manage and unmanage a volume.
* Manage and unmanage a snapshot.
* Get volume statistics.
* Create a thin provisioned volume.
Configure OpenStack and Purity
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You need to configure both your Purity array and your OpenStack cluster.
.. note::
These instructions assume that the ``cinder-api`` and ``cinder-scheduler``
services are installed and configured in your OpenStack cluster.
Configure the OpenStack Block Storage service
---------------------------------------------
In these steps, you will edit the ``cinder.conf`` file to configure the
OpenStack Block Storage service to enable multipathing and to use the
Pure Storage FlashArray as back-end storage.
#. Retrieve an API token from Purity.
The OpenStack Block Storage service configuration requires an API token
from Purity. Actions performed by the volume driver use this token for
authorization. Also, Purity logs the volume driver's actions as being
performed by the user who owns this API token.
If you created a Purity user account that is dedicated to managing your
OpenStack Block Storage volumes, copy the API token from that user
account.
Use the appropriate create or list command below to display and copy the
Purity API token:
* To create a new API token:
.. code-block:: console
$ pureadmin create --api-token USER
The following is an example output:
.. code-block:: console
$ pureadmin create --api-token pureuser
Name API Token Created
pureuser 902fdca3-7e3f-d2e4-d6a6-24c2285fe1d9 2014-08-04 14:50:30
* To list an existing API token:
.. code-block:: console
$ pureadmin list --api-token --expose USER
The following is an example output:
.. code-block:: console
$ pureadmin list --api-token --expose pureuser
Name API Token Created
pureuser 902fdca3-7e3f-d2e4-d6a6-24c2285fe1d9 2014-08-04 14:50:30
#. Copy the API token retrieved (``902fdca3-7e3f-d2e4-d6a6-24c2285fe1d9`` from
the examples above) to use in the next step.
#. Edit the OpenStack Block Storage service configuration file.
The following sample ``/etc/cinder/cinder.conf`` configuration lists the
relevant settings for a typical Block Storage service using a single
Pure Storage array:
.. code-block:: ini
[DEFAULT]
enabled_backends = puredriver-1
default_volume_type = puredriver-1
[puredriver-1]
volume_backend_name = puredriver-1
volume_driver = PURE_VOLUME_DRIVER
san_ip = IP_PURE_MGMT
pure_api_token = PURE_API_TOKEN
use_multipath_for_image_xfer = True
Replace the following variables accordingly:
PURE_VOLUME_DRIVER
Use either ``cinder.volume.drivers.pure.PureISCSIDriver`` for iSCSI or
``cinder.volume.drivers.pure.PureFCDriver`` for Fibre Channel
connectivity.
IP_PURE_MGMT
The IP address of the Pure Storage array's management interface or a
domain name that resolves to that IP address.
PURE_API_TOKEN
The Purity Authorization token that the volume driver uses to
perform volume management on the Pure Storage array.
.. note::
The volume driver automatically creates Purity host objects for
initiators as needed. If CHAP authentication is enabled via the
``use_chap_auth`` setting, you must ensure there are no manually
created host objects with IQN's that will be used by the OpenStack
Block Storage service. The driver will only modify credentials on hosts that
it manages.
.. note::
If using the PureFCDriver it is recommended to use the OpenStack
Block Storage Fibre Channel Zone Manager.