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 Heat environment file which can be used to enable a
|
||||||
# a Cinder NetApp backend, configured via puppet
|
# a Cinder NetApp backend, configured via puppet
|
||||||
resource_registry:
|
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:
|
parameter_defaults:
|
||||||
CinderEnableNetappBackend: true
|
CinderEnableNetappBackend: true
|
||||||
|
@ -242,6 +242,7 @@ resource_registry:
|
|||||||
OS::TripleO::Services::Zaqar: OS::Heat::None
|
OS::TripleO::Services::Zaqar: OS::Heat::None
|
||||||
OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
|
OS::TripleO::Services::NeutronML2FujitsuCfab: OS::Heat::None
|
||||||
OS::TripleO::Services::NeutronML2FujitsuFossw: 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::CinderHPELeftHandISCSI: OS::Heat::None
|
||||||
OS::TripleO::Services::Etcd: OS::Heat::None
|
OS::TripleO::Services::Etcd: OS::Heat::None
|
||||||
OS::TripleO::Services::Ec2Api: OS::Heat::None
|
OS::TripleO::Services::Ec2Api: OS::Heat::None
|
||||||
|
@ -467,7 +467,6 @@ resources:
|
|||||||
- all_nodes # provided by allNodesConfig
|
- all_nodes # provided by allNodesConfig
|
||||||
- vip_data # provided by allNodesConfig
|
- vip_data # provided by allNodesConfig
|
||||||
- '"%{::osfamily}"'
|
- '"%{::osfamily}"'
|
||||||
- cinder_netapp_data # Optionally provided by ControllerExtraConfigPre
|
|
||||||
- neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
|
- neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
|
||||||
- neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
|
- neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
|
||||||
- cisco_n1kv_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::CinderBackup
|
||||||
- OS::TripleO::Services::CinderScheduler
|
- OS::TripleO::Services::CinderScheduler
|
||||||
- OS::TripleO::Services::CinderVolume
|
- OS::TripleO::Services::CinderVolume
|
||||||
|
- OS::TripleO::Services::CinderBackendNetApp
|
||||||
- OS::TripleO::Services::Congress
|
- OS::TripleO::Services::Congress
|
||||||
- OS::TripleO::Services::Kernel
|
- OS::TripleO::Services::Kernel
|
||||||
- OS::TripleO::Services::Keystone
|
- OS::TripleO::Services::Keystone
|
||||||
|
Loading…
Reference in New Issue
Block a user