Support for Dell EMC VXFlexOS Backend
Adding support for VXFlexOS Volume Backend Change-Id: I9e8e3b4395c25a0458d28b15666768152736c752 Closes-Bug: 1875176 (cherry picked from commit57652b8efe
) (cherry picked from commit71919ffed8
)
This commit is contained in:
parent
5f75895c51
commit
8ba26c4a75
148
deployment/cinder/cinder-backend-dellemc-vxflexos-puppet.yaml
Normal file
148
deployment/cinder/cinder-backend-dellemc-vxflexos-puppet.yaml
Normal file
@ -0,0 +1,148 @@
|
||||
# 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 VxFlexOS backend
|
||||
|
||||
parameters:
|
||||
CinderEnableVxFlexOSBackend:
|
||||
type: boolean
|
||||
default: true
|
||||
CinderVxFlexOSBackendName:
|
||||
type: string
|
||||
default: 'tripleo_dellemc_VxFlexOS'
|
||||
CinderVxFlexOSAvailabilityZone:
|
||||
default: ''
|
||||
description: >
|
||||
The availability zone of the VxFlexOS Cinder backend.
|
||||
When set, it overrides the default CinderStorageAvailabilityZone.
|
||||
type: string
|
||||
CinderVxFlexOSSanIp:
|
||||
type: string
|
||||
description: VxFlexOS Gateway server IP
|
||||
CinderVxFlexOSSanLogin:
|
||||
type: string
|
||||
description: VxFlexOS user credentials.
|
||||
CinderVxFlexOSSanPassword:
|
||||
type: string
|
||||
hidden: true
|
||||
description: VxFlexOS user password.
|
||||
CinderVxFlexOSStoragePools:
|
||||
type: string
|
||||
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
|
||||
CinderVxFlexOSAllowMigrationDuringRebuild:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Allow volume migration during rebuild.
|
||||
CinderVxFlexOSAllowNonPaddedVolumes:
|
||||
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.
|
||||
CinderVxFlexOSMaxOverSubscriptionRatio:
|
||||
type: number
|
||||
default: 10.0
|
||||
description: Maximum value allowed is 10.0.
|
||||
CinderVxFlexOSRestServerPort:
|
||||
type: number
|
||||
default: 443
|
||||
description: (Port(min=0, max=65535)) VxFlexOS Gateway REST server port.
|
||||
CinderVxFlexOSRoundVolumeCapacity:
|
||||
type: boolean
|
||||
default: true
|
||||
description: >
|
||||
Round volume sizes up to 8GB boundaries. VxFlex OS requires volumes to be
|
||||
sized in multiples of 8GB. If set to False, volume creation will fail for
|
||||
volumes not sized properly.
|
||||
CinderVxFlexOSServerApiVersion:
|
||||
type: string
|
||||
default: ''
|
||||
description: VxFlexOS API version.
|
||||
CinderVxFlexOSUnmapVolumeBeforeDeletion:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Unmap volumes before deletion.
|
||||
CinderVxFlexOSSanThinProvision:
|
||||
type: boolean
|
||||
default: true
|
||||
description: Wheater to use thin provisioning or not.
|
||||
CinderVxFlexOSDriverSSLCertVerify:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Verify the server certificate.
|
||||
CinderVxFlexOSDriverSSLCertPath:
|
||||
type: string
|
||||
default: ''
|
||||
description: Server certificate path.
|
||||
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 VxFlexOS backend.
|
||||
value:
|
||||
service_name: cinder_backend_vxflexos
|
||||
config_settings:
|
||||
map_merge:
|
||||
- tripleo::profile::base::cinder::volume::cinder_enable_VxFlexOS_backend: {get_param: CinderEnableVxFlexOSBackend}
|
||||
cinder::backend::dellemc_vxflexos::volume_backend_name: {get_param: CinderVxFlexOSBackendName}
|
||||
cinder::backend::dellemc_vxflexos::san_login: {get_param: CinderVxFlexOSSanLogin}
|
||||
cinder::backend::dellemc_vxflexos::san_password: {get_param: CinderVxFlexOSSanPassword}
|
||||
cinder::backend::dellemc_vxflexos::san_ip: {get_param: CinderVxFlexOSSanIp}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_storage_pools: {get_param: CinderVxFlexOSStoragePools}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_allow_migration_during_rebuild: {get_param: CinderVxFlexOSAllowMigrationDuringRebuild}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_allow_non_padded_volumes: {get_param: CinderVxFlexOSAllowNonPaddedVolumes}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_max_over_subscription_ratio: {get_param: CinderVxFlexOSMaxOverSubscriptionRatio}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_rest_server_port: {get_param: CinderVxFlexOSRestServerPort}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_round_volume_capacity: {get_param: CinderVxFlexOSRoundVolumeCapacity}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_server_api_version: {get_param: CinderVxFlexOSRoundVolumeCapacity}
|
||||
cinder::backend::dellemc_vxflexos::vxflexos_unmap_volume_before_deletion: {get_param: CinderVxFlexOSUnmapVolumeBeforeDeletion}
|
||||
cinder::backend::dellemc_vxflexos::san_thin_provision: {get_param: CinderVxFlexOSSanThinProvision}
|
||||
cinder::backend::dellemc_vxflexos::driver_ssl_cert_verify: {get_param: CinderVxFlexOSDriverSSLCertVerify}
|
||||
cinder::backend::dellemc_vxflexos::driver_ssl_cert_path: {get_param: CinderVxFlexOSDriverSSLCertPath}
|
||||
-
|
||||
if:
|
||||
- {equals : [{get_param: CinderVxFlexOSAvailabilityZone}, '']}
|
||||
- {}
|
||||
- cinder::backend::dellemc_vxflexos::backend_availability_zone: {get_param: CinderVxFlexOSAvailabilityZone}
|
35
environments/cinder-dellemc-vxflexos-config.yaml
Normal file
35
environments/cinder-dellemc-vxflexos-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 VxFlexOS backend, configured via puppet
|
||||
resource_registry:
|
||||
OS::TripleO::Services::CinderBackendVxFlexOS: ../deployment/cinder/cinder-backend-vxflexos-puppet.yaml
|
||||
|
||||
parameter_defaults:
|
||||
CinderEnableVxFlexOSBackend: true
|
||||
CinderVxFlexOSBackendName: 'tripleo_dellemc_vxflexos'
|
||||
CinderVxFlexOSSanIp: ''
|
||||
CinderVxFlexOSSanLogin: ''
|
||||
CinderVxFlexOSSanPassword: ''
|
||||
CinderVxFlexOSStoragePools: 'domain1:pool1'
|
||||
CinderVxFlexOSAllowMigrationDuringRebuild: false
|
||||
CinderVxFlexOSAllowNonPaddedVolumes: false
|
||||
CinderVxFlexOSMaxOverSubscriptionRatio: 7.0
|
||||
CinderVxFlexOSRestServerPort: 443
|
||||
CinderVxFlexOSServerApiVersion: ''
|
||||
CinderVxFlexOSUnmapVolumeBeforeDeletion: false
|
||||
CinderVxFlexOSSanThinProvision: true
|
||||
CinderVxFlexOSDriverSSLCertVerify: false
|
||||
CinderVxFlexOSDriverSSLCertPath: ''
|
@ -290,6 +290,7 @@ resource_registry:
|
||||
OS::TripleO::Services::CinderBackendDellEMCUnity: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCVNX: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCVxFlexOS: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCXtremio: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendNetApp: OS::Heat::None
|
||||
|
4
releasenotes/notes/vxflexos-driver-bec8e372280c44e6.yaml
Normal file
4
releasenotes/notes/vxflexos-driver-bec8e372280c44e6.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
features:
|
||||
- Added support for VxFlexOS cinder block
|
||||
storage backend driver
|
@ -64,6 +64,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
@ -56,6 +56,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
@ -49,6 +49,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
@ -65,6 +65,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
@ -66,6 +66,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
@ -54,6 +54,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellPs
|
||||
|
@ -67,6 +67,7 @@
|
||||
- OS::TripleO::Services::CinderBackendDellEMCUnity
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVMAXISCSI
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVNX
|
||||
- OS::TripleO::Services::CinderBackendDellEMCVxFlexOS
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXtremio
|
||||
- OS::TripleO::Services::CinderBackendDellEMCXTREMIOISCSI
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
|
Loading…
Reference in New Issue
Block a user