Add Storwize/SVC configuration attributes
Change-Id: Ica5513abdc8bed298edb475f0c44e2eabf50b93b
This commit is contained in:
parent
fbe9320f77
commit
d2363a7a9c
|
@ -5,6 +5,7 @@ This file is used to list changes made in each version of the openstack-block-st
|
|||
## 8.0.0
|
||||
### New version
|
||||
* Upgrade to upstream Havana release
|
||||
* Add support for Storwize/SVC configuration attributes
|
||||
|
||||
## 7.2.2
|
||||
### Bug
|
||||
|
|
21
README.md
21
README.md
|
@ -69,6 +69,9 @@ TODO: move rabbit parameters under openstack["block-storage"]["mq"]
|
|||
* `openstack["block-storage"]["mq"]["qpid"]["protocol"]` - Protocol to use. Default tcp.
|
||||
* `openstack["block-storage"]["mq"]["qpid"]["tcp_nodelay"]` - Disable the Nagle algorithm. default disabled.
|
||||
|
||||
Cinder attributes
|
||||
-----------------
|
||||
|
||||
* `openstack["block-storage"]["service_tenant_name"]` - name of tenant to use for the cinder service account in keystone
|
||||
* `openstack["block-storage"]["service_user"]` - cinder service user in keystone
|
||||
* `openstack["block-storage"]["service_role"]` - role for the cinder service user in keystone
|
||||
|
@ -108,6 +111,24 @@ TODO: move rabbit parameters under openstack["block-storage"]["mq"]
|
|||
* `openstack["block-storage"]["rpc_conn_pool_size"]` - Size of RPC connection pool
|
||||
* `openstack["block-storage"]["rpc_response_timeout"]` - Seconds to wait for a response from call or multicall
|
||||
|
||||
### Storwize/SVC attributes ###
|
||||
* `openstack['block-storage']['san']['san_ip'] - IP address of SAN controller
|
||||
* `openstack['block-storage']['san']['san_login'] - Username for SAN controller
|
||||
* `openstack['block-storage']['san']['san_private_key'] - Filename of private key to use for SSH authentication
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_volpool_name'] - Storage system storage pool for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_rsize'] - Storage system space-efficiency parameter for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_warning'] - Storage system threshold for volume capacity warnings
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_autoexpand'] - Storage system autoexpand parameter for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_grainsize'] - Storage system grain size parameter for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_compression'] - Storage system compression option for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_easytier'] - Enable Easy Tier for volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_vol_iogrp'] - The I/O group in which to allocate volumes
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_flashcopy_timeout'] - Maximum number of seconds to wait for FlashCopy to be prepared
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_connection_protocol'] - Connection protocol (iSCSI/FC)
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_iscsi_chap_enabled'] - Configure CHAP authentication for iSCSI connections
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_multipath_enabled'] - Connect with multipath (FC only; iSCSI multipath is controlled by Nova)
|
||||
* `openstack['block-storage']['storwize']['storwize_svc_multihostmap_enabled'] - Allows vdisk to multi host mapping
|
||||
|
||||
Testing
|
||||
=====
|
||||
|
||||
|
|
|
@ -127,6 +127,24 @@ default['openstack']['block-storage']['nfs']['mount_point_base'] = '/mnt/cinder-
|
|||
default['openstack']['block-storage']['nfs']['nfs_disk_util'] = 'df'
|
||||
default['openstack']['block-storage']['nfs']['nfs_sparsed_volumes'] = 'true'
|
||||
|
||||
# Storwize/SVC Support
|
||||
default['openstack']['block-storage']['san']['san_ip'] = '127.0.0.1'
|
||||
default['openstack']['block-storage']['san']['san_login'] = 'admin'
|
||||
default['openstack']['block-storage']['san']['san_private_key'] = '/v7000_rsa'
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_volpool_name'] = 'volpool'
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_rsize'] = '2%'
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_warning'] = 0
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_autoexpand'] = true
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_grainsize'] = 256
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_compression'] = false
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_easytier'] = true
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_flashcopy_timeout'] = 120
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_vol_iogrp'] = 0
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_connection_protocol'] = 'iSCSI'
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_iscsi_chap_enabled'] = true
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_multipath_enabled'] = false
|
||||
default['openstack']['block-storage']['storwize']['storwize_svc_multihostmap_enabled'] = true
|
||||
|
||||
# logging attribute
|
||||
default['openstack']['block-storage']['syslog']['use'] = false
|
||||
default['openstack']['block-storage']['syslog']['facility'] = 'LOG_LOCAL2'
|
||||
|
|
|
@ -86,6 +86,13 @@ when "cinder.volume.drivers.netapp.nfs.NetAppDirect7modeNfsDriver"
|
|||
end
|
||||
end
|
||||
|
||||
when "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver"
|
||||
file node['openstack']['block-storage']['san']['san_private_key'] do
|
||||
mode "0400"
|
||||
owner node["openstack"]["block-storage"]["user"]
|
||||
group node["openstack"]["block-storage"]["group"]
|
||||
end
|
||||
|
||||
when "cinder.volume.drivers.lvm.LVMISCSIDriver"
|
||||
if node["openstack"]["block-storage"]["volume"]["create_volume_group"]
|
||||
volume_size = node["openstack"]["block-storage"]["volume"]["volume_group_size"]
|
||||
|
|
|
@ -83,6 +83,40 @@ describe "openstack-block-storage::volume" do
|
|||
expect(n).to eq "rbd-pass"
|
||||
end
|
||||
|
||||
it "configures storewize private key" do
|
||||
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
|
||||
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver"
|
||||
end
|
||||
chef_run.converge "openstack-block-storage::volume"
|
||||
|
||||
san_key = chef_run.file chef_run.node["openstack"]["block-storage"]["san"]["san_private_key"]
|
||||
expect(san_key.mode).to eq('0400')
|
||||
end
|
||||
|
||||
it "configures storewize with iscsi" do
|
||||
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
|
||||
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver"
|
||||
n.set["openstack"]["block-storage"]["storwize"]["storwize_svc_connection_protocol"] = "iSCSI"
|
||||
end
|
||||
conf = "/etc/cinder/cinder.conf"
|
||||
chef_run.converge "openstack-block-storage::volume"
|
||||
|
||||
# Test that the FC specific options are not set when connected via iSCSI
|
||||
expect(chef_run).not_to render_file(conf).with_content("storwize_svc_multipath_enabled")
|
||||
end
|
||||
|
||||
it "configures storewize with fc" do
|
||||
chef_run = ::ChefSpec::Runner.new ::UBUNTU_OPTS do |n|
|
||||
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver"
|
||||
n.set["openstack"]["block-storage"]["storwize"]["storwize_svc_connection_protocol"] = "FC"
|
||||
end
|
||||
conf = "/etc/cinder/cinder.conf"
|
||||
chef_run.converge "openstack-block-storage::volume"
|
||||
|
||||
# Test that the iSCSI specific options are not set when connected via FC
|
||||
expect(chef_run).not_to render_file(conf).with_content("storwize_svc_iscsi_chap_enabled")
|
||||
end
|
||||
|
||||
it "starts cinder volume" do
|
||||
expect(@chef_run).to start_service "cinder-volume"
|
||||
end
|
||||
|
|
|
@ -694,6 +694,18 @@ nfs_sparsed_volumes=<%= node["openstack"]["block-storage"]["nfs"]["nfs_sparsed_v
|
|||
|
||||
######## defined in cinder.volume.san ########
|
||||
|
||||
<% if node["openstack"]["block-storage"]["volume"]["driver"] == "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver" %>
|
||||
|
||||
san_ip=<%= node["openstack"]["block-storage"]["san"]["san_ip"] %>
|
||||
#### (StrOpt) IP address of SAN controller
|
||||
|
||||
san_login=<%= node["openstack"]["block-storage"]["san"]["san_login"] %>
|
||||
#### (StrOpt) Username for SAN controller
|
||||
|
||||
san_private_key=<%= node["openstack"]["block-storage"]["san"]["san_private_key"] %>
|
||||
#### (StrOpt) Filename of private key to use for SSH authentication
|
||||
|
||||
<% else %>
|
||||
# san_thin_provision=true
|
||||
#### (BoolOpt) Use thin provisioning for SAN volumes?
|
||||
|
||||
|
@ -721,7 +733,7 @@ nfs_sparsed_volumes=<%= node["openstack"]["block-storage"]["nfs"]["nfs_sparsed_v
|
|||
|
||||
# san_zfs_volume_base=rpool/
|
||||
#### (StrOpt) The ZFS path under which to create zvols for volumes.
|
||||
|
||||
<% end %>
|
||||
|
||||
######## defined in cinder.volume.solidfire ########
|
||||
|
||||
|
@ -740,35 +752,57 @@ nfs_sparsed_volumes=<%= node["openstack"]["block-storage"]["nfs"]["nfs_sparsed_v
|
|||
# sf_allow_tenant_qos=true
|
||||
#### (BoolOpt) Allow tenants to specify QOS on create
|
||||
|
||||
|
||||
<% if node["openstack"]["block-storage"]["volume"]["driver"] == "cinder.volume.drivers.storwize_svc.StorwizeSVCDriver" %>
|
||||
######## defined in cinder.volume.storwize_svc ########
|
||||
|
||||
# storwize_svc_volpool_name=volpool
|
||||
storwize_svc_volpool_name=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_volpool_name"] %>
|
||||
#### (StrOpt) Storage system storage pool for volumes
|
||||
|
||||
# storwize_svc_vol_rsize=2%
|
||||
storwize_svc_vol_rsize=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_rsize"] %>
|
||||
#### (StrOpt) Storage system space-efficiency parameter for volumes
|
||||
|
||||
# storwize_svc_vol_warning=0
|
||||
storwize_svc_vol_warning=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_warning"] %>
|
||||
#### (StrOpt) Storage system threshold for volume capacity warnings
|
||||
|
||||
# storwize_svc_vol_autoexpand=true
|
||||
storwize_svc_vol_autoexpand=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_autoexpand"] %>
|
||||
#### (BoolOpt) Storage system autoexpand parameter for volumes (True/False)
|
||||
|
||||
# storwize_svc_vol_grainsize=256
|
||||
storwize_svc_vol_grainsize=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_grainsize"] %>
|
||||
#### (StrOpt) Storage system grain size parameter for volumes
|
||||
#### (32/64/128/256)
|
||||
|
||||
# storwize_svc_vol_compression=false
|
||||
storwize_svc_vol_compression=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_compression"] %>
|
||||
#### (BoolOpt) Storage system compression option for volumes
|
||||
|
||||
# storwize_svc_vol_easytier=true
|
||||
storwize_svc_vol_easytier=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_easytier"] %>
|
||||
#### (BoolOpt) Enable Easy Tier for volumes
|
||||
|
||||
# storwize_svc_flashcopy_timeout=120
|
||||
# The I/O group in which to allocate volumes (integer value)
|
||||
storwize_svc_vol_iogrp=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_vol_iogrp"] %>
|
||||
|
||||
storwize_svc_flashcopy_timeout=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_flashcopy_timeout"] %>
|
||||
#### (StrOpt) Maximum number of seconds to wait for FlashCopy to be
|
||||
#### prepared. Maximum value is 600 seconds (10 minutes).
|
||||
|
||||
# Connection protocol (iSCSI/FC) (string value)
|
||||
storwize_svc_connection_protocol=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_connection_protocol"] %>
|
||||
|
||||
<% if node["openstack"]["block-storage"]["storwize"]["storwize_svc_connection_protocol"] == "iSCSI" %>
|
||||
# Configure CHAP authentication for iSCSI connections
|
||||
# (Default: Enabled) (boolean value)
|
||||
storwize_svc_iscsi_chap_enabled=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_iscsi_chap_enabled"] %>
|
||||
|
||||
<% else %>
|
||||
|
||||
# Connect with multipath (FC only; iSCSI multipath is
|
||||
# controlled by Nova) (boolean value)
|
||||
storwize_svc_multipath_enabled=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_multipath_enabled"] %>
|
||||
|
||||
<% end %>
|
||||
# Allows vdisk to multi host mapping (boolean value)
|
||||
storwize_svc_multihostmap_enabled=<%= node["openstack"]["block-storage"]["storwize"]["storwize_svc_multihostmap_enabled"] %>
|
||||
|
||||
<% end %>
|
||||
|
||||
######## defined in cinder.volume.xiv ########
|
||||
|
||||
|
|
Loading…
Reference in New Issue