Support for PowerFlex Cinder Backend
VxFlex OS driver is rebranded to PowerFlex. This patch adds support for PowerFlex. Will deprecate the VxFlexOS template in a new patch. Depends-On: https://review.opendev.org/#/c/743852/ Change-Id: I94310bf84a0af7a735bd6e1c0038686b0d0abfc8
This commit is contained in:
149
deployment/cinder/cinder-backend-dellemc-powerflex.yaml
Normal file
149
deployment/cinder/cinder-backend-dellemc-powerflex.yaml
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
# Copyright (c) 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 PowerFlex backend
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
CinderEnablePowerFlexBackend:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
CinderPowerFlexBackendName:
|
||||||
|
type: string
|
||||||
|
default: 'tripleo_dellemc_PowerFlex'
|
||||||
|
CinderPowerFlexAvailabilityZone:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
description: >
|
||||||
|
The availability zone of the PowerFlex Cinder backend.
|
||||||
|
When set, it overrides the default CinderStorageAvailabilityZone.
|
||||||
|
CinderPowerFlexSanIp:
|
||||||
|
type: string
|
||||||
|
description: PowerFlex Gateway server IP
|
||||||
|
CinderPowerFlexSanLogin:
|
||||||
|
type: string
|
||||||
|
description: PowerFlex user credentials.
|
||||||
|
CinderPowerFlexSanPassword:
|
||||||
|
type: string
|
||||||
|
hidden: true
|
||||||
|
description: PowerFlex user password.
|
||||||
|
CinderPowerFlexStoragePools:
|
||||||
|
type: comma_delimited_list
|
||||||
|
description: >
|
||||||
|
Storage Pools. Comma separated list of storage pools used to provide
|
||||||
|
volumes. Each pool should be specified as a
|
||||||
|
protection_domain_name:storage_pool_name value
|
||||||
|
CinderPowerFlexAllowMigrationDuringRebuild:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
description: Allow volume migration during rebuild.
|
||||||
|
CinderPowerFlexAllowNonPaddedVolumes:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
description: >
|
||||||
|
Allow volumes to be created in Storage Pools when zero padding is
|
||||||
|
disabled. This option should not be enabled if multiple tenants will
|
||||||
|
utilize volumes from a shared Storage Pool.
|
||||||
|
CinderPowerFlexMaxOverSubscriptionRatio:
|
||||||
|
type: number
|
||||||
|
default: 10.0
|
||||||
|
description: Maximum value allowed is 10.0.
|
||||||
|
CinderPowerFlexRestServerPort:
|
||||||
|
type: number
|
||||||
|
default: 443
|
||||||
|
description: (Port(min=0, max=65535)) PowerFlex Gateway REST server port.
|
||||||
|
CinderPowerFlexRoundVolumeCapacity:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
description: >
|
||||||
|
Round volume sizes up to 8GB boundaries. PowerFlex requires volumes to be
|
||||||
|
sized in multiples of 8GB. If set to False, volume creation will fail for
|
||||||
|
volumes not sized properly.
|
||||||
|
CinderPowerFlexServerApiVersion:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
description: PowerFlex API version. This value should be left as the default
|
||||||
|
value unless otherwise instructed by technical support.
|
||||||
|
CinderPowerFlexUnmapVolumeBeforeDeletion:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
description: Unmap volumes before deletion.
|
||||||
|
CinderPowerFlexSanThinProvision:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
description: Whether to use thin provisioning or not.
|
||||||
|
CinderPowerFlexDriverSSLCertVerify:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
description: Verify the server certificate.
|
||||||
|
CinderPowerFlexDriverSSLCertPath:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
description: Server certificate path.
|
||||||
|
ServiceData:
|
||||||
|
type: json
|
||||||
|
default: {}
|
||||||
|
description: Dictionary packing service data
|
||||||
|
ServiceNetMap:
|
||||||
|
type: json
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service_name -> network name. Typically set
|
||||||
|
via parameter_defaults in the resource registry. This
|
||||||
|
mapping overrides those in ServiceNetMapDefaults.
|
||||||
|
DefaultPasswords:
|
||||||
|
type: json
|
||||||
|
default: {}
|
||||||
|
RoleName:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
description: Role name on which the service is applied
|
||||||
|
RoleParameters:
|
||||||
|
type: json
|
||||||
|
default: {}
|
||||||
|
description: Parameters specific to the role
|
||||||
|
EndpointMap:
|
||||||
|
type: json
|
||||||
|
default: {}
|
||||||
|
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 PowerFlex backend.
|
||||||
|
value:
|
||||||
|
service_name: cinder_backend_powerflex
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- tripleo::profile::base::cinder::volume::cinder_enable_PowerFlex_backend: {get_param: CinderEnablePowerFlexBackend}
|
||||||
|
cinder::backend::dellemc_powerflex::volume_backend_name: {get_param: CinderPowerFlexBackendName}
|
||||||
|
cinder::backend::dellemc_powerflex::san_login: {get_param: CinderPowerFlexSanLogin}
|
||||||
|
cinder::backend::dellemc_powerflex::san_password: {get_param: CinderPowerFlexSanPassword}
|
||||||
|
cinder::backend::dellemc_powerflex::san_ip: {get_param: CinderPowerFlexSanIp}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_storage_pools: {get_param: CinderPowerFlexStoragePools}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_allow_migration_during_rebuild: {get_param: CinderPowerFlexAllowMigrationDuringRebuild}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_allow_non_padded_volumes: {get_param: CinderPowerFlexAllowNonPaddedVolumes}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_max_over_subscription_ratio: {get_param: CinderPowerFlexMaxOverSubscriptionRatio}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_rest_server_port: {get_param: CinderPowerFlexRestServerPort}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_round_volume_capacity: {get_param: CinderPowerFlexRoundVolumeCapacity}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_server_api_version: {get_param: CinderPowerFlexRoundVolumeCapacity}
|
||||||
|
cinder::backend::dellemc_powerflex::powerflex_unmap_volume_before_deletion: {get_param: CinderPowerFlexUnmapVolumeBeforeDeletion}
|
||||||
|
cinder::backend::dellemc_powerflex::san_thin_provision: {get_param: CinderPowerFlexSanThinProvision}
|
||||||
|
cinder::backend::dellemc_powerflex::driver_ssl_cert_verify: {get_param: CinderPowerFlexDriverSSLCertVerify}
|
||||||
|
cinder::backend::dellemc_powerflex::driver_ssl_cert_path: {get_param: CinderPowerFlexDriverSSLCertPath}
|
||||||
|
-
|
||||||
|
if:
|
||||||
|
- {equals : [{get_param: CinderPowerFlexAvailabilityZone}, '']}
|
||||||
|
- {}
|
||||||
|
- cinder::backend::dellemc_powerflex::backend_availability_zone: {get_param: CinderPowerFlexAvailabilityZone}
|
||||||
35
environments/cinder-dellemc-powerflex-config.yaml
Normal file
35
environments/cinder-dellemc-powerflex-config.yaml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
# Copyright (c) 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.
|
||||||
|
#
|
||||||
|
# A Heat environment file which can be used to enable a
|
||||||
|
# a Cinder Dell EMC PowerFlex backend, configured via puppet
|
||||||
|
resource_registry:
|
||||||
|
OS::TripleO::Services::CinderBackendPowerFlex: ../deployment/cinder/cinder-backend-powerflex-puppet.yaml
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
CinderEnablePowerFlexBackend: true
|
||||||
|
CinderPowerFlexBackendName: 'tripleo_dellemc_powerflex'
|
||||||
|
CinderPowerFlexSanIp: ''
|
||||||
|
CinderPowerFlexSanLogin: ''
|
||||||
|
CinderPowerFlexSanPassword: ''
|
||||||
|
CinderPowerFlexStoragePools: 'domain1:pool1'
|
||||||
|
CinderPowerFlexAllowMigrationDuringRebuild: false
|
||||||
|
CinderPowerFlexAllowNonPaddedVolumes: false
|
||||||
|
CinderPowerFlexMaxOverSubscriptionRatio: 7.0
|
||||||
|
CinderPowerFlexRestServerPort: 443
|
||||||
|
CinderPowerFlexServerApiVersion: ''
|
||||||
|
CinderPowerFlexUnmapVolumeBeforeDeletion: false
|
||||||
|
CinderPowerFlexSanThinProvision: true
|
||||||
|
CinderPowerFlexDriverSSLCertVerify: false
|
||||||
|
CinderPowerFlexDriverSSLCertPath: ''
|
||||||
@@ -274,6 +274,7 @@ resource_registry:
|
|||||||
OS::TripleO::Services::Zaqar: OS::Heat::None
|
OS::TripleO::Services::Zaqar: OS::Heat::None
|
||||||
OS::TripleO::Services::CinderBackendDellSc: OS::Heat::None
|
OS::TripleO::Services::CinderBackendDellSc: OS::Heat::None
|
||||||
OS::TripleO::Services::CinderBackendDellEMCSc: OS::Heat::None
|
OS::TripleO::Services::CinderBackendDellEMCSc: OS::Heat::None
|
||||||
|
OS::TripleO::Services::CinderBackendDellEMCPowerFlex: OS::Heat::None
|
||||||
OS::TripleO::Services::CinderBackendDellEMCPowermax: OS::Heat::None
|
OS::TripleO::Services::CinderBackendDellEMCPowermax: OS::Heat::None
|
||||||
OS::TripleO::Services::CinderBackendDellEMCPowerStore: OS::Heat::None
|
OS::TripleO::Services::CinderBackendDellEMCPowerStore: OS::Heat::None
|
||||||
OS::TripleO::Services::CinderBackendDellEMCUnity: OS::Heat::None
|
OS::TripleO::Services::CinderBackendDellEMCUnity: OS::Heat::None
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- Adding support for PowerFlex cinder driver.
|
||||||
@@ -58,6 +58,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -50,6 +50,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -43,6 +43,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -59,6 +59,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -60,6 +60,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -49,6 +49,7 @@
|
|||||||
- OS::TripleO::Services::CephOSD
|
- OS::TripleO::Services::CephOSD
|
||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
@@ -61,6 +61,7 @@
|
|||||||
- OS::TripleO::Services::CertmongerUser
|
- OS::TripleO::Services::CertmongerUser
|
||||||
- OS::TripleO::Services::CinderApi
|
- OS::TripleO::Services::CinderApi
|
||||||
- OS::TripleO::Services::CinderBackendDellSc
|
- OS::TripleO::Services::CinderBackendDellSc
|
||||||
|
- OS::TripleO::Services::CinderBackendDellEMCPowerFlex
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
- OS::TripleO::Services::CinderBackendDellEMCPowermax
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
- OS::TripleO::Services::CinderBackendDellEMCPowerStore
|
||||||
- OS::TripleO::Services::CinderBackendDellEMCSc
|
- OS::TripleO::Services::CinderBackendDellEMCSc
|
||||||
|
|||||||
Reference in New Issue
Block a user