Merge "Switch default neutron ML2 mechanism driver to OVN"

This commit is contained in:
Zuul 2019-02-15 16:59:59 +00:00 committed by Gerrit Code Review
commit d3ca79db72
32 changed files with 612 additions and 94 deletions

View File

@ -82,7 +82,7 @@ and should be executed according to the following table:
+----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| mysql | X | X | X | X | X | X | X | | X | X | X |
+----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| neutron | | ovs | ovs | ovs | ovs | ovs | ovn | | ovs | ovs | ovs |
| neutron | | ovn | ovn | ovn | ovn | ovn | ovs | | ovn | ovn | ovn |
+----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
| neutron-bgpvpn | | | | | wip | | | | | | |
+----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+

View File

@ -4,6 +4,7 @@ resource_registry:
# Some infra instances don't pass the ping test but are otherwise working.
# Since the OVB jobs also test this functionality we can shut it off here.
OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml
OS::TripleO::Services::OVNDBs: ../../docker/services/ovn-dbs.yaml
parameter_defaults:
ControllerServices:
@ -16,12 +17,11 @@ parameter_defaults:
- OS::TripleO::Services::GlanceApi
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -1,7 +1,7 @@
resource_registry:
OS::TripleO::BlockStorage::Net::SoftwareConfig: nic-configs/cinder-storage.yaml
OS::TripleO::Compute::Net::SoftwareConfig: nic-configs/compute.yaml
OS::TripleO::Compute::Net::SoftwareConfig: nic-configs/compute-dvr.yaml
OS::TripleO::Controller::Net::SoftwareConfig: nic-configs/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: nic-configs/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: nic-configs/ceph-storage.yaml

View File

