neutron: don't set external_network_bridge option by default

It's deprecated, to be removed in Ocata, and it's discouraged to set it
to anything but the default value ('') that means that routers are not
plugged directly into br-ex, but allows l2 agent to do the wiring.

There are known issues with setting it to br-ex (like wrong port
statuses): If533cf7c4c379be78f5a15073accaff7f65973ab

The only caveat to setting it to the default ('') value is that in that
case l2 agent should be configured with bridge mapping for physical
networks. Since we already configure bridge_mappings for the agent, we
should be safe to unset the option.

Now that it's the default, there is no reason to override it in example
environments.

This patch also changes the description for the parameter to make it
more clear that users are not expected to set it unless they know what
they are doing. Also, moved the parameter into deprecated section to
make it even more clear it's not something to touch in new deployments.

Change-Id: Iade7fbaf92c8c601227f4456a15ea3f13a907ee2
Related-Bug: #1563070
This commit is contained in:
Ihar Hrachyshka 2016-12-06 22:24:30 +00:00
parent 94a42fb5b7
commit 21d2afd4bf
10 changed files with 28 additions and 50 deletions

View File

@ -20,7 +20,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-no-external.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-no-external.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
# NOTE: with no external interface we should be able to use the
# default Neutron l3_agent.ini setting for the external bridge (br-ex)
# i.e. No need to set: NeutronExternalNetworkBridge: "''"

View File

@ -12,9 +12,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-v6.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-v6.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
parameter_defaults:
# This sets 'external_network_bridge' in l3_agent.ini to an empty string
# so that external networks act like provider bridge networks (they
# will plug into br-int instead of br-ex)
NeutronExternalNetworkBridge: "''"

View File

@ -11,9 +11,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
parameter_defaults:
# This sets 'external_network_bridge' in l3_agent.ini to an empty string
# so that external networks act like provider bridge networks (they
# will plug into br-int instead of br-ex)
NeutronExternalNetworkBridge: "''"

View File

@ -11,9 +11,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/controller.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/ceph-storage.yaml
parameter_defaults:
# This sets 'external_network_bridge' in l3_agent.ini to an empty string
# so that external networks act like provider bridge networks (they
# will plug into br-int instead of br-ex)
NeutronExternalNetworkBridge: "''"

View File

@ -19,7 +19,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-no-external.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-no-external.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
# NOTE: with no external interface we should be able to use the
# default Neutron l3_agent.ini setting for the external bridge (br-ex)
# i.e. No need to set: NeutronExternalNetworkBridge: "''"

View File

@ -11,9 +11,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-v6.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-v6.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
parameter_defaults:
# This sets 'external_network_bridge' in l3_agent.ini to an empty string
# so that external networks act like provider bridge networks (they
# will plug into br-int instead of br-ex)
NeutronExternalNetworkBridge: "''"

View File

@ -11,9 +11,3 @@ resource_registry:
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller.yaml OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
parameter_defaults:
# This sets 'external_network_bridge' in l3_agent.ini to an empty string
# so that external networks act like provider bridge networks (they
# will plug into br-int instead of br-ex)
NeutronExternalNetworkBridge: "''"

View File

@ -48,8 +48,6 @@ parameter_defaults:
# ManagementInterfaceDefaultRoute: 10.0.1.1 # ManagementInterfaceDefaultRoute: 10.0.1.1
# Define the DNS servers (maximum 2) for the overcloud nodes # Define the DNS servers (maximum 2) for the overcloud nodes
DnsServers: ["8.8.8.8","8.8.4.4"] DnsServers: ["8.8.8.8","8.8.4.4"]
# Set to empty string to enable multiple external networks or VLANs
NeutronExternalNetworkBridge: "''"
# List of Neutron network types for tenant networks (will be used in order) # List of Neutron network types for tenant networks (will be used in order)
NeutronNetworkType: 'vxlan,vlan' NeutronNetworkType: 'vxlan,vlan'
# The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling. # The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.

View File

@ -22,10 +22,6 @@ parameters:
Debug: Debug:
type: string type: string
default: '' default: ''
NeutronExternalNetworkBridge:
description: Name of bridge used for external network traffic.
type: string
default: 'br-ex'
MonitoringSubscriptionNeutronL3Dvr: MonitoringSubscriptionNeutronL3Dvr:
default: 'overcloud-neutron-l3-dvr' default: 'overcloud-neutron-l3-dvr'
type: string type: string
@ -35,6 +31,19 @@ parameters:
tag: openstack.neutron.agent.l3-compute tag: openstack.neutron.agent.l3-compute
path: /var/log/neutron/l3-agent.log path: /var/log/neutron/l3-agent.log
# DEPRECATED: the following options are deprecated and are currently maintained
# for backwards compatibility. They will be removed in the Pike cycle.
NeutronExternalNetworkBridge:
description: Name of bridge used for external network traffic. Usually L2
agent handles port wiring into external bridge, and hence the
parameter should be unset.
type: string
default: ''
conditions:
external_network_bridge_empty: {equals : [{get_param: NeutronExternalNetworkBridge}, "''"]}
resources: resources:
NeutronBase: NeutronBase:
@ -56,7 +65,11 @@ outputs:
config_settings: config_settings:
map_merge: map_merge:
- get_attr: [NeutronBase, role_data, config_settings] - get_attr: [NeutronBase, role_data, config_settings]
- neutron::agents::l3::external_network_bridge: {get_param: NeutronExternalNetworkBridge} - neutron::agents::l3::agent_mode : 'dvr'
neutron::agents::l3::agent_mode : 'dvr' -
if:
- external_network_bridge_empty
- {}
- neutron::agents::l3::external_network_bridge: {get_param: NeutronExternalNetworkBridge}
step_config: | step_config: |
include tripleo::profile::base::neutron::l3 include tripleo::profile::base::neutron::l3

View File

@ -21,10 +21,6 @@ parameters:
Debug: Debug:
type: string type: string
default: '' default: ''
NeutronExternalNetworkBridge:
description: Name of bridge used for external network traffic.
type: string
default: 'br-ex'
NeutronL3AgentMode: NeutronL3AgentMode:
description: | description: |
Agent mode for L3 agent. Must be one of legacy or dvr_snat. Agent mode for L3 agent. Must be one of legacy or dvr_snat.
@ -43,6 +39,15 @@ parameters:
tag: openstack.neutron.agent.l3 tag: openstack.neutron.agent.l3
path: /var/log/neutron/l3-agent.log path: /var/log/neutron/l3-agent.log
# DEPRECATED: the following options are deprecated and are currently maintained
# for backwards compatibility. They will be removed in the Pike cycle.
NeutronExternalNetworkBridge:
description: Name of bridge used for external network traffic. Usually L2
agent handles port wiring into external bridge, and hence the
parameter should be unset.
type: string
default: ''
conditions: conditions:
external_network_bridge_empty: {equals : [{get_param: NeutronExternalNetworkBridge}, "''"]} external_network_bridge_empty: {equals : [{get_param: NeutronExternalNetworkBridge}, "''"]}