NetApp Driver for E-Series with iSCSI

NetApp Driver for E-Series with iSCSI

The NetApp E-Series driver for Cinder was introduced in the Icehouse release as a new storage family supported within the NetApp unified driver framework. The E-Series driver provides OpenStack with access to NetApp E-Series controllers for provisioning and maintaining OpenStack block storage volumes that use the iSCSI protocol.

Configuration Options

To set up the NetApp E-Series driver for Cinder, the following stanza should be added to the Cinder configuration file (cinder.conf):

[myESeriesBackend]
volume_backend_name=myESeriesBackend
volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver
netapp_server_hostname=hostname
netapp_server_port=8080
netapp_transport_type=http

netapp_storage_protocol=iscsi
netapp_storage_family=eseries
netapp_controller_ips=1.2.3.4,1.2.3.5
netapp_sa_password=storage_array_password
netapp_pool_name_search_pattern=(.+)
netapp_login=admin_username
netapp_password=admin_password
use_multipath_for_image_xfer=True
max_oversubscription_ratio=1.0
reserved_percentage=5
  • Be sure that the value of the enabled_backends option in the [DEFAULT] stanza includes the name of the stanza you chose for the backend.
  • As the E-Series solution only provides block storage services, the value of netapp_storage_protocol MUST be set to iscsi or FC.
  • The value of netapp_storage_family MUST be set to eseries, as the default value for this option is ontap_cluster.

Important

In order for OpenStack Block Storage and OpenStack Compute to take advantage of multiple paths, the following configuration options must be correctly configured:

  • The use_multipath_for_image_xfer should be set to True in cinder.conf within the driver stanza.
  • The iscsi_use_multipath should be set to True in nova.conf within the [libvirt] stanza.

Table 4.19, “Configuration options for E-Series with iSCSI” below lists the configuration options available for the unified driver for a E-Series deployment that use the iSCSI storage protocol.

Option Type Default Value Description
netapp_server_hostname Required   The hostname or IP address for the proxy server.
netapp_server_port Optional   The TCP port to use for communication with the storage system or proxy server. If not specified, ONTAP drivers will use 80 for HTTP and 443 for HTTPS; E-Series will use 8080 for HTTP and 8443 for HTTPS.
netapp_login Required   Administrative user account name used to access the proxy server.
netapp_password Required   Password for the administrative user account specified in the netapp_login option.
netapp_storage_protocol Required   The storage protocol to be used. Valid options are nfs, iscsi or FC.
netapp_transport_type Required http Transport protocol for communicating with the proxy server. Valid options include http and https.
netapp_webservice_path Optional /devmgr/v2 This option is used to specify the path to the E-Series proxy application on a proxy server. The value is combined with the value of the netapp_transport_type, netapp_server_hostname, and netapp_server_port options to create the URL used by the driver to connect to the proxy application.
netapp_controller_ips Required   This option is only utilized when the storage family is configured to eseries. This option is used to restrict provisioning to the specified controllers. Specify the value of this option to be a comma separated list of controller management hostnames or IP addresses to be used for provisioning.
netapp_sa_password Optional   Password for the NetApp E-Series storage array.
netapp_pool_name_search_pattern Optional (.+) This option is used to restrict provisioning to the specified pools. Specify the value of this option to be a regular expression which will be applied to the names of pools from the eseries storage backend.
netapp_storage_family Required ontap_cluster The storage family type used on the storage system; valid values are ontap_cluster for ONTAP or eseries for E-Series.
netapp_host_type Optional linux_dm_mp This option defines the type of operating system for all initiators that can access a LUN. This information is used when mapping LUNs to individual hosts or groups of hosts. Refer to Table 4.21, “Values for specifying host type OS for E-Series Storage Systems” for available options.
netapp_enable_multiattach Optional false This option specifies whether the driver should allow operations that require multiple attachments to a volume. An example would be live migration of servers that have volumes attached. When enabled, this backend is limited to 256 total volumes in order to guarantee volumes can be accessed by more than one host. More information can be found here: Nova Live Migration of Instances with Attached E-Series Volumes
reserved_percentage Optional 0 This option represents the amount of total capacity of a storage pool that will be reserved and cannot be utilized for provisioning Cinder volumes.
max_oversubscription_ratio Optional 20.0 This option is defined as a float, and specifies the amount of over-provisioning to allow when thin provisioning is being used in the storage pool. A value of 1.0 will mean that the provisioned capacity will not be able to exceed the total capacity, while larger values will result in increased levels of allowed over-provisioning.
netapp_pool_name_search_pattern Optional (.+) This option is only utilized when the Cinder driver is configured to use iSCSI or Fibre Channel. It is used to restrict provisioning to the specified volume groups or disk pools. Specify the value of this option as a regular expression which will be applied to the names of volume groups or disk pools from the storage backend which represent pools in Cinder. ^ (beginning of string) and $ (end of string) are implicitly wrapped around the regular expression specified before filtering.
use_chap_auth Optional   This option is defined as a boolean, and specifies if unidirectional CHAP is enabled. Provides authenticated communication between iSCSI initiators and targets.