OVN heat templates
Installs and configures OVN databases and process and also configures the neutron plugin for OVN. Implements: blueprint tripleo-ovn Change-Id: Ic3e415bb0587dd85b71f6c14a96f6b2c86a7b30f
This commit is contained in:
parent
f9000048e5
commit
d42c83a51e
18
environments/neutron-ml2-ovn.yaml
Normal file
18
environments/neutron-ml2-ovn.yaml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# A Heat environment file which can be used to enable OVN
|
||||||
|
# extensions, configured via puppet
|
||||||
|
resource_registry:
|
||||||
|
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
|
||||||
|
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
|
||||||
|
OS::TripleO::Services::NeutronCorePlugin: OS::TripleO::Services::NeutronCorePluginML2OVN
|
||||||
|
OS::TripleO::Services::ComputeNeutronCorePlugin: ../puppet/services/neutron-compute-plugin-ovn.yaml
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
NeutronMechanismDrivers: ovn
|
||||||
|
OVNDbHost: '0.0.0.0'
|
||||||
|
OVNSouthboundServerPort: 6642
|
||||||
|
OVNNorthboundServerPort: 6641
|
||||||
|
OVNDbConnectionTimeout: 60
|
||||||
|
OVNVifType: ovs
|
||||||
|
OVNNeutronSyncMode: log
|
||||||
|
OVNQosDriver: ovn-qos
|
||||||
|
OVNTunnelEncapType: geneve
|
@ -161,6 +161,7 @@ resource_registry:
|
|||||||
# things where VMs run
|
# things where VMs run
|
||||||
OS::TripleO::Services::ComputeNeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
|
OS::TripleO::Services::ComputeNeutronCorePlugin: puppet/services/neutron-plugin-ml2.yaml
|
||||||
# Neutron Core Plugin Vendors (these typically override NeutronCorePlugin)
|
# Neutron Core Plugin Vendors (these typically override NeutronCorePlugin)
|
||||||
|
OS::TripleO::Services::NeutronCorePluginML2OVN: puppet/services/neutron-plugin-ml2-ovn.yaml
|
||||||
OS::TripleO::Services::NeutronCorePluginPlumgrid: puppet/services/neutron-plugin-plumgrid.yaml
|
OS::TripleO::Services::NeutronCorePluginPlumgrid: puppet/services/neutron-plugin-plumgrid.yaml
|
||||||
OS::TripleO::Services::NeutronCorePluginNuage: puppet/services/neutron-plugin-nuage.yaml
|
OS::TripleO::Services::NeutronCorePluginNuage: puppet/services/neutron-plugin-nuage.yaml
|
||||||
OS::TripleO::Services::NeutronCorePluginOpencontrail: puppet/services/neutron-plugin-opencontrail.yaml
|
OS::TripleO::Services::NeutronCorePluginOpencontrail: puppet/services/neutron-plugin-opencontrail.yaml
|
||||||
|
45
puppet/services/neutron-compute-plugin-ovn.yaml
Normal file
45
puppet/services/neutron-compute-plugin-ovn.yaml
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
OpenStack Neutron Compute OVN agent
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
DefaultPasswords:
|
||||||
|
default: {}
|
||||||
|
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
|
||||||
|
OVNDbHost:
|
||||||
|
description: IP address on which the OVN DB servers are listening
|
||||||
|
type: string
|
||||||
|
OVNSouthboundServerPort:
|
||||||
|
description: Port of the Southbound DB Server
|
||||||
|
type: number
|
||||||
|
default: 6642
|
||||||
|
OVNTunnelEncapType:
|
||||||
|
description: Tunnel encapsulation type
|
||||||
|
type: string
|
||||||
|
default: geneve
|
||||||
|
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Neutron Compute OVN agent
|
||||||
|
value:
|
||||||
|
service_name: neutron_compute_plugin_ovn
|
||||||
|
config_settings:
|
||||||
|
tripleo::profile::base::neutron::agents::ovn::ovn_db_host: {get_param: OVNDbHost}
|
||||||
|
ovn::southbound::port: {get_param: OVNSouthboundServerPort}
|
||||||
|
ovn::southbound::encap_type: {get_param: OVNTunnelEncapType}
|
||||||
|
ovn::controller::ovn_encap_ip: {get_param: [ServiceNetMap, NeutronApiNetwork]}
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::base::neutron::agents::ovn
|
79
puppet/services/neutron-plugin-ml2-ovn.yaml
Normal file
79
puppet/services/neutron-plugin-ml2-ovn.yaml
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
OpenStack Neutron ML2/OVN plugin configured with Puppet
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
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: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
OVNDbHost:
|
||||||
|
description: IP address on which the OVN DB servers are listening
|
||||||
|
type: string
|
||||||
|
OVNNorthboundServerPort:
|
||||||
|
description: Port of the OVN Northbound DB server
|
||||||
|
type: number
|
||||||
|
default: 6641
|
||||||
|
OVNDbConnectionTimeout:
|
||||||
|
description: Timeout in seconds for the OVSDB connection transaction
|
||||||
|
type: number
|
||||||
|
default: 60
|
||||||
|
OVNVifType:
|
||||||
|
description: Type of VIF to be used for ports
|
||||||
|
type: string
|
||||||
|
default: ovs
|
||||||
|
constraints:
|
||||||
|
- allowed_values:
|
||||||
|
- ovs
|
||||||
|
- vhostuser
|
||||||
|
OVNNeutronSyncMode:
|
||||||
|
description: The synchronization mode of OVN with Neutron DB
|
||||||
|
type: string
|
||||||
|
default: log
|
||||||
|
constraints:
|
||||||
|
- allowed_values:
|
||||||
|
- log
|
||||||
|
- off
|
||||||
|
- repair
|
||||||
|
OVNQosDriver:
|
||||||
|
description: OVN notification driver for Neutron QOS service plugin
|
||||||
|
type: string
|
||||||
|
default: NULL
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
NeutronMl2Base:
|
||||||
|
type: ./neutron-plugin-ml2.yaml
|
||||||
|
properties:
|
||||||
|
ServiceNetMap: {get_param: ServiceNetMap}
|
||||||
|
DefaultPasswords: {get_param: DefaultPasswords}
|
||||||
|
EndpointMap: {get_param: EndpointMap}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Neutron ML2/OVN plugin.
|
||||||
|
value:
|
||||||
|
service_name: neutron_plugin_ml2_ovn
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- get_attr: [NeutronMl2Base, role_data, config_settings]
|
||||||
|
- ovn::northbound::port: {get_param: OVNNorthboundServerPort}
|
||||||
|
tripleo::profile::base::neutron::plugins::ml2::ovn::ovn_db_host: {get_param: OVNDbHost}
|
||||||
|
neutron::plugins::ovn::ovsdb_connection_timeout: {get_param: OVNDbConnectionTimeout}
|
||||||
|
neutron::plugins::ovn::neutron_sync_mode: {get_param: OVNNeutronSyncMode}
|
||||||
|
neutron::plugins::ovn::ovn_l3_mode: true
|
||||||
|
neutron::plugins::ovn::vif_type: {get_param: OVNVifType}
|
||||||
|
neutron::server::qos_notification_drivers: {get_param: OVNQosDriver}
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::base::neutron::plugins::ml2
|
Loading…
x
Reference in New Issue
Block a user