Merge "OpenContrail heat templates"
This commit is contained in:
commit
6677663e11
|
@ -0,0 +1,22 @@
|
||||||
|
# A Heat environment file which can be used to enable OpenContrail
|
||||||
|
# extensions, configured via puppet
|
||||||
|
resource_registry:
|
||||||
|
OS::TripleO::ControllerExtraConfigPre: ../puppet/extraconfig/pre_deploy/controller/neutron-opencontrail.yaml
|
||||||
|
OS::TripleO::ComputeExtraConfigPre: ../puppet/extraconfig/pre_deploy/compute/neutron-opencontrail.yaml
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
NeutronCorePlugin: neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2
|
||||||
|
NeutronServicePlugins: neutron_plugin_contrail.plugins.opencontrail.loadbalancer.plugin.LoadBalancerPlugin
|
||||||
|
NeutronEnableDHCPAgent: false
|
||||||
|
NeutronEnableL3Agent: false
|
||||||
|
NeutronEnableMetadataAgent: false
|
||||||
|
NeutronEnableOVSAgent: false
|
||||||
|
NeutronEnableTunnelling: false
|
||||||
|
|
||||||
|
# required params:
|
||||||
|
#ContrailApiServerIp:
|
||||||
|
#ContrailExtensions: ''
|
||||||
|
|
||||||
|
# optional params
|
||||||
|
# ContrailApiServerPort: 8082
|
||||||
|
# ContrailMultiTenancy: false
|
|
@ -451,6 +451,7 @@ resources:
|
||||||
- cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre
|
- cisco_n1kv_data # Optionally provided by ComputeExtraConfigPre
|
||||||
- nova_nuage_data # Optionally provided by ComputeExtraConfigPre
|
- nova_nuage_data # Optionally provided by ComputeExtraConfigPre
|
||||||
- midonet_data # Optionally provided by AllNodesExtraConfig
|
- midonet_data # Optionally provided by AllNodesExtraConfig
|
||||||
|
- neutron_opencontrail_data # Optionally provided by ComputeExtraConfigPre
|
||||||
datafiles:
|
datafiles:
|
||||||
compute_extraconfig:
|
compute_extraconfig:
|
||||||
mapped_data: {get_param: NovaComputeExtraConfig}
|
mapped_data: {get_param: NovaComputeExtraConfig}
|
||||||
|
|
|
@ -1226,6 +1226,7 @@ resources:
|
||||||
- cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
|
- cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
|
||||||
- neutron_nuage_data # Optionally provided by ControllerExtraConfigPre
|
- neutron_nuage_data # Optionally provided by ControllerExtraConfigPre
|
||||||
- midonet_data #Optionally provided by AllNodesExtraConfig
|
- midonet_data #Optionally provided by AllNodesExtraConfig
|
||||||
|
- neutron_opencontrail_data # Optionally provided by ControllerExtraConfigPre
|
||||||
datafiles:
|
datafiles:
|
||||||
controller_extraconfig:
|
controller_extraconfig:
|
||||||
mapped_data: {get_param: ControllerExtraConfig}
|
mapped_data: {get_param: ControllerExtraConfig}
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
heat_template_version: 2015-04-30
|
||||||
|
|
||||||
|
description: Compute node hieradata for Neutron OpenContrail configuration
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
server:
|
||||||
|
description: ID of the compute node to apply this config to
|
||||||
|
type: string
|
||||||
|
ContrailApiServerIp:
|
||||||
|
description: IP address of the OpenContrail API server
|
||||||
|
type: string
|
||||||
|
ContrailApiServerPort:
|
||||||
|
description: Port of the OpenContrail API
|
||||||
|
type: string
|
||||||
|
default: 8082
|
||||||
|
|
||||||
|
resources:
|
||||||
|
ComputeContrailConfig:
|
||||||
|
type: OS::Heat::StructuredConfig
|
||||||
|
properties:
|
||||||
|
group: os-apply-config
|
||||||
|
config:
|
||||||
|
hiera:
|
||||||
|
datafiles:
|
||||||
|
neutron_opencontrail_data:
|
||||||
|
mapped_data:
|
||||||
|
nova::network::neutron::network_api_class: nova.network.neutronv2.api.API
|
||||||
|
|
||||||
|
contrail::vrouter::provision_vrouter::api_address: {get_input: contrail_api_server_ip}
|
||||||
|
contrail::vrouter::provision_vrouter::api_port: {get_input: contrail_api_server_port}
|
||||||
|
contrail::vrouter::provision_vrouter::keystone_admin_user: admin
|
||||||
|
contrail::vrouter::provision_vrouter::keystone_admin_tenant_name: admin
|
||||||
|
contrail::vrouter::provision_vrouter::keystone_admin_password: '"%{::admin_password}"'
|
||||||
|
|
||||||
|
ComputeContrailDeployment:
|
||||||
|
type: OS::Heat::StructuredDeployment
|
||||||
|
properties:
|
||||||
|
config: {get_resource: ComputeContrailConfig}
|
||||||
|
server: {get_param: server}
|
||||||
|
input_values:
|
||||||
|
contrail_api_server_ip: {get_param: ContrailApiServerIp}
|
||||||
|
contrail_api_server_port: {get_param: ContrailApiServerPort}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
deploy_stdout:
|
||||||
|
description: Output of the extra hiera data deployment
|
||||||
|
value: {get_attr: [ComputeContrailDeployment, deploy_stdout]}
|
|
@ -0,0 +1,62 @@
|
||||||
|
heat_template_version: 2015-04-30
|
||||||
|
|
||||||
|
description: Controller hieradata for Neutron OpenContrail configuration
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
server:
|
||||||
|
description: ID of the controller node to apply this config to
|
||||||
|
type: string
|
||||||
|
ContrailApiServerIp:
|
||||||
|
description: IP address of the OpenContrail API server
|
||||||
|
type: string
|
||||||
|
ContrailApiServerPort:
|
||||||
|
description: Port of the OpenContrail API
|
||||||
|
type: string
|
||||||
|
default: 8082
|
||||||
|
ContrailMultiTenancy:
|
||||||
|
description: Whether to enable multi tenancy
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
ContrailExtensions:
|
||||||
|
description: List of OpenContrail extensions to be enabled
|
||||||
|
type: comma_delimited_list
|
||||||
|
default: ''
|
||||||
|
|
||||||
|
resources:
|
||||||
|
ControllerContrailConfig:
|
||||||
|
type: OS::Heat::StructuredConfig
|
||||||
|
properties:
|
||||||
|
group: os-apply-config
|
||||||
|
config:
|
||||||
|
hiera:
|
||||||
|
datafiles:
|
||||||
|
neutron_opencontrail_data:
|
||||||
|
mapped_data:
|
||||||
|
neutron::api_extensions_path: /usr/lib/python2.7/site-packages/neutron_plugin_contrail/extensions
|
||||||
|
|
||||||
|
neutron::plugins::opencontrail::api_server_ip: {get_input: contrail_api_server_ip}
|
||||||
|
neutron::plugins::opencontrail::api_server_port: {get_input: contrail_api_server_port}
|
||||||
|
neutron::plugins::opencontrail::multi_tenancy: {get_input: contrail_multi_tenancy}
|
||||||
|
neutron::plugins::opencontrail::contrail_extensions: {get_input: contrail_extensions}
|
||||||
|
neutron::plugins::opencontrail::keystone_auth_url: '"%{hiera(''keystone_auth_uri'')}"'
|
||||||
|
neutron::plugins::opencontrail::keystone_admin_user: admin
|
||||||
|
neutron::plugins::opencontrail::keystone_admin_tenant_name: admin
|
||||||
|
neutron::plugins::opencontrail::keystone_admin_password: '"%{hiera(''admin_password'')}"'
|
||||||
|
neutron::plugins::opencontrail::keystone_admin_token: '"%{hiera(''keystone::admin_token'')}"'
|
||||||
|
|
||||||
|
ControllerContrailDeployment:
|
||||||
|
type: OS::Heat::StructuredDeployment
|
||||||
|
properties:
|
||||||
|
config: {get_resource: ControllerContrailConfig}
|
||||||
|
server: {get_param: server}
|
||||||
|
input_values:
|
||||||
|
contrail_api_server_ip: {get_param: ContrailApiServerIp}
|
||||||
|
contrail_api_server_port: {get_param: ContrailApiServerPort}
|
||||||
|
contrail_multi_tenancy: {get_param: ContrailMultiTenancy}
|
||||||
|
contrail_extensions: {get_param: ContrailExtensions}
|
||||||
|
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
deploy_stdout:
|
||||||
|
description: Output of the extra hiera data deployment
|
||||||
|
value: {get_attr: [ControllerContrailDeployment, deploy_stdout]}
|
|
@ -120,6 +120,15 @@ elsif hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV
|
||||||
cassandra_seeds => $cassandra_node_ips
|
cassandra_seeds => $cassandra_node_ips
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
elsif hiera('neutron::core_plugin') == 'neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2' {
|
||||||
|
|
||||||
|
include ::contrail::vrouter
|
||||||
|
# NOTE: it's not possible to use this class without a functional
|
||||||
|
# contrail controller up and running
|
||||||
|
#class {'::contrail::vrouter::provision_vrouter':
|
||||||
|
# require => Class['contrail::vrouter'],
|
||||||
|
#}
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
|
|
||||||
include ::neutron::plugins::ml2
|
include ::neutron::plugins::ml2
|
||||||
|
|
|
@ -304,11 +304,13 @@ if hiera('step') >= 3 {
|
||||||
include ::neutron::server
|
include ::neutron::server
|
||||||
include ::neutron::server::notifications
|
include ::neutron::server::notifications
|
||||||
|
|
||||||
# If the value of core plugin is set to 'nuage',
|
# If the value of core plugin is set to 'nuage' or 'opencontrail',
|
||||||
# include nuage core plugin, and it does not
|
# include nuage or opencontrail core plugins, and it does not
|
||||||
# need the l3, dhcp and metadata agents
|
# need the l3, dhcp and metadata agents
|
||||||
if hiera('neutron::core_plugin') == 'neutron.plugins.nuage.plugin.NuagePlugin' {
|
if hiera('neutron::core_plugin') == 'neutron.plugins.nuage.plugin.NuagePlugin' {
|
||||||
include ::neutron::plugins::nuage
|
include ::neutron::plugins::nuage
|
||||||
|
} elsif hiera('neutron::core_plugin') == 'neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2' {
|
||||||
|
include ::neutron::plugins::opencontrail
|
||||||
} else {
|
} else {
|
||||||
include ::neutron::agents::l3
|
include ::neutron::agents::l3
|
||||||
include ::neutron::agents::dhcp
|
include ::neutron::agents::dhcp
|
||||||
|
|
|
@ -678,6 +678,9 @@ if hiera('step') >= 3 {
|
||||||
if hiera('neutron::core_plugin') == 'neutron.plugins.nuage.plugin.NuagePlugin' {
|
if hiera('neutron::core_plugin') == 'neutron.plugins.nuage.plugin.NuagePlugin' {
|
||||||
include ::neutron::plugins::nuage
|
include ::neutron::plugins::nuage
|
||||||
}
|
}
|
||||||
|
if hiera('neutron::core_plugin') == 'neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2' {
|
||||||
|
include ::neutron::plugins::opencontrail
|
||||||
|
}
|
||||||
if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
|
if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
|
||||||
class {'::neutron::plugins::midonet':
|
class {'::neutron::plugins::midonet':
|
||||||
midonet_api_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
|
midonet_api_ip => hiera('tripleo::loadbalancer::public_virtual_ip'),
|
||||||
|
|
Loading…
Reference in New Issue