Support for PowerMax Cinder Backend
PowerMax config options have changed since Newton.
Updating them to the latest and support both iSCSI
and FC drivers.
CinderPowermaxBackend is also enhanceded to support
multiple backends. CinderPowermaxBackendName supports a
list of backend names and a new CinderPowermaxMultiConfig
parameter provides a way to specify parameter values for
each backend. For example see file
environments/cinder-dellemc-powermax-config.yaml
Depends-On: https://review.opendev.org/#/c/712184
Change-Id: I4429ed2d45661ea82ae38a7050abb2b229953c9c
(cherry picked from commit 6c234a73ba
)
This commit is contained in:
parent
3c46b0d7f8
commit
26a21d5971
|
@ -0,0 +1,110 @@
|
|||
# Copyright (c) 2016-2020 Dell Inc, or its subsidiaries.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
heat_template_version: rocky
|
||||
|
||||
description: >
|
||||
Openstack Cinder Dell EMC PowerMax backend
|
||||
|
||||
parameters:
|
||||
CinderEnablePowermaxBackend:
|
||||
type: boolean
|
||||
default: true
|
||||
CinderPowermaxBackendName:
|
||||
type: comma_delimited_list
|
||||
default: 'tripleo_dellemc_powermax'
|
||||
description: A list of Cinder PoweMax Storage backend names.
|
||||
CinderPowermaxMultiConfig:
|
||||
type: json
|
||||
default: {}
|
||||
description: >
|
||||
Dictionary of settings when configuring multiple PowerMax backends. The
|
||||
hash key is the backend name, and the value is a dictionary of parameter
|
||||
values unique to that backend.
|
||||
CinderPowermaxAvailabilityZone:
|
||||
default: ''
|
||||
description: >
|
||||
The availability zone of the Dell EMC PowerMax Cinder backend.
|
||||
When set, it overrides the default CinderStorageAvailabilityZone.
|
||||
type: string
|
||||
CinderPowermaxSanIp:
|
||||
type: string
|
||||
CinderPowermaxSanLogin:
|
||||
type: string
|
||||
default: 'Admin'
|
||||
CinderPowermaxSanPassword:
|
||||
type: string
|
||||
hidden: true
|
||||
CinderPowermaxArray:
|
||||
type: string
|
||||
default: ''
|
||||
CinderDellEMCPowermaSrp:
|
||||
type: string
|
||||
default: ''
|
||||
CinderPowermaxPortGroups:
|
||||
type: string
|
||||
default: ''
|
||||
CinderPowermaxStorageProtocol:
|
||||
type: string
|
||||
default: 'iSCSI'
|
||||
constraints:
|
||||
- allowed_values: [ 'iSCSI', 'FC']
|
||||
ServiceData:
|
||||
default: {}
|
||||
description: Dictionary packing service data
|
||||
type: json
|
||||
ServiceNetMap:
|
||||
default: {}
|
||||
description: Mapping of service_name -> network name. Typically set
|
||||
via parameter_defaults in the resource registry. This
|
||||
mapping overrides those in ServiceNetMapDefaults.
|
||||
type: json
|
||||
DefaultPasswords:
|
||||
default: {}
|
||||
type: json
|
||||
RoleName:
|
||||
default: ''
|
||||
description: Role name on which the service is applied
|
||||
type: string
|
||||
RoleParameters:
|
||||
default: {}
|
||||
description: Parameters specific to the role
|
||||
type: json
|
||||
EndpointMap:
|
||||
default: {}
|
||||
type: json
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Cinder Dell EMC PowerMax backend.
|
||||
value:
|
||||
service_name: cinder_backend_dellemc_powermax
|
||||
config_settings:
|
||||
map_merge:
|
||||
- tripleo::profile::base::cinder::volume::cinder_enable_dellemc_powermax_backend: {get_param: CinderEnablePowermaxBackend}
|
||||
cinder::backend::dellemc_powermax::volume_backend_name: {get_param: CinderPowermaxBackendName}
|
||||
cinder::backend::dellemc_powermax::volume_multi_config: {get_param: CinderPowermaxMultiConfig}
|
||||
cinder::backend::dellemc_powermax::san_ip: {get_param: CinderPowermaxSanIp}
|
||||
cinder::backend::dellemc_powermax::san_login: {get_param: CinderPowermaxSanLogin}
|
||||
cinder::backend::dellemc_powermax::san_password: {get_param: CinderPowermaxSanPassword}
|
||||
cinder::backend::dellemc_powermax::powermax_array: {get_param: CinderPowermaxArray}
|
||||
cinder::backend::dellemc_powermax::powermax_srp: {get_param: CinderPowermaxSrp}
|
||||
cinder::backend::dellemc_powermax::powermax_port_groups: {get_param: CinderPowermaxPortGroups}
|
||||
cinder::backend::dellemc_powermax::powermax_storage_protocol: {get_param: CinderPowermaxStorageProtocol}
|
||||
-
|
||||
if:
|
||||
- {equals : [{get_param: CinderPowermaxAvailabilityZone}, '']}
|
||||
- {}
|
||||
- cinder::backend::dellemc_powermax::backend_availability_zone: {get_param: CinderPowermaxAvailabilityZone}
|
|
@ -0,0 +1,29 @@
|
|||
# A Heat environment file which can be used to enable a
|
||||
# Cinder Dell EMC PowerMax backend, configured via puppet.
|
||||
resource_registry:
|
||||
OS::TripleO::Services::CinderBackendDellEMCPowermax: ../deployment/cinder/cinder-backend-dellemc-powermax-puppet.yaml
|
||||
|
||||
parameter_defaults:
|
||||
CinderEnablePowermaxBackend: true
|
||||
CinderPowermaxBackendName: 'tripleo_dellemc_powermax'
|
||||
CinderPowermaxMultiConfig: {}
|
||||
CinderPowermaxAvailabilityZone: ''
|
||||
CinderPowermaxSanIp: ''
|
||||
CinderPowermaxSanLogin: 'Admin'
|
||||
CinderPowermaxSanPassword: ''
|
||||
CinderPowermaxArray: ''
|
||||
CinderPowermaxSrp: ''
|
||||
CinderPowermaxPortGroups: ''
|
||||
CinderPowermaxStorageProtocol: 'iSCSI'
|
||||
|
||||
# To configure multiple Powermax backends, use CinderPowermaxMultiConfig to
|
||||
# assign parameter values specific to that backend. For example:
|
||||
# CinderPowermaxBackendName:
|
||||
# - tripleo_dellemc_powermax_1
|
||||
# - tripleo_dellemc_powermax_2
|
||||
# CinderPowermaxMultiConfig:
|
||||
# tripleo_dellemc_powermax_1:
|
||||
# CinderPowermaxStorageProtocol: 'iSCSI' # Specific value for this backend
|
||||
# tripleo_dellemc_powermax_2:
|
||||
# CinderPowermaxStorageProtocol: 'FC' # Specific value for this backend
|
||||
|
|
@ -285,6 +285,7 @@ resource_registry:
|
|||
OS::TripleO::Services::NeutronML2FujitsuFossw: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellPs: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellSc: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCPowermax: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCUnity: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCVNX: OS::Heat::None
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
features:
|
||||
- Support for PowerMax backend cinder driver.
|
||||
Supports both iSCSI and FC volume drivers
|
||||
and support deploying one or multiple cinder
|
||||
PowerMax storage backends.
|
|
@ -59,6 +59,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -61,6 +61,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -49,6 +49,7 @@
|
|||
- OS::TripleO::Services::CephOSD
|
||||
- OS::TripleO::Services::CertmongerUser
|
||||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
|
@ -62,6 +62,7 @@
|
|||
- OS::TripleO::Services::CinderApi
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
- OS::TripleO::Services::CinderBackendDellSc
|
||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
|
|
Loading…
Reference in New Issue