Browse Source

Add parameters for cinder storage availability zones

Add CinderStorageAvailabilityZone parameter that configures
cinder's DEFAULT/storage_availability_zone. The default value
of 'nova' matches cinder's own default value.

Add several CinderXXXAvailabilityZone parameters, where XXX is
any of the cinder volume service's storage backends. The
parameters are optional, and when set they override the
"backend_availability_zone" for the corresponding backend.

Implements: blueprint split-controlplane-cinder-volume-az
Depends-On: Ic407b747474b567858ad36beabc8a7d8c5022343
Change-Id: Idb035bf112cbab41547bd89935df4c175bf665f4
changes/75/608075/5
Alan Bishop 4 years ago
parent
commit
dc2d0de810
  1. 4
      environments/storage/cinder-netapp-config.yaml
  2. 28
      puppet/services/cinder-backend-dellemc-unity.yaml
  3. 18
      puppet/services/cinder-backend-dellemc-vmax-iscsi.yaml
  4. 38
      puppet/services/cinder-backend-dellemc-vnx.yaml
  5. 30
      puppet/services/cinder-backend-dellemc-xtremio-iscsi.yaml
  6. 36
      puppet/services/cinder-backend-dellps.yaml
  7. 46
      puppet/services/cinder-backend-dellsc.yaml
  8. 62
      puppet/services/cinder-backend-netapp.yaml
  9. 40
      puppet/services/cinder-backend-nvmeof.yaml
  10. 26
      puppet/services/cinder-backend-pure.yaml
  11. 46
      puppet/services/cinder-backend-scaleio.yaml
  12. 14
      puppet/services/cinder-backend-veritas-hyperscale.yaml
  13. 5
      puppet/services/cinder-base.yaml
  14. 28
      puppet/services/cinder-hpelefthand-iscsi.yaml
  15. 33
      puppet/services/cinder-volume.yaml
  16. 11
      releasenotes/notes/add-cinder-storage-az-parameters-cddf410bc3464193.yaml

4
environments/storage/cinder-netapp-config.yaml

@ -9,6 +9,10 @@
# A Heat environment file which can be used to enable a
# a Cinder NetApp backend, configured via puppet
parameter_defaults:
# The availability zone of the NetApp Cinder backend. When set, it overrides the default CinderStorageAvailabilityZone.
# Type: string
CinderNetappAvailabilityZone: ''
#
# Type: string
CinderNetappBackendName: tripleo_netapp

28
puppet/services/cinder-backend-dellemc-unity.yaml

@ -23,6 +23,12 @@ parameters:
CinderDellEMCUnityBackendName:
type: string
default: 'tripleo_dellemc_unity'
CinderDellEMCUnityAvailabilityZone:
default: ''
description: >
The availability zone of the Dell EMC Unity Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellEMCUnitySanIp:
type: string
CinderDellEMCUnitySanLogin:
@ -73,11 +79,17 @@ outputs:
value:
service_name: cinder_backend_dellemc_unity
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellemc_unity_backend: {get_param: CinderEnableDellEMCUnityBackend}
cinder::backend::dellemc_unity::volume_backend_name: {get_param: CinderDellEMCUnityBackendName}
cinder::backend::dellemc_unity::san_ip: {get_param: CinderDellEMCUnitySanIp}
cinder::backend::dellemc_unity::san_login: {get_param: CinderDellEMCUnitySanLogin}
cinder::backend::dellemc_unity::san_password: {get_param: CinderDellEMCUnitySanPassword}
cinder::backend::dellemc_unity::storage_protocol: {get_param: CinderDellEMCUnityStorageProtocol}
cinder::backend::dellemc_unity::unity_io_ports: {get_param: CinderDellEMCUnityIoPorts}
cinder::backend::dellemc_unity::unity_storage_pool_names: {get_param: CinderDellEMCUnityStoragePoolNames}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellemc_unity_backend: {get_param: CinderEnableDellEMCUnityBackend}
cinder::backend::dellemc_unity::volume_backend_name: {get_param: CinderDellEMCUnityBackendName}
cinder::backend::dellemc_unity::san_ip: {get_param: CinderDellEMCUnitySanIp}
cinder::backend::dellemc_unity::san_login: {get_param: CinderDellEMCUnitySanLogin}
cinder::backend::dellemc_unity::san_password: {get_param: CinderDellEMCUnitySanPassword}
cinder::backend::dellemc_unity::storage_protocol: {get_param: CinderDellEMCUnityStorageProtocol}
cinder::backend::dellemc_unity::unity_io_ports: {get_param: CinderDellEMCUnityIoPorts}
cinder::backend::dellemc_unity::unity_storage_pool_names: {get_param: CinderDellEMCUnityStoragePoolNames}
-
if:
- {equals : [{get_param: CinderDellEMCUnityAvailabilityZone}, '']}
- {}
- cinder::backend::dellemc_unity::backend_availability_zone: {get_param: CinderDellEMCUnityAvailabilityZone}

18
puppet/services/cinder-backend-dellemc-vmax-iscsi.yaml

