Merge "Switch default neutron ML2 mechanism driver to OVN"
This commit is contained in:
commit
d3ca79db72
@ -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 | | | | | | |
|
||||
+----------------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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}
|
@ -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
|
||||
|
@ -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}
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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: |
|
||||
|
@ -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:
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -48,7 +48,7 @@ parameters:
|
||||
default: []
|
||||
|
||||
NeutronMechanismDrivers:
|
||||
default: 'openvswitch'
|
||||
default: 'ovn'
|
||||
description: |
|
||||
The mechanism drivers for the Neutron tenant network.
|
||||
type: comma_delimited_list
|
||||
|
@ -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:
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
35
environments/services/neutron-ovs.yaml
Normal file
35
environments/services/neutron-ovs.yaml
Normal 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
|
@ -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
|
||||
|
@ -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
|
||||
|
8
environments/updates/update-from-ml2-ovs-from-rocky.yaml
Normal file
8
environments/updates/update-from-ml2-ovs-from-rocky.yaml
Normal 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'
|
@ -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
|
||||
|
||||
|
@ -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.
|
||||
|
@ -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:
|
||||
|
@ -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:
|
||||
|
@ -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.
|
@ -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
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user