Add composable role support for NetApp Cinder back end
Convert NetApp Cinder back end to support composable roles via new "CinderBackendNetApp" service. Closes-Bug: #1680568 Change-Id: Ia3a78a48c32997c9d3cbe1629c2043cfc5249e1c
This commit is contained in:
parent
2bc62ed305
commit
c533a3219e
@ -1,7 +1,7 @@
|
||||
# A Heat environment file which can be used to enable a
|
||||
# a Cinder NetApp backend, configured via puppet
|
||||
resource_registry:
|
||||
OS::TripleO::ControllerExtraConfigPre: ../puppet/extraconfig/pre_deploy/controller/cinder-netapp.yaml
|
||||
OS::TripleO::Services::CinderBackendNetApp: ../puppet/services/cinder-backend-netapp.yaml
|
||||
|
||||
parameter_defaults:
|
||||
CinderEnableNetappBackend: true
|
||||
|
@ -242,6 +242,7 @@ resource_registry:
|
||||
OS::TripleO::Services::Zaqar: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
|
||||
OS::TripleO::Services::NeutronML2FujitsuFossw: OS::Heat::None
|
||||
OS::TripleO::Services::CinderBackendNetApp: OS::Heat::None
|
||||
OS::TripleO::Services::CinderHPELeftHandISCSI: OS::Heat::None
|
||||
OS::TripleO::Services::Etcd: OS::Heat::None
|
||||
OS::TripleO::Services::Ec2Api: OS::Heat::None
|
||||
|
@ -467,7 +467,6 @@ resources:
|
||||
- all_nodes # provided by allNodesConfig
|
||||
- vip_data # provided by allNodesConfig
|
||||
- '"%{::osfamily}"'
|
||||
- cinder_netapp_data # Optionally provided by ControllerExtraConfigPre
|
||||
- neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
|
||||
- neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
|
||||
- cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
|
||||
|
@ -1,157 +0,0 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: Configure hieradata for Cinder Netapp configuration
|
||||
|
||||
parameters:
|
||||
server:
|
||||
description: ID of the controller node to apply this config to
|
||||
type: string
|
||||
|
||||
# Config specific parameters, to be provided via parameter_defaults
|
||||
CinderEnableNetappBackend:
|
||||
type: boolean
|
||||
default: true
|
||||
CinderNetappBackendName:
|
||||
type: string
|
||||
default: 'tripleo_netapp'
|
||||
CinderNetappLogin:
|
||||
type: string
|
||||
CinderNetappPassword:
|
||||
type: string
|
||||
hidden: true
|
||||
CinderNetappServerHostname:
|
||||
type: string
|
||||
CinderNetappServerPort:
|
||||
type: string
|
||||
default: '80'
|
||||
CinderNetappSizeMultiplier:
|
||||
type: string
|
||||
default: '1.2'
|
||||
CinderNetappStorageFamily:
|
||||
type: string
|
||||
default: 'ontap_cluster'
|
||||
CinderNetappStorageProtocol:
|
||||
type: string
|
||||
default: 'nfs'
|
||||
CinderNetappTransportType:
|
||||
type: string
|
||||
default: 'http'
|
||||
CinderNetappVfiler:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappVolumeList:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappVserver:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappPartnerBackendName:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappNfsShares:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappNfsSharesConfig:
|
||||
type: string
|
||||
default: '/etc/cinder/shares.conf'
|
||||
CinderNetappNfsMountOptions:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappCopyOffloadToolPath:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappControllerIps:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappSaPassword:
|
||||
type: string
|
||||
default: ''
|
||||
hidden: true
|
||||
CinderNetappStoragePools:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappHostType:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappWebservicePath:
|
||||
type: string
|
||||
default: '/devmgr/v2'
|
||||
# DEPRECATED options for compatibility with older versions
|
||||
CinderNetappEseriesHostType:
|
||||
type: string
|
||||
default: 'linux_dm_mp'
|
||||
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
description: Do not use deprecated params, they will be removed.
|
||||
parameters:
|
||||
- CinderNetappEseriesHostType
|
||||
|
||||
resources:
|
||||
CinderNetappConfig:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: hiera
|
||||
config:
|
||||
datafiles:
|
||||
cinder_netapp_data:
|
||||
mapped_data:
|
||||
tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: {get_input: EnableNetappBackend}
|
||||
cinder::backend::netapp::title: {get_input: NetappBackendName}
|
||||
cinder::backend::netapp::netapp_login: {get_input: NetappLogin}
|
||||
cinder::backend::netapp::netapp_password: {get_input: NetappPassword}
|
||||
cinder::backend::netapp::netapp_server_hostname: {get_input: NetappServerHostname}
|
||||
cinder::backend::netapp::netapp_server_port: {get_input: NetappServerPort}
|
||||
cinder::backend::netapp::netapp_size_multiplier: {get_input: NetappSizeMultiplier}
|
||||
cinder::backend::netapp::netapp_storage_family: {get_input: NetappStorageFamily}
|
||||
cinder::backend::netapp::netapp_storage_protocol: {get_input: NetappStorageProtocol}
|
||||
cinder::backend::netapp::netapp_transport_type: {get_input: NetappTransportType}
|
||||
cinder::backend::netapp::netapp_vfiler: {get_input: NetappVfiler}
|
||||
cinder::backend::netapp::netapp_volume_list: {get_input: NetappVolumeList}
|
||||
cinder::backend::netapp::netapp_vserver: {get_input: NetappVserver}
|
||||
cinder::backend::netapp::netapp_partner_backend_name: {get_input: NetappPartnerBackendName}
|
||||
cinder::backend::netapp::nfs_shares: {get_input: NetappNfsShares}
|
||||
cinder::backend::netapp::nfs_shares_config: {get_input: NetappNfsSharesConfig}
|
||||
cinder::backend::netapp::nfs_mount_options: {get_input: NetappNfsMountOptions}
|
||||
cinder::backend::netapp::netapp_copyoffload_tool_path: {get_input: NetappCopyOffloadToolPath}
|
||||
cinder::backend::netapp::netapp_controller_ips: {get_input: NetappControllerIps}
|
||||
cinder::backend::netapp::netapp_sa_password: {get_input: NetappSaPassword}
|
||||
cinder::backend::netapp::netapp_storage_pools: {get_input: NetappStoragePools}
|
||||
cinder::backend::netapp::netapp_host_type: {get_input: NetappHostType}
|
||||
cinder::backend::netapp::netapp_webservice_path: {get_input: NetappWebservicePath}
|
||||
|
||||
CinderNetappDeployment:
|
||||
type: OS::Heat::StructuredDeployment
|
||||
properties:
|
||||
name: CinderNetappDeployment
|
||||
config: {get_resource: CinderNetappConfig}
|
||||
server: {get_param: server}
|
||||
input_values:
|
||||
EnableNetappBackend: {get_param: CinderEnableNetappBackend}
|
||||
NetappBackendName: {get_param: CinderNetappBackendName}
|
||||
NetappLogin: {get_param: CinderNetappLogin}
|
||||
NetappPassword: {get_param: CinderNetappPassword}
|
||||
NetappServerHostname: {get_param: CinderNetappServerHostname}
|
||||
NetappServerPort: {get_param: CinderNetappServerPort}
|
||||
NetappSizeMultiplier: {get_param: CinderNetappSizeMultiplier}
|
||||
NetappStorageFamily: {get_param: CinderNetappStorageFamily}
|
||||
NetappStorageProtocol: {get_param: CinderNetappStorageProtocol}
|
||||
NetappTransportType: {get_param: CinderNetappTransportType}
|
||||
NetappVfiler: {get_param: CinderNetappVfiler}
|
||||
NetappVolumeList: {get_param: CinderNetappVolumeList}
|
||||
NetappVserver: {get_param: CinderNetappVserver}
|
||||
NetappPartnerBackendName: {get_param: CinderNetappPartnerBackendName}
|
||||
NetappNfsShares: {get_param: CinderNetappNfsShares}
|
||||
NetappNfsSharesConfig: {get_param: CinderNetappNfsSharesConfig}
|
||||
NetappNfsMountOptions: {get_param: CinderNetappNfsMountOptions}
|
||||
NetappCopyOffloadToolPath: {get_param: CinderNetappCopyOffloadToolPath}
|
||||
NetappControllerIps: {get_param: CinderNetappControllerIps}
|
||||
NetappSaPassword: {get_param: CinderNetappSaPassword}
|
||||
NetappStoragePools: {get_param: CinderNetappStoragePools}
|
||||
NetappHostType: {get_param: CinderNetappHostType}
|
||||
NetappWebservicePath: {get_param: CinderNetappWebservicePath}
|
||||
|
||||
outputs:
|
||||
deploy_stdout:
|
||||
description: Deployment reference, used to trigger puppet apply on changes
|
||||
value: {get_attr: [CinderNetappDeployment, deploy_stdout]}
|
129
puppet/services/cinder-backend-netapp.yaml
Normal file
129
puppet/services/cinder-backend-netapp.yaml
Normal file
@ -0,0 +1,129 @@
|
||||
heat_template_version: ocata
|
||||
|
||||
description: Openstack Cinder Netapp backend
|
||||
|
||||
parameters:
|
||||
CinderEnableNetappBackend:
|
||||
type: boolean
|
||||
default: true
|
||||
CinderNetappBackendName:
|
||||
type: string
|
||||
default: 'tripleo_netapp'
|
||||
CinderNetappLogin:
|
||||
type: string
|
||||
CinderNetappPassword:
|
||||
type: string
|
||||
hidden: true
|
||||
CinderNetappServerHostname:
|
||||
type: string
|
||||
CinderNetappServerPort:
|
||||
type: string
|
||||
default: '80'
|
||||
CinderNetappSizeMultiplier:
|
||||
type: string
|
||||
default: '1.2'
|
||||
CinderNetappStorageFamily:
|
||||
type: string
|
||||
default: 'ontap_cluster'
|
||||
CinderNetappStorageProtocol:
|
||||
type: string
|
||||
default: 'nfs'
|
||||
CinderNetappTransportType:
|
||||
type: string
|
||||
default: 'http'
|
||||
CinderNetappVfiler:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappVolumeList:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappVserver:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappPartnerBackendName:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappNfsShares:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappNfsSharesConfig:
|
||||
type: string
|
||||
default: '/etc/cinder/shares.conf'
|
||||
CinderNetappNfsMountOptions:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappCopyOffloadToolPath:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappControllerIps:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappSaPassword:
|
||||
type: string
|
||||
default: ''
|
||||
hidden: true
|
||||
CinderNetappStoragePools:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappHostType:
|
||||
type: string
|
||||
default: ''
|
||||
CinderNetappWebservicePath:
|
||||
type: string
|
||||
default: '/devmgr/v2'
|
||||
# DEPRECATED options for compatibility with older versions
|
||||
CinderNetappEseriesHostType:
|
||||
type: string
|
||||
default: 'linux_dm_mp'
|
||||
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
|
||||
EndpointMap:
|
||||
default: {}
|
||||
type: json
|
||||
description: Mapping of service endpoint -> protocol. Typically set
|
||||
via parameter_defaults in the resource registry.
|
||||
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
description: Do not use deprecated params, they will be removed.
|
||||
parameters:
|
||||
- CinderNetappEseriesHostType
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Cinder NetApp backend.
|
||||
value:
|
||||
service_name: cinder_backend_netapp
|
||||
config_settings:
|
||||
tripleo::profile::base::cinder::volume::cinder_enable_netapp_backend: {get_param: CinderEnableNetappBackend}
|
||||
cinder::backend::netapp::title: {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}
|
||||
step_config: |
|
||||
include ::tripleo::profile::base::cinder::volume
|
@ -43,6 +43,7 @@
|
||||
- OS::TripleO::Services::CinderBackup
|
||||
- OS::TripleO::Services::CinderScheduler
|
||||
- OS::TripleO::Services::CinderVolume
|
||||
- OS::TripleO::Services::CinderBackendNetApp
|
||||
- OS::TripleO::Services::Congress
|
||||
- OS::TripleO::Services::Kernel
|
||||
- OS::TripleO::Services::Keystone
|
||||
|
Loading…
Reference in New Issue
Block a user