@ -23,6 +23,12 @@ parameters:
CinderDellEMCVMAXISCSIBackendName:
type: string
default: 'tripleo_dellemc_vmax_iscsi'
CinderDellEMCVMAXISCSIAvailabilityZone:
default: ''
description: >
The availability zone of the Dell EMC VMAX iSCSI Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellEMCVMAXISCSIConfigFile:
type: string
ServiceData:
@ -58,6 +64,12 @@ outputs:
value:
service_name: cinder_backend_dellemc_vmax_iscsi
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellemc_vmax_iscsi_backend: {get_param: CinderEnableDellEMCVMAXISCSIBackend}
cinder::backend::dellemc_vmax_iscsi::volume_backend_name: {get_param: CinderDellEMCVMAXISCSIBackendName}
cinder::backend::dellemc_vmax_iscsi::cinder_emc_config_file: {get_param: CinderDellEMCVMAXISCSIConfigFile}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellemc_vmax_iscsi_backend: {get_param: CinderEnableDellEMCVMAXISCSIBackend}
cinder::backend::dellemc_vmax_iscsi::volume_backend_name: {get_param: CinderDellEMCVMAXISCSIBackendName}
cinder::backend::dellemc_vmax_iscsi::cinder_emc_config_file: {get_param: CinderDellEMCVMAXISCSIConfigFile}
-
if:
- {equals : [{get_param: CinderDellEMCVMAXISCSIAvailabilityZone}, '']}
- {}
- cinder::backend::dellemc_vmax_iscsi::backend_availability_zone: {get_param: CinderDellEMCVMAXISCSIAvailabilityZone}

38
puppet/services/cinder-backend-dellemc-vnx.yaml

@ -23,6 +23,12 @@ parameters:
CinderDellEMCVNXBackendName:
type: string
default: tripleo_dellemc_vnx
CinderDellEMCVNXAvailabilityZone:
default: ''
description: >
The availability zone of the Dell EMC VNX Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellEMCVNXSanIp:
type: string
CinderDellEMCVNXSanLogin:
@ -89,16 +95,22 @@ outputs:
value:
service_name: cinder_backend_dellemc_vnx
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellemc_vnx_backend: {get_param: CinderEnableDellEMCVNXBackend}
cinder::backend::emc_vnx::volume_backend_name: {get_param: CinderDellEMCVNXBackendName}
cinder::backend::emc_vnx::san_ip: {get_param: CinderDellEMCVNXSanIp}
cinder::backend::emc_vnx::san_login: {get_param: CinderDellEMCVNXSanLogin}
cinder::backend::emc_vnx::san_password: {get_param: CinderDellEMCVNXSanPassword}
cinder::backend::emc_vnx::storage_protocol: {get_param: CinderDellEMCVNXStorageProtocol}
cinder::backend::emc_vnx::storage_vnx_pool_names: {get_param: CinderDellEMCVNXStoragePoolNames}
cinder::backend::emc_vnx::default_timeout: {get_param: CinderDellEMCVNXDefaultTimeout}
cinder::backend::emc_vnx::max_luns_per_storage_group: {get_param: CinderDellEMCVNXMaxLunsPerStorageGroup}
cinder::backend::emc_vnx::initiator_auto_registration: {get_param: CinderDellEMCVNXInitiatorAutoRegistration}
cinder::backend::emc_vnx::storage_vnx_auth_type: {get_param: CinderDellEMCVNXAuthType}
cinder::backend::emc_vnx::storage_vnx_security_file_dir: {get_param: CinderDellEMCVNXStorageSecurityFileDir}
cinder::backend::emc_vnx::naviseccli_path: {get_param: CinderDellEMCVNXNaviSecCliPath}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellemc_vnx_backend: {get_param: CinderEnableDellEMCVNXBackend}
cinder::backend::emc_vnx::volume_backend_name: {get_param: CinderDellEMCVNXBackendName}
cinder::backend::emc_vnx::san_ip: {get_param: CinderDellEMCVNXSanIp}
cinder::backend::emc_vnx::san_login: {get_param: CinderDellEMCVNXSanLogin}
cinder::backend::emc_vnx::san_password: {get_param: CinderDellEMCVNXSanPassword}
cinder::backend::emc_vnx::storage_protocol: {get_param: CinderDellEMCVNXStorageProtocol}
cinder::backend::emc_vnx::storage_vnx_pool_names: {get_param: CinderDellEMCVNXStoragePoolNames}
cinder::backend::emc_vnx::default_timeout: {get_param: CinderDellEMCVNXDefaultTimeout}
cinder::backend::emc_vnx::max_luns_per_storage_group: {get_param: CinderDellEMCVNXMaxLunsPerStorageGroup}
cinder::backend::emc_vnx::initiator_auto_registration: {get_param: CinderDellEMCVNXInitiatorAutoRegistration}
cinder::backend::emc_vnx::storage_vnx_auth_type: {get_param: CinderDellEMCVNXAuthType}
cinder::backend::emc_vnx::storage_vnx_security_file_dir: {get_param: CinderDellEMCVNXStorageSecurityFileDir}
cinder::backend::emc_vnx::naviseccli_path: {get_param: CinderDellEMCVNXNaviSecCliPath}
-
if:
- {equals : [{get_param: CinderDellEMCVNXAvailabilityZone}, '']}
- {}
- cinder::backend::emc_vnx::backend_availability_zone: {get_param: CinderDellEMCVNXAvailabilityZone}

30
puppet/services/cinder-backend-dellemc-xtremio-iscsi.yaml

