cinder/doc/source/configuration/block-storage/drivers/infinidat-volume-driver.rst
Jay S. Bryant 986a6a015f [DOC BLD FIX] Name files for inclusion properly
The Sphinx build was issuing hundreds of warning for
duplicate labels.  The reason for this was because
all of the tables we had were named as .rst files.
This would cause Sphinx to process them twice and it would
think there were duplicated sections.

There were two ways this could be handled:  1) Exclude the tables
directory from the docs build. 2) Name the files as they should
have always been so they weren't build twice.  Given that
option 1 just masked the problem, I am implementing this
patch using option 2.

So, all the tables we are including in our documentation
have been named from .rst to .inc and the .. include::
directives that use them have also been updated to use
the new file name.

Change-Id: If395eb652f7e3b789bcbd5e6d6d05954c23d8d8a
2017-08-04 15:33:52 -05:00

5.1 KiB

INFINIDAT InfiniBox Block Storage driver

The INFINIDAT Block Storage volume driver provides iSCSI and Fibre Channel support for INFINIDAT InfiniBox storage systems.

This section explains how to configure the INFINIDAT driver.

Supported operations

  • Create, delete, attach, and detach volumes.
  • Create, list, and delete volume snapshots.
  • Create a volume from a snapshot.
  • Copy a volume to an image.
  • Copy an image to a volume.
  • Clone a volume.
  • Extend a volume.
  • Get volume statistics.
  • Create, modify, delete, and list consistency groups.
  • Create, modify, delete, and list snapshots of consistency groups.
  • Create consistency group from consistency group or consistency group snapshot.

External package installation

The driver requires the infinisdk package for communicating with InfiniBox systems. Install the package from PyPI using the following command:

$ pip install infinisdk

Setting up the storage array

Create a storage pool object on the InfiniBox array in advance. The storage pool will contain volumes managed by OpenStack. Refer to the InfiniBox manuals for details on pool management.

Driver configuration

Edit the cinder.conf file, which is usually located under the following path /etc/cinder/cinder.conf.

  • Add a section for the INFINIDAT driver back end.
  • Under the [DEFAULT] section, set the enabled_backends parameter with the name of the new back-end section.

Configure the driver back-end section with the parameters below.

  • Configure the driver name by setting the following parameter:

    volume_driver = cinder.volume.drivers.infinidat.InfiniboxVolumeDriver
  • Configure the management IP of the InfiniBox array by adding the following parameter:

    san_ip = InfiniBox management IP
  • Configure user credentials.

    The driver requires an InfiniBox user with administrative privileges. We recommend creating a dedicated OpenStack user account that holds an administrative user role. Refer to the InfiniBox manuals for details on user account management. Configure the user credentials by adding the following parameters:

    san_login = infinibox_username
    san_password = infinibox_password
  • Configure the name of the InfiniBox pool by adding the following parameter:

    infinidat_pool_name = Pool defined in InfiniBox
  • The back-end name is an identifier for the back end. We recommend using the same name as the name of the section. Configure the back-end name by adding the following parameter:

    volume_backend_name = back-end name
  • Thin provisioning.

    The INFINIDAT driver supports creating thin or thick provisioned volumes. Configure thin or thick provisioning by adding the following parameter:

    san_thin_provision = true/false

    This parameter defaults to true.

  • Configure the connectivity protocol.

    The InfiniBox driver supports connection to the InfiniBox system in both the fibre channel and iSCSI protocols. Configure the desired protocol by adding the following parameter:

    infinidat_storage_protocol = iscsi/fc

    This parameter defaults to fc.

  • Configure iSCSI netspaces.

    When using the iSCSI protocol to connect to InfiniBox systems, you must configure one or more iSCSI network spaces in the InfiniBox storage array. Refer to the InfiniBox manuals for details on network space management. Configure the names of the iSCSI network spaces to connect to by adding the following parameter:

    infinidat_iscsi_netspaces = iscsi_netspace

    Multiple network spaces can be specified by a comma separated string.

    This parameter is ignored when using the FC protocol.

  • Configure CHAP

    InfiniBox supports CHAP authentication when using the iSCSI protocol. To enable CHAP authentication, add the following parameter:

    use_chap_auth = true

    To manually define the username and password, add the following parameters:

    chap_username = username
    chap_password = password

    If the CHAP username or password are not defined, they will be auto-generated by the driver.

    The CHAP parameters are ignored when using the FC protocol.

Configuration example

[DEFAULT]
enabled_backends = infinidat-pool-a

[infinidat-pool-a]
volume_driver = cinder.volume.drivers.infinidat.InfiniboxVolumeDriver
volume_backend_name = infinidat-pool-a
san_ip = 10.1.2.3
san_login = openstackuser
san_password = openstackpass
san_thin_provision = true
infinidat_pool_name = pool-a
infinidat_storage_protocol = iscsi
infinidat_iscsi_netspaces = default_iscsi_space

Driver-specific options

The following table contains the configuration options that are specific to the INFINIDAT driver.