HP 3PAR Fibre Channel and iSCSI Drivers
The HP3PARFCDriver and HP3PARISCSIDriver are
based on the Block Storage (Cinder) plug-in architecture. The drivers execute
the volume operations by communicating with the HP 3PAR storage system over
HTTP/HTTPS and SSH connections. The HTTP/HTTPS communications use the
hp3parclient, which is part of the Python standard library.
For information about managing HP 3PAR storage systems, refer to the HP 3PAR user
documentation.
System Requirements
To use the HP 3PAR drivers, install the following software and components on the
HP 3PAR storage system:
HP 3PAR Operating System software version 3.1.2 (MU2) or higher
HP 3PAR Web Services API Server must be enabled and running
One Common Provisioning Group (CPG)
Additionally, you must install the
hp3parclient from the Python
standard library on the system with the enabled Block
Storage volume drivers.
Supported Operations
Create volumes.
Delete volumes.
Extend volumes.
Attach volumes.
Detach volumes.
Create snapshots.
Delete snapshots.
Create volumes from snapshots.
Create cloned volumes.
Copy images to volumes.
Copy volumes to images.
Volume type support for both HP 3PAR drivers includes the ability to set the following
capabilities in the OpenStack Cinder API
cinder.api.contrib.types_extra_specs volume type extra specs
extension module:
hp3par:cpg
hp3par:snap_cpg
hp3par:provisioning
hp3par:persona
hp3par:vvs
qos:maxBWS
qos:maxIOPS
To work with the default filter scheduler, the key values are case sensitive
and scoped with hp3par: or qos:. For
information about how to set the key-value pairs and associate them with a
volume type, run the following command: $
cinder help type-key
Volumes that are cloned only support extra specs keys
cpg, snap_cpg, provisioning and vvs. The others are ignored.
In addition the comments section of the cloned volume in the HP 3PAR
StoreServ storage array is not populated.
The following keys require that the HP 3PAR StoreServ storage array has a
Priority Optimization license installed.
hp3par:vvs - The virtual volume set name that has been
predefined by the Administrator with Quality of Service (QoS) rules associated
to it. If you specify hp3par:vvs, the
qos:maxIOPS and qos:maxBWS settings are
ignored.
qos:maxBWS - The QoS I/O issue count rate limit in MBs.
If not set, the I/O issue bandwidth rate has no limit.
qos:maxIOPS - The QoS I/O issue count rate limit. If not
set, the I/O issue count rate has no limit.
If volume types are not used or a particular key is not set for a volume type, the
following defaults are used.
hp3par:cpg - Defaults to the hp3par_cpg
setting in the cinder.conf file.
hp3par:snap_cpg - Defaults to the
hp3par_snap setting in the
cinder.conf file. If hp3par_snap is
not set, it defaults to the hp3par_cpg setting.
hp3par:provisioning - Defaults to thin provisioning, the valid
values are thin and full.
hp3par:persona - Defaults to the 1 –
Generic persona. The valid values are, 1 –
Generic, 2 - Generic-ALUA, 6 -
Generic-legacy, 7 - HPUX-legacy,
8 - AIX-legacy, 9 – EGENERA,
10 - ONTAP-legacy, 11 – VMware, and
12 - OpenVMS.
Enabling the HP 3PAR Fibre Channel and iSCSI Drivers
The HP3PARFCDriver and HP3PARISCSIDriver are
installed with the OpenStack software.
Install the hp3parclient Python package on the
OpenStack Block Storage system. $sudo pip install hp3parclient
Verify that the HP 3PAR Web Services API server is enabled and running on
the HP 3PAR storage system.
Log onto the HP 3PAR storage system with administrator
access.#ssh 3paradm@<HP 3PAR IP Address>
View the current state of the Web Services API Server.
#showwsapi-Service- -State- -HTTP_State-
HTTP_Port -HTTPS_State- HTTPS_Port -Version-Enabled Active Enabled 8008
Enabled 8080 1.1
If the Web Services API Server is disabled, start
it.#startwsapi
If the HTTP or HTTPS state is disabled, enable one of
them.#setwsapi -http enable or #setwsapi -https enable
To stop the Web Services API Server, use the stopwsapi command. For
other options run the setwsapi –h command.
If you are not using an existing CPG, create a CPG on the HP 3PAR storage system
to be used as the default location for creating volumes.
Make the following changes in the
/etc/cinder/cinder.conf file.
## REQUIRED SETTINGS
# 3PAR WS API Server URL
hp3par_api_url=https://10.10.0.141:8080/api/v1
# 3PAR Super user username
hp3par_username=3paradm
# 3PAR Super user password
hp3par_password=3parpass
# 3PAR domain to use - DEPRECATED
hp3par_domain=None
# 3PAR CPG to use for volume creation
hp3par_cpg=OpenStackCPG_RAID5_NL
# IP address of SAN controller for SSH access to the array
san_ip=10.10.22.241
# Username for SAN controller for SSH access to the array
san_login=3paradm
# Password for SAN controller for SSH access to the array
san_password=3parpass
# FIBRE CHANNEL(uncomment the next line to enable the FC driver)
# volume_driver=cinder.volume.drivers.san.hp.hp_3par_fc.HP3PARFCDriver
# iSCSI (uncomment the next line to enable the iSCSI driver and
# hp3par_iscsi_ips or iscsi_ip_address)
#volume_driver=cinder.volume.drivers.san.hp.hp_3par_iscsi.HP3PARISCSIDriver
# iSCSI multiple port configuration
# hp3par_iscsi_ips=10.10.220.253:3261,10.10.222.234
# Still available for single port iSCSI configuration
#iscsi_ip_address=10.10.220.253
## OPTIONAL SETTINGS
# Enable HTTP debugging to 3PAR
hp3par_debug=False
# The CPG to use for Snapshots for volumes. If empty hp3par_cpg will be used.
hp3par_snap_cpg=OpenStackSNAP_CPG
# Time in hours to retain a snapshot. You can't delete it before this expires.
hp3par_snapshot_retention=48
# Time in hours when a snapshot expires and is deleted. This must be larger than retention.
hp3par_snapshot_expiration=72
You can enable only one driver on each cinder instance unless you
enable multiple backend support. See the Cinder multiple backend support
instructions to enable this feature.
One or more iSCSI addresses may be configured using hp3par_iscsi_ips.
When multiple addresses are configured, the driver selects the iSCSI
port with the fewest active volumes at attach time. The IP address may include
an IP port by using a colon ‘:’ to separate the address from port. If no IP
port is defined, the default port 3260 is used. IP addresses should be
separated using a comma ’,’. iscsi_ip_address/iscsi_port may still be used, as an
alternative to hp3par_iscsi_ips for single port iSCSI configuration.
Save the changes to the cinder.conf file and restart
the cinder-volume service.
The HP 3PAR Fibre Channel and iSCSI drivers should now be enabled on your OpenStack
system. If you experience any problems, check the Block Storage log files for errors.