3.8 KiB
Nimble Storage volume driver
Nimble Storage fully integrates with the OpenStack platform through the Nimble Cinder driver, allowing a host to configure and manage Nimble Storage array features through Block Storage interfaces.
Support for the Liberty release is available from Nimble OS 2.3.8 or later.
Supported operations
- Create, delete, clone, attach, and detach volumes
- Create and delete volume snapshots
- Create a volume from a snapshot
- Copy an image to a volume
- Copy a volume to an image
- Extend a volume
- Get volume statistics
- Manage and unmanage a volume
- Enable encryption and default performance policy for a volume-type extra-specs
- Force backup of an in-use volume.
Note
The Nimble Storage implementation uses iSCSI only. Fibre Channel is not supported.
Nimble Storage driver configuration
Update the file /etc/cinder/cinder.conf
with the given
configuration.
In case of a basic (single back-end) configuration, add the
parameters within the [default]
section as follows.
[default]
san_ip = NIMBLE_MGMT_IP
san_login = NIMBLE_USER
san_password = NIMBLE_PASSWORD
volume_driver = cinder.volume.drivers.nimble.NimbleISCSIDriver
In case of multiple back-end configuration, for example, configuration which supports multiple Nimble Storage arrays or a single Nimble Storage array with arrays from other vendors, use the following parameters.
[default]
enabled_backends = Nimble-Cinder
[Nimble-Cinder]
san_ip = NIMBLE_MGMT_IP
san_login = NIMBLE_USER
san_password = NIMBLE_PASSWORD
volume_driver = cinder.volume.drivers.nimble.NimbleISCSIDriver
volume_backend_name = NIMBLE_BACKEND_NAME
In case of multiple back-end configuration, Nimble Storage volume type is created and associated with a back-end name as follows.
Note
Single back-end configuration users do not need to create the volume type.
$ cinder type-create NIMBLE_VOLUME_TYPE
$ cinder type-key NIMBLE_VOLUME_TYPE set volume_backend_name=NIMBLE_BACKEND_NAME
This section explains the variables used above:
- NIMBLE_MGMT_IP
-
Management IP address of Nimble Storage array/group.
- NIMBLE_USER
-
Nimble Storage account login with minimum
power user
(admin) privilege if RBAC is used. - NIMBLE_PASSWORD
-
Password of the admin account for nimble array.
- NIMBLE_BACKEND_NAME
-
A volume back-end name which is specified in the
cinder.conf
file. This is also used while assigning a back-end name to the Nimble volume type. - NIMBLE_VOLUME_TYPE
-
The Nimble volume-type which is created from the CLI and associated with
NIMBLE_BACKEND_NAME
.Note
Restart the
cinder-api
,cinder-scheduler
, andcinder-volume
services after updating thecinder.conf
file.
Nimble driver extra spec options
The Nimble volume driver also supports the following extra spec options:
- 'nimble:encryption'='yes'
-
Used to enable encryption for a volume-type.
- 'nimble:perfpol-name'=PERF_POL_NAME
-
PERF_POL_NAME is the name of a performance policy which exists on the Nimble array and should be enabled for every volume in a volume type.
- 'nimble:multi-initiator'='true'
-
Used to enable multi-initiator access for a volume-type.
These extra-specs can be enabled by using the following command:
$ cinder type-key VOLUME_TYPE set KEY=VALUE
VOLUME_TYPE
is the Nimble volume type and
KEY
and VALUE
are the options mentioned
above.
Configuration options
The Nimble storage driver supports these configuration options: