EMC manila driver framework (EMCShareDriver) utilizes the EMC storage products to provide the shared filesystems to OpenStack. The EMC manila driver is a plugin based driver which is designed to use different plugins to manage different EMC storage products.
VNX plugin is the plugin which manages the VNX to provide shared filesystems. EMC driver framework with VNX plugin is referred to as VNX driver in this document.
This driver performs the operations on VNX by XMLAPI and the File command line. Each backend manages one Data Mover of VNX. Multiple manila backends need to be configured to manage multiple Data Movers.
The following operations will be supported on VNX array:
While the generic driver creates shared filesystems based on Cinder volumes attached to Nova VMs, the VNX driver performs similar operations using the Data Movers on the array.
VNX driver requires that the Unicode is enabled on Data Mover.
CAUTION: After enabling Unicode, you cannot disable it. If there are some filesystems created before Unicode is enabled on the VNX, consult the storage administrator before enabling Unicode.
To check the Unicode status on Data Mover, use the following VNX File command on VNX control station:
server_cifs <mover_name> | head where: mover_name = <name of the Data Mover>
Check the value of I18N mode field. UNICODE mode is shown as I18N mode = UNICODE
To enable the Unicode for Data Mover:
uc_config -on -mover <mover_name> where: mover_name = <name of the Data Mover>
Refer to the document Using International Character Sets on VNX for File on [EMC support site](https://support.emc.com) for more information.
Ensure the CIFS service is enabled on the Data Mover which is going to be managed by VNX driver.
To start the CIFS service, use the following command:
server_setup <mover_name> -Protocol cifs -option start [=<n>] where: <mover_name> = <name of the Data Mover> [=<n>] = <number of threads for CIFS users>
Note: If there is 1 GB of memory on the Data Mover, the default is 96 threads; however, if there is over 1 GB of memory, the default number of threads is 256.
To check the CIFS service status, use this command:
server_cifs <mover_name> | head where: <mover_name> = <name of the Data Mover>
The command output will show the number of CIFS threads started.
VNX driver only supports CIFS share creation with share network which has an Active Directory security-service associated.
Creating CIFS share requires that the time on the Data Mover is in sync with the Active Directory domain so that the CIFS server can join the domain. Otherwise, the domain join will fail when creating share with this security service. There is a limitation that the time of the domains used by security-services even for different tenants and different share networks should be in sync. Time difference should be less than 10 minutes.
It is recommended to set the NTP server to the same public NTP server on both the Data Mover and domains used in security services to ensure the time is in sync everywhere.
Check the date and time on Data Mover:
server_date <mover_name> where: mover_name = <name of the Data Mover>
Set the NTP server for Data Mover:
server_date <mover_name> timesvc start ntp <host> [<host> …] where: mover_name = <name of the Data Mover> host = <IP address of the time server host>
Note: The host must be running the NTP protocol. Only 4 host entries are allowed.
Before creating CIFS share using VNX driver, you must select a method of mapping Windows SIDs to UIDs and GIDs. EMC recommends using usermapper in single protocol (CIFS) environment which is enabled on VNX by default.
To check usermapper status, use this command syntax:
server_usermapper <movername> where: <movername> = <name of the Data Mover>
If usermapper is not started, the following command can be used to start the usermapper:
server_usermapper <movername> -enable where: <movername> = <name of the Data Mover>
For multiple protocol environment, refer to Configuring VNX User Mapping on [EMC support site](https://support.emc.com) for additional information.
In the current release, the share created by VNX driver uses the first network device (physical port on NIC) of Data Mover to access the network.
Go to Unisphere to check the device list: Settings -> Network -> Settings for File (Unified system only) -> Device.
The following parameters need to be configured in /etc/manila/manila.conf for the VNX driver:
emc_share_backend = vnx emc_nas_server = <IP address> emc_nas_password = <password> emc_nas_login = <user> emc_nas_server_container = <Data Mover name> emc_nas_pool_name = <pool name> emc_interface_ports = <Comma separated ports list> share_driver = manila.share.drivers.dell_emc.driver.EMCShareDriver driver_handles_share_servers = True
Restart of manila-share service is needed for the configuration changes to take effect.
IPv6 support for VNX driver is introduced in Queens release. The feature is divided into two parts:
The following parameters need to be configured in /etc/manila/manila.conf for the VNX driver:
network_plugin_ipv6_enabled = True
If you want to connect VNX using IPv6 address, you should configure IPv6 address by nas_cs command for VNX and specify the address in /etc/manila/manila.conf:
emc_nas_server = <IPv6 address>
In the Mitaka and Newton release of OpenStack, Snapshot support is enabled by default for a newly created share type. Starting with the Ocata release, the snapshot_support extra spec must be set to True in order to allow snapshots for a share type. If the ‘snapshot_support’ extra_spec is omitted or if it is set to False, users would not be able to create snapshots on shares of this share type. The feature is divided into two parts:
The following extra specifications need to be configured with share type.
For new share type, these extra specifications can be set directly when creating share type:
manila type-create --snapshot_support True --create_share_from_snapshot_support True ${share_type_name} True
Or you can update already existing share type with command:
manila type-key ${share_type_name} set snapshot_support=True
manila type-key ${share_type_name} set create_share_from_snapshot_support=True
The VNX driver has the following restrictions:
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.