@ -0,0 +1,189 @@
heat_template_version: rocky
parameters:
ControlPlaneIp:
default: ''
description: IP address/subnet on the ctlplane network
type: string
InternalApiIpSubnet:
default: ''
description: IP address/subnet on the internal_api network
type: string
InternalApiInterfaceRoutes:
default: []
description: >
Routes for the internal_api network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
InternalApiMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
InternalApi network.
type: number
StorageIpSubnet:
default: ''
description: IP address/subnet on the storage network
type: string
StorageInterfaceRoutes:
default: []
description: >
Routes for the storage network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
StorageMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
Storage network.
type: number
TenantIpSubnet:
default: ''
description: IP address/subnet on the tenant network
type: string
TenantInterfaceRoutes:
default: []
description: >
Routes for the tenant network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
TenantMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
Tenant network.
type: number
BondInterfaceOvsOptions:
default: 'bond_mode=active-backup'
description: The ovs_options string for the bond interface. Set things like
lacp=active and/or bond_mode=balance-slb using this option.
type: string
InternalApiNetworkVlanID:
default: 20
description: Vlan ID for the internal_api network traffic.
type: number
StorageNetworkVlanID:
default: 30
description: Vlan ID for the storage network traffic.
type: number
TenantNetworkVlanID:
default: 50
description: Vlan ID for the tenant network traffic.
type: number
ControlPlaneSubnetCidr:
default: ''
description: >
The subnet CIDR of the control plane network. (The parameter is
automatically resolved from the ctlplane subnet's cidr attribute.)
type: string
ControlPlaneDefaultRoute:
default: ''
description: The default route of the control plane network. (The parameter
is automatically resolved from the ctlplane subnet's gateway_ip attribute.)
type: string
ControlPlaneStaticRoutes:
default: []
description: >
Routes for the ctlplane network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
ControlPlaneMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the network.
(The parameter is automatically resolved from the ctlplane network's mtu attribute.)
type: number
DnsServers: # Override this via parameter_defaults
default: []
description: >
DNS servers to use for the Overcloud (2 max for some implementations).
If not set the nameservers configured in the ctlplane subnet's
dns_nameservers attribute will be used.
type: comma_delimited_list
EC2MetadataIp:
default: ''
description: The IP address of the EC2 metadata server. (The parameter
is automatically resolved from the ctlplane subnet's host_routes attribute.)
type: string
ExternalInterfaceDefaultRoute:
default: '10.0.0.1'
description: default route for the external network
type: string
resources:
OsNetConfigImpl:
properties:
config:
str_replace:
params:
$network_config:
network_config:
- type: interface
name: nic1
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask:
list_join:
- /
- - {get_param: ControlPlaneIp}
- {get_param: ControlPlaneSubnetCidr}
routes:
- default: true
ip_netmask: 0.0.0.0/0
next_hop: {get_param: ControlPlaneDefaultRoute}
- ip_netmask: 169.254.169.254/32
next_hop: {get_param: EC2MetadataIp}
- type: interface
name: nic3
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask: {get_param: InternalApiIpSubnet}
- type: interface
name: nic4
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask: {get_param: StorageIpSubnet}
- type: ovs_bridge
name: br-tenant
dns_servers: {get_param: DnsServers}
use_dhcp: false
addresses:
- ip_netmask: {get_param: TenantIpSubnet}
members:
- type: interface
name: nic6
mtu: 1350
primary: true
- type: ovs_bridge
name: br-ex
dns_servers: {get_param: DnsServers}
use_dhcp: false
routes:
- ip_netmask: 0.0.0.0/0
next_hop: {get_param: ExternalInterfaceDefaultRoute}
members:
- type: interface
name: nic2
mtu: 1350
primary: true
template:
get_file: ../../../../../network/scripts/run-os-net-config.sh
group: script
type: OS::Heat::SoftwareConfig
outputs:
OS::stack_id:
description: The OsNetConfigImpl resource.
value: {get_resource: OsNetConfigImpl}

View File

@ -1,7 +1,7 @@
resource_registry:
OS::TripleO::BlockStorage::Net::SoftwareConfig: nic-configs/cinder-storage.yaml
OS::TripleO::Compute::Net::SoftwareConfig: nic-configs/compute.yaml
OS::TripleO::Compute::Net::SoftwareConfig: nic-configs/compute-dvr.yaml
OS::TripleO::Controller::Net::SoftwareConfig: nic-configs/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: nic-configs/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: nic-configs/ceph-storage.yaml

View File

@ -0,0 +1,188 @@
heat_template_version: rocky
parameters:
ControlPlaneIp:
default: ''
description: IP address/subnet on the ctlplane network
type: string
InternalApiIpSubnet:
default: ''
description: IP address/subnet on the internal_api network
type: string
InternalApiInterfaceRoutes:
default: []
description: >
Routes for the internal_api network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
InternalApiMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
InternalApi network.
type: number
StorageIpSubnet:
default: ''
description: IP address/subnet on the storage network
type: string
StorageInterfaceRoutes:
default: []
description: >
Routes for the storage network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
StorageMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
Storage network.
type: number
TenantIpSubnet:
default: ''
description: IP address/subnet on the tenant network
type: string
TenantInterfaceRoutes:
default: []
description: >
Routes for the tenant network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
TenantMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the
Tenant network.
type: number
BondInterfaceOvsOptions:
default: 'bond_mode=active-backup'
description: The ovs_options string for the bond interface. Set things like
lacp=active and/or bond_mode=balance-slb using this option.
type: string
InternalApiNetworkVlanID:
default: 20
description: Vlan ID for the internal_api network traffic.
type: number
StorageNetworkVlanID:
default: 30
description: Vlan ID for the storage network traffic.
type: number
TenantNetworkVlanID:
default: 50
description: Vlan ID for the tenant network traffic.
type: number
ControlPlaneSubnetCidr:
default: ''
description: >
The subnet CIDR of the control plane network. (The parameter is
automatically resolved from the ctlplane subnet's cidr attribute.)
type: string
ControlPlaneDefaultRoute:
default: ''
description: The default route of the control plane network. (The parameter
is automatically resolved from the ctlplane subnet's gateway_ip attribute.)
type: string
ControlPlaneStaticRoutes:
default: []
description: >
Routes for the ctlplane network traffic.
JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
Unless the default is changed, the parameter is automatically resolved
from the subnet host_routes attribute.
type: json
ControlPlaneMtu:
default: 1500
description: The maximum transmission unit (MTU) size(in bytes) that is
guaranteed to pass through the data path of the segments in the network.
(The parameter is automatically resolved from the ctlplane network's mtu attribute.)
type: number
DnsServers: # Override this via parameter_defaults
default: []
description: >
DNS servers to use for the Overcloud (2 max for some implementations).
If not set the nameservers configured in the ctlplane subnet's
dns_nameservers attribute will be used.
type: comma_delimited_list
EC2MetadataIp:
default: ''
description: The IP address of the EC2 metadata server. (The parameter
is automatically resolved from the ctlplane subnet's host_routes attribute.)
type: string
ExternalInterfaceDefaultRoute:
default: '10.0.0.1'
description: default route for the external network
type: string
resources:
OsNetConfigImpl:
type: OS::Heat::SoftwareConfig
properties:
group: script
config:
str_replace:
template:
get_file: ../../../../../network/scripts/run-os-net-config.sh
params:
$network_config:
network_config:
- type: interface
name: nic1
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask:
list_join:
- /
- - {get_param: ControlPlaneIp}
- {get_param: ControlPlaneSubnetCidr}
routes:
- ip_netmask: 169.254.169.254/32
next_hop: {get_param: EC2MetadataIp}
- default: true
next_hop: {get_param: ControlPlaneDefaultRoute}
- type: ovs_bridge
name: br-ex
dns_servers: {get_param: DnsServers}
use_dhcp: false
routes:
- ip_netmask: 0.0.0.0/0
next_hop: {get_param: ExternalInterfaceDefaultRoute}
members:
- type: interface
name: nic2
mtu: 1350
primary: true
- type: interface
name: nic3
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask: {get_param: InternalApiIpSubnet}
- type: interface
name: nic4
mtu: 1350
use_dhcp: false
addresses:
- ip_netmask: {get_param: StorageIpSubnet}
- type: ovs_bridge
name: br-tenant
dns_servers: {get_param: DnsServers}
use_dhcp: false
addresses:
- ip_netmask: {get_param: TenantIpSubnet}
members:
- type: interface
name: nic6
mtu: 1350
primary: true
outputs:
OS::stack_id:
description: The OsNetConfigImpl resource.
value: {get_resource: OsNetConfigImpl}

View File

@ -16,10 +16,6 @@ parameter_defaults:
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronApi
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::NovaApi
- OS::TripleO::Services::NovaConductor
- OS::TripleO::Services::NovaMetadata
@ -37,10 +33,11 @@ parameter_defaults:
- OS::TripleO::Services::Timezone
- OS::TripleO::Services::TripleoFirewall
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNDBs
ComputeServices:
- OS::TripleO::Services::CACerts
- OS::TripleO::Services::ComputeNeutronCorePlugin
- OS::TripleO::Services::ComputeNeutronOvsAgent
- OS::TripleO::Services::Docker
- OS::TripleO::Services::Ipsec
- OS::TripleO::Services::Iscsid
@ -54,6 +51,9 @@ parameter_defaults:
- OS::TripleO::Services::Timezone
- OS::TripleO::Services::TripleoFirewall
- OS::TripleO::Services::TripleoPackages
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
ControllerExtraConfig:
nova::compute::libvirt::services::libvirt_virt_type: qemu
nova::compute::libvirt::libvirt_virt_type: qemu

View File

@ -44,12 +44,11 @@ parameter_defaults:
- OS::TripleO::Services::HeatEngine
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -36,12 +36,11 @@ parameter_defaults:
- OS::TripleO::Services::HeatEngine
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -35,12 +35,11 @@ parameter_defaults:
- OS::TripleO::Services::GlanceApi
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -51,12 +51,11 @@ parameter_defaults:
- OS::TripleO::Services::GlanceApi
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -19,12 +19,11 @@ parameter_defaults:
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy

View File

@ -1,10 +1,16 @@
resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../common/net-config-multinode-os-net-config.yaml
OS::TripleO::Compute::Net::SoftwareConfig: ../common/net-config-multinode-os-net-config.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: ../../puppet/services/neutron-plugin-ml2-ovn.yaml
OS::TripleO::Services::OVNController: ../../docker/services/ovn-controller.yaml
OS::TripleO::Services::OVNDBs: ../../docker/services/ovn-dbs.yaml
OS::TripleO::Services::OVNMetadataAgent: ../../docker/services/ovn-metadata.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: ../../puppet/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronServer: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronApi: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../../docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
# Some infra instances don't pass the ping test but are otherwise working.
# Since the OVB jobs also test this functionality we can shut it off here.
OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml
@ -12,6 +18,10 @@ resource_registry:
OS::TripleO::Services::SwiftProxy: OS::Heat::None
OS::TripleO::Services::SwiftStorage: OS::Heat::None
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
# TODO(mandre) fix the tacker service - https://bugs.launchpad.net/tripleo/+bug/1714270
# OS::TripleO::Services::Tacker: ../../docker/services/tacker.yaml
# TODO tacker still wip https://bugs.launchpad.net/tripleo/+bug/1714270
@ -41,9 +51,10 @@ parameter_defaults:
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy
@ -72,17 +83,14 @@ parameter_defaults:
nova::compute::libvirt::libvirt_virt_type: qemu
# Required for Centos 7.3 and Qemu 2.6.0
nova::compute::libvirt::libvirt_cpu_mode: 'none'
# For OVN.
NeutronMechanismDrivers: ovn
OVNVifType: ovs
OVNNeutronSyncMode: log
OVNQosDriver: ovn-qos
OVNTunnelEncapType: geneve
NeutronTypeDrivers: 'geneve,vlan,flat,vxlan'
NeutronNetworkType: 'geneve'
NeutronServicePlugins: 'qos,networking_ovn.l3.l3_ovn.OVNL3RouterPlugin'
NeutronVniRanges: ['1:65536', ]
OVNBridgeMappings: 'datacentre:br-ex'
# For ML2/OVS
NeutronMechanismDrivers: 'openvswitch'
NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
NeutronNetworkType: 'vxlan'
NeutronServicePlugins: 'router,qos,segments,trunk'
NeutronVniRanges: ['1:4094', ]
NeutronEnableDVR: false
KernelIpNonLocalBind: 0
Debug: true
DockerPuppetDebug: True
BannerText: |

View File

@ -4,6 +4,10 @@ resource_registry:
OS::TripleO::Services::OpenDaylightApi: ../../docker/services/opendaylight-api.yaml
OS::TripleO::Services::OpenDaylightOvs: ../../puppet/services/opendaylight-ovs.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: ../../puppet/services/neutron-plugin-ml2-odl.yaml
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
parameter_defaults:
ControllerServices:

View File

@ -39,12 +39,11 @@ parameter_defaults:
- OS::TripleO::Services::GlanceApi
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OctaviaApi
- OS::TripleO::Services::OctaviaDeploymentConfig
- OS::TripleO::Services::OctaviaHealthManager

View File

@ -32,12 +32,11 @@ parameter_defaults:
- OS::TripleO::Services::IronicPxe
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent
- OS::TripleO::Services::NeutronServer
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
- OS::TripleO::Services::OVNDBs
- OS::TripleO::Services::OVNController
- OS::TripleO::Services::OVNMetadataAgent
- OS::TripleO::Services::OsloMessagingRpc
- OS::TripleO::Services::OsloMessagingNotify
- OS::TripleO::Services::HAproxy
@ -72,7 +71,7 @@ parameter_defaults:
SwiftCeilometerPipelineEnabled: false
IronicCleaningDiskErase: 'metadata'
NovaSchedulerDiscoverHostsInCellsInterval: 15
NeutronMechanismDrivers: openvswitch,ansible
NeutronMechanismDrivers: ovn,ansible
NeutronNetworkType: vlan
NeutronTypeDrivers: local,vxlan,vlan,flat
IronicDefaultNetworkInterface: neutron

View File

@ -48,7 +48,7 @@ parameters:
default: []
NeutronMechanismDrivers:
default: 'openvswitch'
default: 'ovn'
description: |
The mechanism drivers for the Neutron tenant network.
type: comma_delimited_list

View File

@ -43,7 +43,7 @@ parameters:
description: Configures net.ipv4.ip_forward key
type: number
KernelIpNonLocalBind:
default: 0
default: 1
description: Configures net.ipv{4,6}.ip_nonlocal_bind key
type: number
NeighbourGcThreshold1:

View File

@ -90,8 +90,8 @@ parameters:
hidden: true
NeutronEnableDVR:
description: Enable Neutron DVR.
default: false
type: boolean
default: ''
type: string
KeystoneRegion:
type: string
default: 'regionOne'
@ -150,6 +150,7 @@ conditions:
neutron_rpc_workers_unset: {equals : [{get_param: NeutronRpcWorkers}, '']}
neutron_ovs_int_br_unset: {equals : [{get_param: NeutronOvsIntegrationBridge}, '']}
internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]}
neutron_dvr_unset: {equals : [{get_param: NeutronEnableDVR}, '']}
resources:
@ -228,8 +229,6 @@ outputs:
dport:
- 9696
- 13696
neutron::server::router_distributed: {get_param: NeutronEnableDVR}
neutron::server::enable_dvr: {get_param: NeutronEnableDVR}
# NOTE: bind IP is found in hiera replacing the network name with the local node IP
# for the given network; replacement examples (eg. for internal_api):
# internal_api -> IP
@ -261,6 +260,12 @@ outputs:
params:
$NETWORK: {get_param: [ServiceNetMap, NeutronApiNetwork]}
tripleo::profile::base::neutron::server::l3_ha_override: {get_param: NeutronL3HA}
-
if:
- neutron_dvr_unset
- {}
- neutron::server::router_distributed: {get_param: NeutronEnableDVR}
neutron::server::enable_dvr: {get_param: NeutronEnableDVR}
-
if:
- neutron_workers_unset

View File

@ -83,9 +83,9 @@ parameters:
Comma-separated list of extensions enabled for the Neutron agents.
type: comma_delimited_list
NeutronEnableDVR:
default: False
default: ''
description: Enable Neutron DVR.
type: boolean
type: string
NeutronEnableARPResponder:
default: false
description: |
@ -123,6 +123,7 @@ parameters:
conditions:
no_firewall_driver: {equals : [{get_param: NeutronOVSFirewallDriver}, '']}
docker_puppet_mount_host: {equals: [{get_param: DockerPuppetMountHostPuppet}, true]}
neutron_dvr_unset: {equals : [{get_param: NeutronEnableDVR}, '']}
resources:
@ -172,7 +173,6 @@ outputs:
- get_attr: [RoleParametersValue, value]
- get_attr: [NeutronLogging, config_settings]
- neutron::agents::ml2::ovs::l2_population: {get_param: NeutronEnableL2Pop}
neutron::agents::ml2::ovs::enable_distributed_routing: {get_param: NeutronEnableDVR}
neutron::agents::ml2::ovs::arp_responder: {get_param: NeutronEnableARPResponder}
neutron::agents::ml2::ovs::tunnel_types: {get_param: NeutronTunnelTypes}
neutron::agents::ml2::ovs::extensions: {get_param: NeutronAgentExtensions}
@ -195,6 +195,11 @@ outputs:
dport: 4789
'136 neutron gre networks':
proto: 'gre'
-
if:
- neutron_dvr_unset
- {}
- neutron::agents::ml2::ovs::enable_distributed_routing: {get_param: NeutronEnableDVR}
-
if:
- no_firewall_driver

View File

@ -2,6 +2,19 @@
# This works by configuring L3 and Metadata agents on the
# compute nodes.
resource_registry:
# Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
# FIXME(bogdando): can not be switched yet due to puppet-base issues
# see https://review.openstack.org/#/c/563443
OS::TripleO::Docker::NeutronMl2PluginBase: ../puppet/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronServer: ../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronApi: ../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronL3Agent: ../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronMetadataAgent: ../deployment/neutron/neutron-metadata-container-puppet.yaml
@ -9,12 +22,22 @@ resource_registry:
# bridge to be connected to a physical network.
OS::TripleO::Compute::Net::SoftwareConfig: ../net-config-bridge.yaml
parameter_defaults:
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
parameter_defaults:
# DVR requires that the L2 population feature is enabled
NeutronMechanismDrivers: ['openvswitch', 'l2population']
NeutronEnableL2Pop: 'True'
NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
NeutronNetworkType: 'vxlan'
NeutronServicePlugins: 'router,qos,segments,trunk'
NeutronVniRanges: ['1:4094', ]
KernelIpNonLocalBind: 0
# Setting NeutronEnableDVR enables distributed routing support in the
# ML2 plugin and agents that support this feature
NeutronEnableDVR: true

View File

@ -1,18 +1,39 @@
# A Heat environment file that enables DVR in the overcloud. Used with Compute
# DVR role. Note that the network configuration is consistent with the default
# tripleo network templates so some customization is likely required for
# production deployments.
# A Heat environment file that deploys ML2/OVS in the overcloud.
resource_registry:
# Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
# FIXME(bogdando): can not be switched yet due to puppet-base issues
# see https://review.openstack.org/#/c/563443
OS::TripleO::Docker::NeutronMl2PluginBase: ../../puppet/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronServer: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronApi: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../../docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronL3Agent: ../../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronMetadataAgent: ../../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::ComputeDVR::Net::SoftwareConfig: ../../net-config-bridge.yaml
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
parameter_defaults:
# DVR requires that the L2 population feature is enabled
NeutronMechanismDrivers: ['openvswitch', 'l2population']
NeutronEnableL2Pop: 'True'
NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
NeutronNetworkType: 'vxlan'
NeutronServicePlugins: 'router,qos,segments,trunk'
NeutronVniRanges: ['1:4094', ]
KernelIpNonLocalBind: 0
# Setting NeutronEnableDVR enables distributed routing support in the
# ML2 plugin and agents that support this feature
NeutronEnableDVR: true

View File

@ -0,0 +1,35 @@
# A Heat environment file that enables DVR in the overcloud. Used with Compute
# DVR role. Note that the network configuration is consistent with the default
# tripleo network templates so some customization is likely required for
# production deployments.
resource_registry:
# Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
# FIXME(bogdando): can not be switched yet due to puppet-base issues
# see https://review.openstack.org/#/c/563443
OS::TripleO::Docker::NeutronMl2PluginBase: ../../puppet/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronServer: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronApi: ../../deployment/neutron/neutron-api-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../../docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../../deployment/neutron/neutron-l3-container-puppet.yaml
# Disable OVN services
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
parameter_defaults:
NeutronMechanismDrivers: ['openvswitch']
NeutronTypeDrivers: 'vxlan,vlan,flat,gre'
NeutronNetworkType: 'vxlan'
NeutronServicePlugins: 'router,qos,segments,trunk'
NeutronVniRanges: ['1:4094', ]
KernelIpNonLocalBind: 0
NeutronEnableDVR: false

View File

@ -111,6 +111,7 @@ resource_registry:
OS::TripleO::Services::MistralEngine: OS::Heat::None
OS::TripleO::Services::MistralEventEngine: OS::Heat::None
OS::TripleO::Services::MistralExecutor: OS::Heat::None
OS::TripleO::Services::OVNDBs: ../../docker/services/ovn-dbs.yaml
OS::TripleO::Services::OpenStackClients: ../../puppet/services/openstack-clients.yaml
OS::TripleO::Services::PankoApi: OS::Heat::None
OS::TripleO::Services::Podman: ../../deployment/podman/podman-baremetal-ansible.yaml

View File

@ -8,6 +8,14 @@ resource_registry:
# Allows us to control the external VIP for Undercloud SSL
OS::TripleO::Network::Ports::ExternalVipPort: ../network/ports/external_from_pool.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronMetadataAgent: ../deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: ../deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: ../deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: ../deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::NeutronCorePlugin: ../docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: ../puppet/services/neutron-plugin-ml2.yaml
# We managed this in instack-undercloud, so we need to manage it here.
OS::TripleO::Services::SELinux: ../deployment/selinux/selinux-baremetal-puppet.yaml
OS::TripleO::Services::OpenStackClients: ../puppet/services/openstack-clients.yaml
@ -124,6 +132,7 @@ parameter_defaults:
NeutronTunnelIdRanges: '20:100'
NeutronTypeDrivers: ['local','flat','vlan','gre','vxlan']
NeutronVniRanges: '10:100'
NeutronEnableDVR: false
NeutronPortQuota: '-1'
SwiftCorsAllowedOrigin: '*'
SwiftReplicas: 1

View File

@ -0,0 +1,8 @@
# This environment file provides default previous values for ml2/ovs
parameter_defaults:
OVNQosDriver: NULL
NeutronMechanismDrivers: 'openvswitch'
NeutronTypeDrivers: "vxlan,vlan,flat,gre"
NeutronVniRanges: ["1:65536", ]
NeutronNetworkType: 'vxlan'

View File

@ -134,14 +134,14 @@ resource_registry:
OS::TripleO::Services::NeutronBgpVpnApi: OS::Heat::None
OS::TripleO::Services::NeutronBgpVpnBagpipe: OS::Heat::None
OS::TripleO::Services::NeutronSfcApi: OS::Heat::None
OS::TripleO::Services::NeutronDhcpAgent: deployment/neutron/neutron-dhcp-container-puppet.yaml
OS::TripleO::Services::NeutronDhcpAgent: OS::Heat::None
OS::TripleO::Services::NeutronL2gwApi: OS::Heat::None
OS::TripleO::Services::NeutronL3Agent: deployment/neutron/neutron-l3-container-puppet.yaml
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
OS::TripleO::Services::NeutronL2gwAgent: OS::Heat::None
OS::TripleO::Services::NeutronLbaasv2Agent: OS::Heat::None
OS::TripleO::Services::NeutronLbaasv2Api: OS::Heat::None
OS::TripleO::Services::NeutronMetadataAgent: deployment/neutron/neutron-metadata-container-puppet.yaml
OS::TripleO::Services::OVNMetadataAgent: OS::Heat::None
OS::TripleO::Services::NeutronMetadataAgent: OS::Heat::None
OS::TripleO::Services::OVNMetadataAgent: docker/services/ovn-metadata.yaml
# FIXME(shardy) the duplicate NeutronServer line can be removed when we've updated
# the multinode job ControllerServices after this patch merges
OS::TripleO::Services::NeutronServer: deployment/neutron/neutron-api-container-puppet.yaml
@ -149,25 +149,26 @@ resource_registry:
OS::TripleO::Services::NeutronCorePlugin: docker/services/neutron-plugin-ml2.yaml
# can be the same as NeutronCorePlugin but some vendors install different
# things where VMs run
OS::TripleO::Services::ComputeNeutronCorePlugin: docker/services/neutron-plugin-ml2.yaml
OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None
OS::TripleO::Services::ComputeNeutronCorePluginNuage: puppet/services/neutron-compute-plugin-nuage.yaml
# 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::NeutronCorePluginNuage: puppet/services/neutron-plugin-nuage.yaml
OS::TripleO::Services::NeutronCorePluginML2Nuage: puppet/services/neutron-plugin-ml2-nuage.yaml
OS::TripleO::Services::NeutronCorePluginNSX: docker/services/neutron-plugin-nsx.yaml
OS::TripleO::Services::OVNDBs: OS::Heat::None
OS::TripleO::Services::OVNController: OS::Heat::None
OS::TripleO::Services::NeutronCorePluginNSX: puppet/services/neutron-plugin-nsx.yaml
OS::TripleO::Services::OVNDBs: docker/services/pacemaker/ovn-dbs.yaml
OS::TripleO::Services::OVNController: docker/services/ovn-controller.yaml
OS::TripleO::Services::NeutronCorePluginMLNXSDN: puppet/services/neutron-plugin-ml2-mlnx-sdn-assist.yaml
OS::TripleO::Services::NeutronCorePluginMidonet: puppet/services/neutron-midonet.yaml
OS::TripleO::Services::NeutronCorePluginVTS: docker/services/neutron-plugin-ml2-cisco-vts.yaml
OS::TripleO::Services::NeutronCorePluginML2Ansible: docker/services/neutron-plugin-ml2-ansible.yaml
OS::TripleO::Services::NeutronNuageVrs: puppet/services/neutron-controller-plugin-nuage.yaml
OS::TripleO::Services::NeutronOvsAgent: deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::NeutronLinuxbridgeAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsAgent: deployment/neutron/neutron-ovs-agent-container-puppet.yaml
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsDpdk: OS::Heat::None
OS::TripleO::Services::Pacemaker: OS::Heat::None
OS::TripleO::Services::PacemakerRemote: OS::Heat::None
@ -332,7 +333,7 @@ resource_registry:
# Default Neutron ML2 puppet plugin to use when NeutronCorePlugin is set to ML2
# FIXME(bogdando): can not be switched yet due to puppet-base issues
# see https://review.openstack.org/#/c/563443
OS::TripleO::Docker::NeutronMl2PluginBase: puppet/services/neutron-plugin-ml2.yaml
OS::TripleO::Docker::NeutronMl2PluginBase: puppet/services/neutron-plugin-ml2-ovn.yaml
OS::TripleO::Services::Multipathd: deployment/multipathd/multipathd-container.yaml
# Logging
@ -359,6 +360,7 @@ resource_registry:
OS::TripleO::Services::BootParams: extraconfig/pre_network/boot-params-service.yaml
parameter_defaults:
NeutronMechanismDrivers: ovn
EnablePackageInstall: false
SoftwareConfigTransport: POLL_TEMP_URL

View File

@ -27,7 +27,7 @@ parameters:
from neutron.core_plugins namespace.
type: string
NeutronServicePlugins:
default: "router,qos,segments,trunk"
default: "qos,ovn-router,trunk"
description: |
Comma-separated list of service plugin entrypoints to be loaded from the
neutron.service_plugins namespace.

View File

@ -58,15 +58,15 @@ parameters:
OVNQosDriver:
description: OVN notification driver for Neutron QOS service plugin
type: string
default: NULL
default: ovn-qos
NeutronGeneveMaxHeaderSize:
description: Geneve encapsulation header size
type: number
default: 38
NeutronEnableDVR:
description: Enable Neutron DVR.
default: false
type: boolean
default: ''
type: string
OVNMetadataEnabled:
description: Whether Metadata Service has to be enabled
type: boolean
@ -80,11 +80,15 @@ parameters:
- allowed_values:
- geneve
- vlan
OVNDnsServers:
default: []
description: List of servers to use as as dns forwarders
type: comma_delimited_list
conditions:
neutron_dvr_unset: {equals : [{get_param: NeutronEnableDVR}, '']}
resources:
NeutronMl2Base:
@ -113,9 +117,13 @@ outputs:
neutron::plugins::ml2::ovn::ovn_metadata_enabled: {get_param: OVNMetadataEnabled}
neutron::server::qos_notification_drivers: {get_param: OVNQosDriver}
neutron::plugins::ml2::max_header_size: {get_param: NeutronGeneveMaxHeaderSize}
neutron::plugins::ml2::ovn::dvr_enabled: {get_param: NeutronEnableDVR}
neutron::plugins::ml2::ovn::dns_servers: {get_param: OVNDnsServers}
neutron::plugins::ml2::tenant_network_types: {get_param: NeutronNetworkType}
-
if:
- neutron_dvr_unset
- neutron::plugins::ml2::ovn::dvr_enabled: true
- neutron::plugins::ml2::ovn::dvr_enabled: {get_param: NeutronEnableDVR}
step_config: |
include ::tripleo::profile::base::neutron::plugins::ml2
metadata_settings:

View File

@ -31,12 +31,12 @@ parameters:
via parameter_defaults in the resource registry.
type: json
NeutronMechanismDrivers:
default: 'openvswitch'
default: 'ovn'
description: |
The mechanism drivers for the Neutron tenant network.
type: comma_delimited_list
NeutronTypeDrivers:
default: "vxlan,vlan,flat,gre"
default: "geneve,vlan,flat"
description: |
Comma-separated list of network type driver entrypoints to be loaded.
type: comma_delimited_list
@ -66,10 +66,10 @@ parameters:
description: |
Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges
of VXLAN VNI IDs that are available for tenant network allocation
default: ["1:4094", ]
default: ["1:65536", ]
type: comma_delimited_list
NeutronNetworkType:
default: 'vxlan'
default: 'geneve'
description: The tenant network type for Neutron.
type: comma_delimited_list
NeutronFirewallDriver:

View File

@ -0,0 +1,16 @@
---
features:
- |
This patch switches the default mechanism driver for neutron from
openvswitch to OVN. DVR is now enabled by default which in the case
of OVN means that we're distributing FIP N/S traffic
as E/W is anyways distributed
upgrade:
- |
During upgrade from ml2/ovs please remember to provide similar
environment file to environments/updates/update-from-ml2-ovs-from-rocky.yaml.
This is good also to remember to provide this file as a first
to avoid overwriting custom modification by upgrade environment
file. If you will not provide such file during upgrade from
ml2/ovs you will see error and notification about problems witch
mutually exclusive network drivers.

View File

@ -62,6 +62,9 @@ environments:
OS::TripleO::Standalone::Net::SoftwareConfig: ../../net-config-standalone.yaml
OS::TripleO::NodeExtraConfigPost: ../../extraconfig/post_deploy/standalone_post.yaml
# OVN
OS::TripleO::Services::OVNDBs: ../../docker/services/ovn-dbs.yaml
# Manage SELinux
OS::TripleO::Services::SELinux: ../../deployment/selinux/selinux-baremetal-puppet.yaml