INFINIDAT InfiniBox Share driver¶
The INFINIDAT Share driver provides support for managing filesystem shares on the INFINIDAT InfiniBox storage systems.
This section explains how to configure the INFINIDAT driver.
Supported operations¶
Create and delete filesystem shares.
Ensure filesystem shares.
Extend a share.
Create and delete filesystem snapshots.
Create a share from a share snapshot.
Revert a share to its snapshot.
Mount a snapshot.
Set access rights to shares and snapshots.
Note the following limitations:
Only IP access type is supported.
Both RW & RO access levels are supported.
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 shares managed by OpenStack. Refer to the InfiniBox manuals for details on pool management.
Driver configuration¶
Edit the manila.conf
file, which is usually located under the following
path /etc/manila/manila.conf
.
Add a section for the INFINIDAT driver back end.
Under the
[DEFAULT]
section, set theenabled_share_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:
share_driver = manila.share.drivers.infinidat.infinibox.InfiniboxShareDriver
Configure the management IP of the InfiniBox array by adding the following parameter:
infinibox_hostname = InfiniBox management IP
Configure SSL support for InfiniBox management API:
We recommend enabling SSL support for InfiniBox management API. Refer to the InfiniBox manuals for details on security management. Configure SSL options by adding the following parameters:
infinidat_use_ssl = true/false infinidat_suppress_ssl_warnings = true/false
These parameters defaults to
false
.Configure user credentials:
The driver requires an InfiniBox user with administrative privileges. We recommend creating a dedicated OpenStack user account that holds a pool admin user role. Refer to the InfiniBox manuals for details on user account management. Configure the user credentials by adding the following parameters:
infinibox_login = Infinibox management login infinibox_password = Infinibox management password
Configure the name of the InfiniBox pool by adding the following parameter:
infinidat_pool_name = Pool as defined in the InfiniBox
Configure the name of the InfiniBox NAS network space by adding the following parameter:
infinidat_nas_network_space_name = Network space as defined in the 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:
share_backend_name = back-end name
Thin provisioning:
The INFINIDAT driver supports creating thin or thick provisioned filesystems. Configure thin or thick provisioning by adding the following parameter:
infinidat_thin_provision = true/false
This parameter defaults to
true
.Controls access to the
.snapshot
directory:infinidat_snapdir_accessible = true/false
By default, each share allows access to its own
.snapshot
directory, which contains files and directories of each snapshot taken. To restrict access to the.snapshot
directory on the client side, this option should be set tofalse
.This parameter defaults to
true
.Controls visibility of the
.snapshot
directory:infinidat_snapdir_visible = true/false
By default, each share contains the
.snapshot
directory, which is hidden on the client side. To make the.snapshot
directory visible, this option should be set totrue
.This parameter defaults to
false
.
Configuration example¶
[DEFAULT]
enabled_share_backends = infinidat-pool-a
[infinidat-pool-a]
share_driver = manila.share.drivers.infinidat.infinibox.InfiniboxShareDriver
share_backend_name = infinidat-pool-a
driver_handles_share_servers = false
infinibox_hostname = 10.1.2.3
infinidat_use_ssl = true
infinidat_suppress_ssl_warnings = true
infinibox_login = openstackuser
infinibox_password = openstackpass
infinidat_pool_name = pool-a
infinidat_nas_network_space_name = nas_space
infinidat_thin_provision = true
infinidat_snapdir_accessible = true
infinidat_snapdir_visible = false
Driver options¶
Configuration options specific to this driver:
Configuration option = Default value |
Description |
---|---|
[DEFAULT] |
|
|
(String) The name (or IP address) for the INFINIDAT Infinibox storage system. |
|
(Boolean) Enable SSL communication to access the INFINIDAT Infinibox storage system. |
|
(Boolean) Suppress requests library SSL certificate warnings. |
|
(String) Administrative user account name used to access the INFINIDAT Infinibox storage system. |
|
(String) Password for the administrative user account specified in the infinibox_login option. |
|
(String) Name of the pool from which volumes are allocated. |
|
(String) Name of the NAS network space on the INFINIDAT InfiniBox. |
|
(Boolean) Use thin provisioning. |
|
(Boolean) Controls access to the |
|
(Boolean) Controls visibility of the |