@ -23,6 +23,12 @@ parameters:
CinderDellEMCXTREMIOIscsiBackendName:
type: string
default: tripleo_dellemc_xtremio_iscsi
CinderDellEMCXTREMIOIscsiAvailabilityZone:
default: ''
description: >
The availability zone of the Dell EMC XtremeIO iSCSI Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellEMCXTREMIOIscsiSanIp:
type: string
CinderDellEMCXTREMIOIscsiSanLogin:
@ -80,12 +86,18 @@ outputs:
value:
service_name: cinder_backend_dellemc_xtremio_iscsi
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellemc_xtremio_iscsi_backend: {get_param: CinderEnableDellEMCXTREMIOIscsiBackend}
cinder::backend::dellemc_xtremio_iscsi::volume_backend_name: {get_param: CinderDellEMCXTREMIOIscsiBackendName}
cinder::backend::dellemc_xtremio_iscsi::san_ip: {get_param: CinderDellEMCXTREMIOIscsiSanIp}
cinder::backend::dellemc_xtremio_iscsi::san_login: {get_param: CinderDellEMCXTREMIOIscsiSanLogin}
cinder::backend::dellemc_xtremio_iscsi::san_password: {get_param: CinderDellEMCXTREMIOIscsiSanPassword}
cinder::backend::dellemc_xtremio_iscsi::xtremio_cluster_name: {get_param: CinderDellEMCXTREMIOIscsiClusterName}
cinder::backend::dellemc_xtremio_iscsi::xtremio_array_busy_retry_count: {get_param: CinderDellEMCXTREMIOIscsiArrayBusyRetryCount}
cinder::backend::dellemc_xtremio_iscsi::xtremio_array_busy_retry_interval: {get_param: CinderDellEMCXTREMIOIscsiArrayBusyRetryInterval}
cinder::backend::dellemc_xtremio_iscsi::xtremio_volumes_per_glance_cache: {get_param: CinderDellEMCXTREMIOIscsiVolumesPerGlanceCache}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellemc_xtremio_iscsi_backend: {get_param: CinderEnableDellEMCXTREMIOIscsiBackend}
cinder::backend::dellemc_xtremio_iscsi::volume_backend_name: {get_param: CinderDellEMCXTREMIOIscsiBackendName}
cinder::backend::dellemc_xtremio_iscsi::san_ip: {get_param: CinderDellEMCXTREMIOIscsiSanIp}
cinder::backend::dellemc_xtremio_iscsi::san_login: {get_param: CinderDellEMCXTREMIOIscsiSanLogin}
cinder::backend::dellemc_xtremio_iscsi::san_password: {get_param: CinderDellEMCXTREMIOIscsiSanPassword}
cinder::backend::dellemc_xtremio_iscsi::xtremio_cluster_name: {get_param: CinderDellEMCXTREMIOIscsiClusterName}
cinder::backend::dellemc_xtremio_iscsi::xtremio_array_busy_retry_count: {get_param: CinderDellEMCXTREMIOIscsiArrayBusyRetryCount}
cinder::backend::dellemc_xtremio_iscsi::xtremio_array_busy_retry_interval: {get_param: CinderDellEMCXTREMIOIscsiArrayBusyRetryInterval}
cinder::backend::dellemc_xtremio_iscsi::xtremio_volumes_per_glance_cache: {get_param: CinderDellEMCXTREMIOIscsiVolumesPerGlanceCache}
-
if:
- {equals : [{get_param: CinderDellEMCXTREMIOIscsiAvailabilityZone}, '']}
- {}
- cinder::backend::dellemc_xtremio_iscsi::backend_availability_zone: {get_param: CinderDellEMCXTREMIOIscsiAvailabilityZone}

36
puppet/services/cinder-backend-dellps.yaml

@ -24,6 +24,12 @@ parameters:
CinderDellPsBackendName:
type: string
default: 'tripleo_dellps'
CinderDellPsAvailabilityZone:
default: ''
description: >
The availability zone of the Dell PS Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellPsSanIp:
type: string
CinderDellPsSanLogin:
@ -85,15 +91,21 @@ outputs:
value:
service_name: cinder_backend_dellps
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellps_backend: {get_param: CinderEnableDellPsBackend}
cinder::backend::eqlx::volume_backend_name: {get_param: CinderDellPsBackendName}
cinder::backend::eqlx::san_ip: {get_param: CinderDellPsSanIp}
cinder::backend::eqlx::san_login: {get_param: CinderDellPsSanLogin}
cinder::backend::eqlx::san_password: {get_param: CinderDellPsSanPassword}
cinder::backend::eqlx::san_private_key: {get_param: CinderDellPsSanPrivateKey}
cinder::backend::eqlx::san_thin_provision: {get_param: CinderDellPsSanThinProvision}
cinder::backend::eqlx::eqlx_group_name: {get_param: CinderDellPsGroupname}
cinder::backend::eqlx::eqlx_pool: {get_param: CinderDellPsPool}
cinder::backend::eqlx::eqlx_use_chap: {get_param: CinderDellPsUseChap}
cinder::backend::eqlx::eqlx_chap_login: {get_param: CinderDellPsChapLogin}
cinder::backend::eqlx::eqlx_chap_password: {get_param: CinderDellPsChapPassword}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellps_backend: {get_param: CinderEnableDellPsBackend}
cinder::backend::eqlx::volume_backend_name: {get_param: CinderDellPsBackendName}
cinder::backend::eqlx::san_ip: {get_param: CinderDellPsSanIp}
cinder::backend::eqlx::san_login: {get_param: CinderDellPsSanLogin}
cinder::backend::eqlx::san_password: {get_param: CinderDellPsSanPassword}
cinder::backend::eqlx::san_private_key: {get_param: CinderDellPsSanPrivateKey}
cinder::backend::eqlx::san_thin_provision: {get_param: CinderDellPsSanThinProvision}
cinder::backend::eqlx::eqlx_group_name: {get_param: CinderDellPsGroupname}
cinder::backend::eqlx::eqlx_pool: {get_param: CinderDellPsPool}
cinder::backend::eqlx::eqlx_use_chap: {get_param: CinderDellPsUseChap}
cinder::backend::eqlx::eqlx_chap_login: {get_param: CinderDellPsChapLogin}
cinder::backend::eqlx::eqlx_chap_password: {get_param: CinderDellPsChapPassword}
-
if:
- {equals : [{get_param: CinderDellPsAvailabilityZone}, '']}
- {}
- cinder::backend::eqlx::backend_availability_zone: {get_param: CinderDellPsAvailabilityZone}

46
puppet/services/cinder-backend-dellsc.yaml

@ -23,6 +23,12 @@ parameters:
CinderDellScBackendName:
type: string
default: 'tripleo_dellsc'
CinderDellScAvailabilityZone:
default: ''
description: >
The availability zone of the Dell SC Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderDellScSanIp:
type: string
CinderDellScSanLogin:
@ -105,20 +111,26 @@ outputs:
value:
service_name: cinder_backend_dellsc
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_dellsc_backend: {get_param: CinderEnableDellScBackend}
cinder::backend::dellsc_iscsi::volume_backend_name: {get_param: CinderDellScBackendName}
cinder::backend::dellsc_iscsi::san_ip: {get_param: CinderDellScSanIp}
cinder::backend::dellsc_iscsi::san_login: {get_param: CinderDellScSanLogin}
cinder::backend::dellsc_iscsi::san_password: {get_param: CinderDellScSanPassword}
cinder::backend::dellsc_iscsi::dell_sc_ssn: {get_param: CinderDellScSsn}
cinder::backend::dellsc_iscsi::iscsi_ip_address: {get_param: CinderDellScIscsiIpAddress}
cinder::backend::dellsc_iscsi::iscsi_port: {get_param: CinderDellScIscsiPort}
cinder::backend::dellsc_iscsi::dell_sc_api_port: {get_param: CinderDellScApiPort}
cinder::backend::dellsc_iscsi::dell_sc_server_folder: {get_param: CinderDellScServerFolder}
cinder::backend::dellsc_iscsi::dell_sc_volume_folder: {get_param: CinderDellScVolumeFolder}
cinder::backend::dellsc_iscsi::secondary_san_ip: {get_param: CinderDellScSecondarySanIp}
cinder::backend::dellsc_iscsi::secondary_san_login: {get_param: CinderDellScSecondarySanLogin}
cinder::backend::dellsc_iscsi::secondary_san_password: {get_param: CinderDellScSecondarySanPassword}
cinder::backend::dellsc_iscsi::secondary_sc_api_port: {get_param: CinderDellScSecondaryScApiPort}
cinder::backend::dellsc_iscsi::excluded_domain_ips: {get_param: CinderDellScExcludedDomainIps}
cinder::backend::dellsc_iscsi::excluded_domain_ip: {get_param: CinderDellScExcludedDomainIp}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_dellsc_backend: {get_param: CinderEnableDellScBackend}
cinder::backend::dellsc_iscsi::volume_backend_name: {get_param: CinderDellScBackendName}
cinder::backend::dellsc_iscsi::san_ip: {get_param: CinderDellScSanIp}
cinder::backend::dellsc_iscsi::san_login: {get_param: CinderDellScSanLogin}
cinder::backend::dellsc_iscsi::san_password: {get_param: CinderDellScSanPassword}
cinder::backend::dellsc_iscsi::dell_sc_ssn: {get_param: CinderDellScSsn}
cinder::backend::dellsc_iscsi::iscsi_ip_address: {get_param: CinderDellScIscsiIpAddress}
cinder::backend::dellsc_iscsi::iscsi_port: {get_param: CinderDellScIscsiPort}
cinder::backend::dellsc_iscsi::dell_sc_api_port: {get_param: CinderDellScApiPort}
cinder::backend::dellsc_iscsi::dell_sc_server_folder: {get_param: CinderDellScServerFolder}
cinder::backend::dellsc_iscsi::dell_sc_volume_folder: {get_param: CinderDellScVolumeFolder}
cinder::backend::dellsc_iscsi::secondary_san_ip: {get_param: CinderDellScSecondarySanIp}
cinder::backend::dellsc_iscsi::secondary_san_login: {get_param: CinderDellScSecondarySanLogin}
cinder::backend::dellsc_iscsi::secondary_san_password: {get_param: CinderDellScSecondarySanPassword}
cinder::backend::dellsc_iscsi::secondary_sc_api_port: {get_param: CinderDellScSecondaryScApiPort}
cinder::backend::dellsc_iscsi::excluded_domain_ips: {get_param: CinderDellScExcludedDomainIps}
cinder::backend::dellsc_iscsi::excluded_domain_ip: {get_param: CinderDellScExcludedDomainIp}
-
if:
- {equals : [{get_param: CinderDellScAvailabilityZone}, '']}
- {}
- cinder::backend::dellsc_iscsi::backend_availability_zone: {get_param: CinderDellScAvailabilityZone}

62
puppet/services/cinder-backend-netapp.yaml

@ -35,6 +35,12 @@ parameters:
CinderNetappBackendName:
type: string
default: 'tripleo_netapp'
CinderNetappAvailabilityZone:
default: ''
description: >
The availability zone of the NetApp Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderNetappLogin:
type: string
CinderNetappPassword:
@ -120,28 +126,34 @@ outputs:
value:
service_name: cinder_backend_netapp
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: {get_param: CinderEnableNetappBackend}
cinder::backend::netapp::volume_backend_name: {get_param: CinderNetappBackendName}
cinder::backend::netapp::netapp_login: {get_param: CinderNetappLogin}
cinder::backend::netapp::netapp_password: {get_param: CinderNetappPassword}
cinder::backend::netapp::netapp_server_hostname: {get_param: CinderNetappServerHostname}
cinder::backend::netapp::netapp_server_port: {get_param: CinderNetappServerPort}
cinder::backend::netapp::netapp_size_multiplier: {get_param: CinderNetappSizeMultiplier}
cinder::backend::netapp::netapp_storage_family: {get_param: CinderNetappStorageFamily}
cinder::backend::netapp::netapp_storage_protocol: {get_param: CinderNetappStorageProtocol}
cinder::backend::netapp::netapp_transport_type: {get_param: CinderNetappTransportType}
cinder::backend::netapp::netapp_vfiler: {get_param: CinderNetappVfiler}
cinder::backend::netapp::netapp_volume_list: {get_param: CinderNetappVolumeList}
cinder::backend::netapp::netapp_vserver: {get_param: CinderNetappVserver}
cinder::backend::netapp::netapp_partner_backend_name: {get_param: CinderNetappPartnerBackendName}
cinder::backend::netapp::nfs_shares: {get_param: CinderNetappNfsShares}
cinder::backend::netapp::nfs_shares_config: {get_param: CinderNetappNfsSharesConfig}
cinder::backend::netapp::nfs_mount_options: {get_param: CinderNetappNfsMountOptions}
cinder::backend::netapp::netapp_copyoffload_tool_path: {get_param: CinderNetappCopyOffloadToolPath}
cinder::backend::netapp::netapp_controller_ips: {get_param: CinderNetappControllerIps}
cinder::backend::netapp::netapp_sa_password: {get_param: CinderNetappSaPassword}
cinder::backend::netapp::netapp_storage_pools: {get_param: CinderNetappStoragePools}
cinder::backend::netapp::netapp_host_type: {get_param: CinderNetappHostType}
cinder::backend::netapp::netapp_webservice_path: {get_param: CinderNetappWebservicePath}
cinder::backend::netapp::nas_secure_file_operations: {get_param: CinderNetappNasSecureFileOperations}
cinder::backend::netapp::nas_secure_file_permissions: {get_param: CinderNetappNasSecureFilePermissions}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: {get_param: CinderEnableNetappBackend}
cinder::backend::netapp::volume_backend_name: {get_param: CinderNetappBackendName}
cinder::backend::netapp::netapp_login: {get_param: CinderNetappLogin}
cinder::backend::netapp::netapp_password: {get_param: CinderNetappPassword}
cinder::backend::netapp::netapp_server_hostname: {get_param: CinderNetappServerHostname}
cinder::backend::netapp::netapp_server_port: {get_param: CinderNetappServerPort}
cinder::backend::netapp::netapp_size_multiplier: {get_param: CinderNetappSizeMultiplier}
cinder::backend::netapp::netapp_storage_family: {get_param: CinderNetappStorageFamily}
cinder::backend::netapp::netapp_storage_protocol: {get_param: CinderNetappStorageProtocol}
cinder::backend::netapp::netapp_transport_type: {get_param: CinderNetappTransportType}
cinder::backend::netapp::netapp_vfiler: {get_param: CinderNetappVfiler}
cinder::backend::netapp::netapp_volume_list: {get_param: CinderNetappVolumeList}
cinder::backend::netapp::netapp_vserver: {get_param: CinderNetappVserver}
cinder::backend::netapp::netapp_partner_backend_name: {get_param: CinderNetappPartnerBackendName}
cinder::backend::netapp::nfs_shares: {get_param: CinderNetappNfsShares}
cinder::backend::netapp::nfs_shares_config: {get_param: CinderNetappNfsSharesConfig}
cinder::backend::netapp::nfs_mount_options: {get_param: CinderNetappNfsMountOptions}
cinder::backend::netapp::netapp_copyoffload_tool_path: {get_param: CinderNetappCopyOffloadToolPath}
cinder::backend::netapp::netapp_controller_ips: {get_param: CinderNetappControllerIps}
cinder::backend::netapp::netapp_sa_password: {get_param: CinderNetappSaPassword}
cinder::backend::netapp::netapp_storage_pools: {get_param: CinderNetappStoragePools}
cinder::backend::netapp::netapp_host_type: {get_param: CinderNetappHostType}
cinder::backend::netapp::netapp_webservice_path: {get_param: CinderNetappWebservicePath}
cinder::backend::netapp::nas_secure_file_operations: {get_param: CinderNetappNasSecureFileOperations}
cinder::backend::netapp::nas_secure_file_permissions: {get_param: CinderNetappNasSecureFilePermissions}
-
if:
- {equals : [{get_param: CinderNetappAvailabilityZone}, '']}
- {}
- cinder::backend::netapp::backend_availability_zone: {get_param: CinderNetappAvailabilityZone}

