HP 3PAR Fibre Channel and iSCSI driversThe HP3PARFCDriver and
HP3PARISCSIDriver drivers, which are
based on the Block Storage Service (Cinder) plug-in
architecture, run volume operations by communicating with the
HP 3PAR storage system over HTTP, HTTPS, and SSH connections.
The HTTP and HTTPS communications use
hp3parclient, which is part of the
Python standard library.For information about how to manage HP 3PAR storage systems,
see the HP 3PAR user documentation.System requirementsTo 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.3
or higherHP 3PAR Web Services API Server must be enabled
and runningOne Common Provisioning Group (CPG)Additionally, you must install the
hp3parclient version 3.0 or
newer from the Python standard library on the
system with the enabled Block Storage Service
volume drivers.Supported operationsCreate 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 migration(backend assisted).Volume type support for both HP 3PAR drivers includes
the ability to set the following capabilities in the
OpenStack Block Storage API
cinder.api.contrib.types_extra_specs
volume type extra specs extension module:hp3par:cpghp3par:snap_cpghp3par:provisioninghp3par:personahp3par:vvsTo work with the default filter scheduler, the key
values are case sensitive and scoped with
hp3par:.
For information about how to set the key-value pairs and
associate them with a volume type, run the following
command:
$cinder help type-keyVolumes 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.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, 12 -
OpenVMS, 13 - HPUX,
and 15 - WindowsServer.QoS support for both HP 3PAR drivers includes
the ability to set the following capabilities in the
OpenStack Block Storage API
cinder.api.contrib.qos_specs_manage
qos specs extension module:minBWSmaxBWSminIOPSmaxIOPSlatencypriorityThe qos keys above no longer require to be scoped
but must be created and associated to a volume type.
For information about how to set the key-value pairs and
associate them with a volume type, run the following
commands:
$cinder help qos-create$cinder help qos-key$cinder help qos-associateThe 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 extra_specs
hp3par:vvs, the
qos_specs minIOPS,
maxIOPS, minBWS,
and maxBWS settings are
ignored.minBWS - The QoS I/O
issue bandwidth minimum goal in MBs. If not set, the I/O
issue bandwidth rate has no minimum goal.maxBWS - The QoS I/O
issue bandwidth rate limit in MBs. If not set, the I/O
issue bandwidth rate has no limit.minIOPS - The QoS I/O
issue count minimum goal. If not set, the I/O issue
count has no minimum goal.maxIOPS - The QoS I/O
issue count rate limit. If not set, the I/O issue
count rate has no limit.latency - The latency
goal in milliseconds.priority - The priority of
the QoS rule over other rules. If not set, the
priority is normal, valid values are low, normal
and high.Since the Icehouse release, minIOPS and maxIOPS must
be used together to set I/O limits. Similarly, minBWS
and maxBWS must be used together. If only one is set
the other will be set to the same value.Enable the HP 3PAR Fibre Channel and iSCSI
driversThe HP3PARFCDriver and
HP3PARISCSIDriver are installed
with the OpenStack software.Install the hp3parclient
Python package on the OpenStack Block Storage
system.
$sudo pip install 'hp3parclient>=3.0,<4.0'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.1If the Web Services API Server is
disabled, start
it.
#startwsapiIf the HTTP or HTTPS state is disabled, enable
one of
them.
#setwsapi -http enable
or #setwsapi -https enableTo 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 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=72You can enable only one driver on each
cinder instance unless you enable multiple
back-end support. See the Cinder multiple
back-end support instructions to enable this
feature.You can configure one or more iSCSI
addresses by using the
option.
When you configure multiple addresses, the
driver selects the iSCSI port with the fewest
active volumes at attach time. The IP address
might include an IP port by using a colon
(:) to separate the
address from port. If you do not define an IP
port, the default port 3260 is used. Separate
IP addresses with a comma
(,). The
/
options might be used as an alternative to
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 are now
enabled on your OpenStack system. If you experience
problems, review the Block Storage Service log files for
errors.