diff --git a/deployment/cinder/cinder-backend-dellemc-vnx-puppet.yaml b/deployment/cinder/cinder-backend-dellemc-vnx-puppet.yaml index dc67fa710b..36372ae5c5 100644 --- a/deployment/cinder/cinder-backend-dellemc-vnx-puppet.yaml +++ b/deployment/cinder/cinder-backend-dellemc-vnx-puppet.yaml @@ -21,8 +21,16 @@ parameters: type: boolean default: true CinderDellEMCVNXBackendName: - type: string + type: comma_delimited_list default: tripleo_dellemc_vnx + description: A list of Cinder Dell EMC VNX backend names. + CinderDellEMCVNXMultiConfig: + type: json + default: {} + description: > + Dictionary of settings when configuring multiple Dell EMC VNX backends. + The hash key is the backend name, and the value is a dictionary of + parameter values unique to that backend. CinderDellEMCVNXAvailabilityZone: default: '' description: > @@ -95,6 +103,7 @@ outputs: 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::volume_multi_config: {get_param: CinderDellEMCVNXMultiConfig} 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} diff --git a/environments/cinder-dellemc-vnx-config.yaml b/environments/cinder-dellemc-vnx-config.yaml index fa3e36afc5..9d64072770 100644 --- a/environments/cinder-dellemc-vnx-config.yaml +++ b/environments/cinder-dellemc-vnx-config.yaml @@ -6,6 +6,7 @@ resource_registry: parameter_defaults: CinderEnableDellEMCVNXBackend: true CinderDellEMCVNXBackendName: 'tripleo_dellemc_vnx' + CinderDellEMCVNXMultiConfig: {} CinderDellEMCVNXSanIp: '' CinderDellEMCVNXSanLogin: 'admin' CinderDellEMCVNXSanPassword: '' @@ -17,3 +18,16 @@ parameter_defaults: CinderDellEMCVNXAuthType: 'global' CinderDellEMCVNXStorageSecurityFileDir: '' CinderDellEMCVNXNaviSecCliPath: '/opt/Navisphere/bin/naviseccli' + +# To configure multiple Dell EMC VNX backends, use CinderDellEMCVNXMultiConfig to +# assign parameter values specific to that backend. For example: +# CinderDellEMCVNXBackendName: +# - tripleo_dellemc_vnx_1 +# - tripleo_dellemc_vnx_2 +# CinderDellEMCVNXMultiConfig: +# tripleo_dellemc_vnx_1: +# CinderDellEMCVNXStoragePoolNames: 'pool1' +# tripleo_dellemc_vnx_2: +# CinderDellEMCVNXSanIp: '192.0.2.10' +# CinderDellEMCVNXSanLogin: 'root' +# CinderDellEMCVNXSanPassword: 'vnxroot' diff --git a/releasenotes/notes/cinder-multiple-dellemc_vnx-backends-930c8e9309a6ccf5.yaml b/releasenotes/notes/cinder-multiple-dellemc_vnx-backends-930c8e9309a6ccf5.yaml new file mode 100644 index 0000000000..4c3964bc1e --- /dev/null +++ b/releasenotes/notes/cinder-multiple-dellemc_vnx-backends-930c8e9309a6ccf5.yaml @@ -0,0 +1,7 @@ +--- +features: + - | + Support deploying multiple Cinder Dell EMC VNX storage backends. + CinderDellEMCVNXBackendName is enhanced to support a list of backend names, + and a new ``CinderDellEMCVNXMultiConfig`` parameter provides a way to + specify parameter values for each backend.