Fixed an issue in Infinidat driver to support host assisted migration. And added new configuration options: * `infinidat_snapdir_accessible` to configure access to the `.snapshot` directory on the client side. * `infinidat_snapdir_visible` to configure visibility of the `.snapshot` directory on the client side. Closes-Bug: #1992443 Signed-off-by: Alexander Deiter <adeiter@infinidat.com> Change-Id: I29b51fcec28dd5110de6ad196ff8b67c875ce8fa (cherry picked from commit7ec7321053) (cherry picked from commite105df94a7) (cherry picked from commit594fb45ce4)
5.2 KiB
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_backendsparameter 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.InfiniboxShareDriverConfigure the management IP of the InfiniBox array by adding the following parameter:
infinibox_hostname = InfiniBox management IPConfigure 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/falseThese 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 an administrative 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 passwordConfigure the name of the InfiniBox pool by adding the following parameter:
infinidat_pool_name = Pool as defined in the InfiniBoxConfigure the name of the InfiniBox NAS network space by adding the following parameter:
infinidat_nas_network_space_name = Network space as defined in the InfiniBoxThe 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 nameThin 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/falseThis parameter defaults to
true.Controls access to the
.snapshotdirectory:infinidat_snapdir_accessible = true/falseBy default, each share allows access to its own
.snapshotdirectory, which contains files and directories of each snapshot taken. To restrict access to the.snapshotdirectory on the client side, this option should be set tofalse.This parameter defaults to
true.Controls visibility of the
.snapshotdirectory:infinidat_snapdir_visible = true/falseBy default, each share contains the
.snapshotdirectory, which is hidden on the client side. To make the.snapshotdirectory 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 = falseDriver options
Configuration options specific to this driver: