neutron: Remove linuxbridge mechanism driver support

The linuxbridge mechanism driver was marked experimental during Zed
cycle and was removed this cycle.

Depends-on: https://review.opendev.org/c/openstack/neutron/+/927216
Change-Id: I67c31b94ff36a4cf89c5d118e94c6ab877223cd0
This commit is contained in:
Takashi Kajinami
2025-01-16 12:58:36 +09:00
parent 9073cffbd5
commit b34ed53984
5 changed files with 9 additions and 78 deletions

View File

@@ -106,7 +106,7 @@ Global Options
Specify 'y' if you want to use unsupported parameters. This should be used only if you know what you are doing. Issues caused by using unsupported options will not be fixed before the next major release. ['y', 'n']
**CONFIG_USE_SUBNETS**
Specify 'y' if you want to use subnet addresses (in CIDR format) instead of interface names in following options: CONFIG_NEUTRON_OVS_BRIDGE_IFACES, CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS, CONFIG_NEUTRON_OVS_TUNNEL_IF. This is useful for cases when interface names are not same on all installation hosts.
Specify 'y' if you want to use subnet addresses (in CIDR format) instead of interface names in following options: CONFIG_NEUTRON_OVS_BRIDGE_IFACES, CONFIG_NEUTRON_OVS_TUNNEL_IF. This is useful for cases when interface names are not same on all installation hosts.
SSL setup
---------
@@ -737,7 +737,7 @@ Neutron config
The password to use for OpenStack Networking to access the database.
**CONFIG_NEUTRON_L3_EXT_BRIDGE**
The name of the Open vSwitch bridge (or empty for linuxbridge) for the OpenStack Networking L3 agent to use for external traffic. Specify 'provider' if you intend to use a provider network to handle external traffic.
The name of the Open vSwitch bridge for the OpenStack Networking L3 agent to use for external traffic. Specify 'provider' if you intend to use a provider network to handle external traffic.
**CONFIG_NEUTRON_METADATA_PW**
Password for the OpenStack Networking metadata agent.
@@ -758,7 +758,7 @@ Neutron ML2 plugin config
Comma-separated, ordered list of network types to allocate as tenant networks. The 'local' value is only useful for single-box testing and provides no connectivity between hosts. ['local', 'vlan', 'gre', 'vxlan', 'geneve']
**CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS**
Comma-separated ordered list of networking mechanism driver entry points to be loaded from the neutron.ml2.mechanism_drivers namespace. ['logger', 'test', 'linuxbridge', 'openvswitch', 'arista', 'mlnx', 'l2population', 'sriovnicswitch', 'ovn']
Comma-separated ordered list of networking mechanism driver entry points to be loaded from the neutron.ml2.mechanism_drivers namespace. ['logger', 'test', 'openvswitch', 'arista', 'mlnx', 'l2population', 'sriovnicswitch', 'ovn']
**CONFIG_NEUTRON_ML2_FLAT_NETWORKS**
Comma-separated list of physical_network names with which flat networks can be created. Use * to allow flat networks with arbitrary physical_network names.
@@ -780,13 +780,7 @@ Neutron ML2 plugin config
**CONFIG_NEUTRON_L2_AGENT**
Name of the L2 agent to be used with OpenStack Networking. ['linuxbridge', 'openvswitch', 'ovn']
Neutron LB agent config
-----------------------
**CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS**
Comma-separated list of interface mappings for the OpenStack Networking linuxbridge plugin. Each tuple in the list must be in the format <physical_network>:<net_interface>. Example: physnet1:eth1,physnet2:eth2,physnet3:eth3.
Name of the L2 agent to be used with OpenStack Networking. ['openvswitch', 'ovn']
Neutron OVS agent config
------------------------

View File

@@ -114,21 +114,6 @@ def initConfig(controller):
"CONDITION": False},
],
"NEUTRON_LB_AGENT": [
{"CMD_OPTION": "os-neutron-lb-interface-mappings",
"PROMPT": ("Enter a comma separated list of interface mappings "
"for the Neutron linuxbridge plugin"),
"OPTION_LIST": [],
"VALIDATORS": [],
"DEFAULT_VALUE": "",
"MASK_INPUT": False,
"LOOSE_VALIDATION": True,
"CONF_NAME": "CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS",
"USE_DEFAULT": False,
"NEED_CONFIRM": False,
"CONDITION": False},
],
"NEUTRON_OVS_AGENT": [
{"CMD_OPTION": "os-neutron-ovs-bridge-mappings",
"PROMPT": ("Enter a comma separated list of bridge mappings for "
@@ -342,7 +327,7 @@ def initConfig(controller):
"CONF_NAME": "CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS",
"PROMPT": ("Enter a comma separated ordered list of networking "
"mechanism driver entrypoints"),
"OPTION_LIST": ["logger", "test", "linuxbridge", "openvswitch",
"OPTION_LIST": ["logger", "test", "openvswitch",
"arista", "mlnx", "l2population",
"sriovnicswitch", "ovn"],
"VALIDATORS": [validators.validate_multi_options],
@@ -423,7 +408,7 @@ def initConfig(controller):
{"CMD_OPTION": "os-neutron-l2-agent",
"PROMPT": ("Enter the name of the L2 agent to be used "
"with Neutron"),
"OPTION_LIST": ["linuxbridge", "openvswitch", "ovn"],
"OPTION_LIST": ["openvswitch", "ovn"],
"VALIDATORS": [validators.validate_options],
"DEFAULT_VALUE": "ovn",
"MASK_INPUT": False,
@@ -466,13 +451,6 @@ def initConfig(controller):
"POST_CONDITION": False,
"POST_CONDITION_MATCH": True},
{"GROUP_NAME": "NEUTRON_LB_AGENT",
"DESCRIPTION": "Neutron LB agent config",
"PRE_CONDITION": use_ml2_with_linuxbridge,
"PRE_CONDITION_MATCH": True,
"POST_CONDITION": False,
"POST_CONDITION_MATCH": True},
{"GROUP_NAME": "NEUTRON_OVS_AGENT",
"DESCRIPTION": "Neutron OVS agent config",
"PRE_CONDITION": use_ml2_with_ovs,
@@ -523,7 +501,6 @@ def initSequences(controller):
has_ovs = 'openvswitch' in config['CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS']
has_ovn = 'ovn' in config['CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS']
has_lb = 'linuxbridge' in config['CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS']
if config['CONFIG_IRONIC_INSTALL'] == 'y':
config['CONFIG_NEUTRON_ML2_TYPE_DRIVERS'] += ', flat'
@@ -533,7 +510,7 @@ def initSequences(controller):
config['CONFIG_NEUTRON_ML2_FLAT_NETWORKS'] = 'extnet'
if use_ml2_with_sriovnicswitch(config):
if (not has_ovs) and (not has_lb):
if not has_ovs:
config['CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS'] += ', openvswitch'
if use_ml2_with_ovn(config):
@@ -623,12 +600,6 @@ def neutron_install(config):
return config['CONFIG_NEUTRON_INSTALL'] == 'y'
def use_ml2_with_linuxbridge(config):
ml2_used = (neutron_install(config) and
config["CONFIG_NEUTRON_L2_AGENT"] == 'linuxbridge')
return ml2_used
def use_ml2_with_ovs(config):
return (neutron_install(config) and
config["CONFIG_NEUTRON_L2_AGENT"] == 'openvswitch')
@@ -675,8 +646,6 @@ def get_if_driver(config):
agent = config['CONFIG_NEUTRON_L2_AGENT']
if agent == "openvswitch":
return 'neutron.agent.linux.interface.OVSInterfaceDriver'
elif agent == 'linuxbridge':
return 'neutron.agent.linux.interface.BridgeInterfaceDriver'
else:
# OVN does not provides a interface driver
return ''
@@ -719,7 +688,7 @@ def create_manifests(config, messages):
if use_ml2_with_ovn(config):
service_plugins.append('ovn-router')
else:
# ML2 uses the L3 Router service plugin to implement l3 agent for linuxbridge and ovs
# ML2 uses the L3 Router service plugin to implement l3 agent for ovs
service_plugins.append('router')
if config['CONFIG_NEUTRON_METERING_AGENT_INSTALL'] == 'y':
@@ -937,7 +906,7 @@ def create_l2_agent_manifests(config, messages):
config["CONFIG_NEUTRON_OVS_BRIDGE_IFACES_COMPUTE"] = []
no_local_types = set(ovs_type) & set(['gre', 'vxlan', 'vlan', 'flat'])
no_tunnel_types = set(ovs_type) & set(['vlan', 'flat'])
elif agent != "linuxbridge":
else:
raise KeyError("Unknown layer2 agent")
for host in network_hosts | compute_hosts:

View File

@@ -1,30 +0,0 @@
class packstack::neutron::lb_agent ()
{
$bind_host = lookup('CONFIG_IP_VERSION') ? {
'ipv6' => '::0',
default => '0.0.0.0',
# TO-DO(mmagr): Add IPv6 support when hostnames are used
}
$neutron_lb_interface_mappings = lookup('CONFIG_NEUTRON_LB_INTERFACE_MAPPINGS', { merge => 'unique' })
$use_subnets_value = lookup('CONFIG_USE_SUBNETS')
$use_subnets = $use_subnets_value ? {
'y' => true,
default => false,
}
if ( 'vxlan' in lookup('CONFIG_NEUTRON_ML2_TYPE_DRIVERS', { merge => 'unique' }) ){
class { 'neutron::agents::ml2::linuxbridge':
physical_interface_mappings => force_interface($neutron_lb_interface_mappings, $use_subnets),
tunnel_types => ['vxlan'],
local_ip => $bind_host,
}
}
else {
class { 'neutron::agents::ml2::linuxbridge':
physical_interface_mappings => force_interface($neutron_lb_interface_mappings, $use_subnets),
}
}
}

View File

@@ -47,7 +47,6 @@ include 'packstack::nova::neutron'
include 'packstack::neutron::rabbitmq'
case lookup('CONFIG_NEUTRON_L2_AGENT') {
'openvswitch': { include 'packstack::neutron::ovs_agent' }
'linuxbridge': { include 'packstack::neutron::lb_agent' }
'ovn': { include 'packstack::neutron::ovn_agent'
include 'packstack::neutron::ovn_metadata'
}

View File

@@ -28,7 +28,6 @@ if lookup('CONFIG_NEUTRON_INSTALL') == 'y' {
case lookup('CONFIG_NEUTRON_L2_AGENT') {
'openvswitch': { include 'packstack::neutron::ovs_agent' }
'linuxbridge': { include 'packstack::neutron::lb_agent' }
'ovn': { include 'packstack::neutron::ovn_agent' }
default: { include 'packstack::neutron::ovs_agent' }
}