40
puppet/services/cinder-backend-nvmeof.yaml

@ -7,6 +7,12 @@ parameters:
CinderNVMeOFBackendName:
type: string
default: 'tripleo_nvmeof'
CinderNVMeOFAvailabilityZone:
default: ''
description: >
The availability zone of the NVMeOF Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderNVMeOFTargetPort:
type: number
default: 4460
@ -58,17 +64,23 @@ outputs:
value:
service_name: cinder_backend_nvmeof
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_nvmeof_backend: true
tripleo::profile::base::cinder::volume::nvmeof::volume_backend_name: {get_param: CinderNVMeOFBackendName}
tripleo::profile::base::cinder::volume::nvmeof::target_port: {get_param: CinderNVMeOFTargetPort}
tripleo::profile::base::cinder::volume::nvmeof::target_helper: {get_param: CinderNVMeOFTargetHelper}
tripleo::profile::base::cinder::volume::nvmeof::target_protocol: {get_param: CinderNVMeOFTargetProtocol}
tripleo::profile::base::cinder::volume::nvmeof::target_prefix: {get_param: CinderNVMeOFTargetPrefix}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_port_id: {get_param: CinderNVMeOFTargetPortId}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_ns_id: {get_param: CinderNVMeOFTargetNameSpaceId}
tripleo::profile::base::cinder::volume::nvmeof::target_ip_address:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, CinderIscsiNetwork]}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_nvmeof_backend: true
tripleo::profile::base::cinder::volume::nvmeof::volume_backend_name: {get_param: CinderNVMeOFBackendName}
tripleo::profile::base::cinder::volume::nvmeof::target_port: {get_param: CinderNVMeOFTargetPort}
tripleo::profile::base::cinder::volume::nvmeof::target_helper: {get_param: CinderNVMeOFTargetHelper}
tripleo::profile::base::cinder::volume::nvmeof::target_protocol: {get_param: CinderNVMeOFTargetProtocol}
tripleo::profile::base::cinder::volume::nvmeof::target_prefix: {get_param: CinderNVMeOFTargetPrefix}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_port_id: {get_param: CinderNVMeOFTargetPortId}
tripleo::profile::base::cinder::volume::nvmeof::nvmet_ns_id: {get_param: CinderNVMeOFTargetNameSpaceId}
tripleo::profile::base::cinder::volume::nvmeof::target_ip_address:
str_replace:
template:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, CinderIscsiNetwork]}
-
if:
- {equals : [{get_param: CinderNVMeOFAvailabilityZone}, '']}
- {}
- tripleo::profile::base::cinder::volume::nvmeof::backend_availability_zone: {get_param: CinderNVMeOFAvailabilityZone}

26
puppet/services/cinder-backend-pure.yaml

@ -49,6 +49,12 @@ parameters:
CinderPureBackendName:
type: string
default: 'tripleo_pure'
CinderPureAvailabilityZone:
default: ''
description: >
The availability zone of the Pure Storage Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderPureStorageProtocol:
type: string
default: 'iSCSI'
@ -69,10 +75,16 @@ outputs:
value:
service_name: cinder_backend_pure
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_pure_backend: {get_param: CinderEnablePureBackend}
cinder::backend::pure::volume_backend_name: {get_param: CinderPureBackendName}
cinder::backend::pure::pure_storage_protocol: {get_param: CinderPureStorageProtocol}
cinder::backend::pure::san_ip: {get_param: CinderPureSanIp}
cinder::backend::pure::pure_api_token: {get_input: PureAPIToken}
cinder::backend::pure::use_chap_auth: {get_input: PureUseChap}
cinder::backend::pure::use_multipath_for_image_xfer: {get_input: PureMultipathXfer}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_pure_backend: {get_param: CinderEnablePureBackend}
cinder::backend::pure::volume_backend_name: {get_param: CinderPureBackendName}
cinder::backend::pure::pure_storage_protocol: {get_param: CinderPureStorageProtocol}
cinder::backend::pure::san_ip: {get_param: CinderPureSanIp}
cinder::backend::pure::pure_api_token: {get_input: PureAPIToken}
cinder::backend::pure::use_chap_auth: {get_input: PureUseChap}
cinder::backend::pure::use_multipath_for_image_xfer: {get_input: PureMultipathXfer}
-
if:
- {equals : [{get_param: CinderPureAvailabilityZone}, '']}
- {}
- cinder::backend::pure::backend_availability_zone: {get_param: CinderPureAvailabilityZone}

46
puppet/services/cinder-backend-scaleio.yaml

@ -23,6 +23,12 @@ parameters:
CinderScaleIOBackendName:
type: string
default: 'tripleo_scaleio'
CinderScaleIOAvailabilityZone:
default: ''
description: >
The availability zone of the ScaleIO Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderScaleIOSanIp:
type: string
default: ''
@ -102,20 +108,26 @@ outputs:
value:
service_name: cinder_backend_scaleio
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_scaleio_backend: {get_param: CinderEnableScaleIOBackend}
cinder::backend::scaleio::volume_backend_name: {get_param: CinderScaleIOBackendName}
cinder::backend::scaleio::sio_login: {get_param: CinderScaleIOSanLogin}
cinder::backend::scaleio::sio_password: {get_param: CinderScaleIOSanPassword}
cinder::backend::scaleio::sio_server_hostname: {get_param: CinderScaleIOSanIp}
cinder::backend::scaleio::sio_server_port: {get_param: CinderScaleIORestServerPort}
cinder::backend::scaleio::sio_verify_server_certificate: {get_param: CinderScaleIOVerifyServerCertificate}
cinder::backend::scaleio::sio_server_certificate_path: {get_param: CinderScaleIOServerCertificatePath}
cinder::backend::scaleio::sio_protection_domain_name: {get_param: CinderScaleIOProtectionDomainName}
cinder::backend::scaleio::sio_protection_domain_id: {get_param: CinderScaleIOProtectionDomainId}
cinder::backend::scaleio::sio_storage_pool_id: {get_param: CinderScaleIOStoragePoolId}
cinder::backend::scaleio::sio_storage_pool_name: {get_param: CinderScaleIOStoragePoolName}
cinder::backend::scaleio::sio_storage_pools: {get_param: CinderScaleIOStoragePools}
cinder::backend::scaleio::sio_round_volume_capacity: {get_param: CinderScaleIORoundVolumeCapacity}
cinder::backend::scaleio::sio_unmap_volume_before_deletion: {get_param: CinderScaleIOUnmapVolumeBeforeDeletion}
cinder::backend::scaleio::sio_max_over_subscription_ratio: {get_param: CinderScaleIOMaxOverSubscriptionRatio}
cinder::backend::scaleio::sio_thin_provision: {get_param: CinderScaleIOSanThinProvision}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_scaleio_backend: {get_param: CinderEnableScaleIOBackend}
cinder::backend::scaleio::volume_backend_name: {get_param: CinderScaleIOBackendName}
cinder::backend::scaleio::sio_login: {get_param: CinderScaleIOSanLogin}
cinder::backend::scaleio::sio_password: {get_param: CinderScaleIOSanPassword}
cinder::backend::scaleio::sio_server_hostname: {get_param: CinderScaleIOSanIp}
cinder::backend::scaleio::sio_server_port: {get_param: CinderScaleIORestServerPort}
cinder::backend::scaleio::sio_verify_server_certificate: {get_param: CinderScaleIOVerifyServerCertificate}
cinder::backend::scaleio::sio_server_certificate_path: {get_param: CinderScaleIOServerCertificatePath}
cinder::backend::scaleio::sio_protection_domain_name: {get_param: CinderScaleIOProtectionDomainName}
cinder::backend::scaleio::sio_protection_domain_id: {get_param: CinderScaleIOProtectionDomainId}
cinder::backend::scaleio::sio_storage_pool_id: {get_param: CinderScaleIOStoragePoolId}
cinder::backend::scaleio::sio_storage_pool_name: {get_param: CinderScaleIOStoragePoolName}
cinder::backend::scaleio::sio_storage_pools: {get_param: CinderScaleIOStoragePools}
cinder::backend::scaleio::sio_round_volume_capacity: {get_param: CinderScaleIORoundVolumeCapacity}
cinder::backend::scaleio::sio_unmap_volume_before_deletion: {get_param: CinderScaleIOUnmapVolumeBeforeDeletion}
cinder::backend::scaleio::sio_max_over_subscription_ratio: {get_param: CinderScaleIOMaxOverSubscriptionRatio}
cinder::backend::scaleio::sio_thin_provision: {get_param: CinderScaleIOSanThinProvision}
-
if:
- {equals : [{get_param: CinderScaleIOAvailabilityZone}, '']}
- {}
- cinder::backend::scaleio::backend_availability_zone: {get_param: CinderScaleIOAvailabilityZone}

14
puppet/services/cinder-backend-veritas-hyperscale.yaml

@ -17,6 +17,12 @@ description: >
Openstack Veritas HyperScale backend
parameters:
CinderVeritasHyperScaleAvailabilityZone:
default: ''
description: >
The availability zone of the Veritas HyperScale Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
ServiceData:
default: {}
description: Dictionary packing service data
@ -51,4 +57,10 @@ outputs:
value:
service_name: cinder_backend_veritas_hyperscale
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_vrts_hs_backend: true
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_vrts_hs_backend: true
-
if:
- {equals : [{get_param: CinderVeritasHyperScaleAvailabilityZone}, '']}
- {}
- cinder::backend::veritas_hyperscale::backend_availability_zone: {get_param: CinderVeritasHyperScaleAvailabilityZone}

5
puppet/services/cinder-base.yaml

@ -4,6 +4,10 @@ description: >
OpenStack Cinder base service. Shared by all Cinder services.
parameters:
CinderStorageAvailabilityZone:
default: nova
description: The Cinder service's storage availability zone.
type: string
CinderPassword:
description: The password for the cinder service account, used by cinder-api.
type: string
@ -127,6 +131,7 @@ outputs:
- service_debug_unset
- {get_param: Debug }
- {get_param: CinderDebug }
cinder::storage_availability_zone: {get_param: CinderStorageAvailabilityZone}
cinder::rabbit_heartbeat_timeout_threshold: 60
cinder::rabbit_userid: {get_param: RpcUserName}
cinder::rabbit_password: {get_param: RpcPassword}

28
puppet/services/cinder-hpelefthand-iscsi.yaml

@ -15,6 +15,12 @@ parameters:
CinderHPELeftHandISCSIBackendName:
type: string
default: 'tripleo_hpelefthand'
CinderHPELeftHandISCSIAvailabilityZone:
default: ''
description: >
The availability zone of the HPE LeftHand iSCSI Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderHPELeftHandISCSIChapEnabled:
type: boolean
default: false
@ -56,11 +62,17 @@ outputs:
value:
service_name: cinder_hpelefthand_iscsi
config_settings:
tripleo::profile::base::cinder::volume::cinder_enable_hpelefthand_backend: true
cinder::backend::hpelefthand_iscsi::hpelefthand_api_url: {get_param: CinderHPELeftHandISCSIApiUrl}
cinder::backend::hpelefthand_iscsi::hpelefthand_username: {get_param: CinderHPELeftHandISCSIUserName}
cinder::backend::hpelefthand_iscsi::hpelefthand_password: {get_param: CinderHPELeftHandISCSIPassword}
cinder::backend::hpelefthand_iscsi::volume_backend_name: {get_param: CinderHPELeftHandISCSIBackendName}
cinder::backend::hpelefthand_iscsi::hpelefthand_iscsi_chap_enabled: {get_param: CinderHPELeftHandISCSIChapEnabled}
cinder::backend::hpelefthand_iscsi::hpelefthand_clustername: {get_param: CinderHPELeftHandClusterName}
cinder::backend::hpelefthand_iscsi::hpelefthand_debug: {get_param: CinderHPELeftHandDebug}
map_merge:
- tripleo::profile::base::cinder::volume::cinder_enable_hpelefthand_backend: true
cinder::backend::hpelefthand_iscsi::hpelefthand_api_url: {get_param: CinderHPELeftHandISCSIApiUrl}
cinder::backend::hpelefthand_iscsi::hpelefthand_username: {get_param: CinderHPELeftHandISCSIUserName}
cinder::backend::hpelefthand_iscsi::hpelefthand_password: {get_param: CinderHPELeftHandISCSIPassword}
cinder::backend::hpelefthand_iscsi::volume_backend_name: {get_param: CinderHPELeftHandISCSIBackendName}
cinder::backend::hpelefthand_iscsi::hpelefthand_iscsi_chap_enabled: {get_param: CinderHPELeftHandISCSIChapEnabled}
cinder::backend::hpelefthand_iscsi::hpelefthand_clustername: {get_param: CinderHPELeftHandClusterName}
cinder::backend::hpelefthand_iscsi::hpelefthand_debug: {get_param: CinderHPELeftHandDebug}
-
if:
- {equals : [{get_param: CinderHPELeftHandISCSIAvailabilityZone}, '']}
- {}
- cinder::backend::hpelefthand_iscsi::backend_availability_zone: {get_param: CinderHPELeftHandISCSIAvailabilityZone}

33
puppet/services/cinder-volume.yaml

@ -16,6 +16,12 @@ parameters:
default: false
description: Whether to enable or not the Rbd backend for Cinder
type: boolean
CinderISCSIAvailabilityZone:
default: ''
description: >
The availability zone of the Iscsi Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderISCSIHelper:
default: lioadm
description: The iSCSI helper to use with cinder.
@ -28,6 +34,12 @@ parameters:
default: 10280
description: The size of the loopback file used by the cinder LVM driver.
type: number
CinderNfsAvailabilityZone:
default: ''
description: >
The availability zone of the NFS Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderNfsMountOptions:
default: ''
description: >
@ -54,6 +66,12 @@ parameters:
Valid values are 'auto', 'true' or 'false'. Effective when
CinderEnableNfsBackend is true.
type: string
CinderRbdAvailabilityZone:
default: ''
description: >
The availability zone of the RBD Cinder backend.
When set, it overrides the default CinderStorageAvailabilityZone.
type: string
CinderRbdPoolName:
default: volumes
type: string
@ -170,6 +188,21 @@ outputs:
"%{hiera('$NETWORK')}"
params:
$NETWORK: {get_param: [ServiceNetMap, CinderIscsiNetwork]}
-
if:
- {equals : [{get_param: CinderISCSIAvailabilityZone}, '']}
- {}
- tripleo::profile::base::cinder::volume::iscsi::backend_availability_zone: {get_param: CinderISCSIAvailabilityZone}
-
if:
- {equals : [{get_param: CinderNfsAvailabilityZone}, '']}
- {}
- tripleo::profile::base::cinder::volume::nfs::backend_availability_zone: {get_param: CinderNfsAvailabilityZone}
-
if:
- {equals : [{get_param: CinderRbdAvailabilityZone}, '']}
- {}
- tripleo::profile::base::cinder::volume::rbd::backend_availability_zone: {get_param: CinderRbdAvailabilityZone}
service_config_settings:
fluentd:
tripleo_fluentd_groups_cinder_volume:

11
releasenotes/notes/add-cinder-storage-az-parameters-cddf410bc3464193.yaml

@ -0,0 +1,11 @@
---
features:
- |
Add CinderStorageAvailabilityZone parameter that configures
cinder's DEFAULT/storage_availability_zone. The default value
of 'nova' matches cinder's own default value.
Add several CinderXXXAvailabilityZone parameters, where XXX is
any of the cinder volume service's storage backends. The
parameters are optional, and when set they override the
"backend_availability_zone" for the corresponding backend.
Loading…
Cancel
Save