Delete NeutronLinuxBridgeInterfaceDriver
This is a really old carryover from when neutron was quantum and the virt drivers would plug/unplug using the driver defined by the linuxnet_interface_driver config option, which is deprecated and only used for nova-network now. We use os-vif now for plugging and unplugging bridge VIFs with neutron so this old unused driver code can be removed. It wasn't even tested. Change-Id: I07f25685e4fb650c22838bc3afab2bb40809e438 Related-Bug: #1801919
This commit is contained in:
@@ -1706,67 +1706,6 @@ class LinuxOVSInterfaceDriver(LinuxNetInterfaceDriver):
|
||||
return dev
|
||||
|
||||
|
||||
# plugs interfaces using Linux Bridge when using NeutronManager
|
||||
class NeutronLinuxBridgeInterfaceDriver(LinuxNetInterfaceDriver):
|
||||
|
||||
BRIDGE_NAME_PREFIX = 'brq'
|
||||
GATEWAY_INTERFACE_PREFIX = 'gw-'
|
||||
|
||||
def plug(self, network, mac_address, gateway=True):
|
||||
dev = self.get_dev(network)
|
||||
bridge = self.get_bridge(network)
|
||||
if not gateway:
|
||||
# If we weren't instructed to act as a gateway then add the
|
||||
# appropriate flows to block all non-dhcp traffic.
|
||||
# .. and make sure iptbles won't forward it as well.
|
||||
iptables_manager.ipv4['filter'].add_rule('FORWARD',
|
||||
('--in-interface %s -j %s'
|
||||
% (bridge, CONF.iptables_drop_action)))
|
||||
iptables_manager.ipv4['filter'].add_rule('FORWARD',
|
||||
('--out-interface %s -j %s'
|
||||
% (bridge, CONF.iptables_drop_action)))
|
||||
return bridge
|
||||
else:
|
||||
for rule in get_gateway_rules(bridge):
|
||||
iptables_manager.ipv4['filter'].add_rule(*rule)
|
||||
|
||||
linux_net_utils.create_tap_dev(dev, mac_address)
|
||||
|
||||
if not linux_net_utils.device_exists(bridge):
|
||||
LOG.debug("Starting bridge %s ", bridge)
|
||||
utils.execute('brctl', 'addbr', bridge, run_as_root=True)
|
||||
utils.execute('brctl', 'setfd', bridge, str(0), run_as_root=True)
|
||||
utils.execute('brctl', 'stp', bridge, 'off', run_as_root=True)
|
||||
utils.execute('ip', 'link', 'set', bridge, 'address', mac_address,
|
||||
run_as_root=True, check_exit_code=[0, 2, 254])
|
||||
utils.execute('ip', 'link', 'set', bridge, 'up', run_as_root=True,
|
||||
check_exit_code=[0, 2, 254])
|
||||
LOG.debug("Done starting bridge %s", bridge)
|
||||
|
||||
full_ip = '%s/%s' % (network['dhcp_server'],
|
||||
network['cidr'].rpartition('/')[2])
|
||||
utils.execute('ip', 'address', 'add', full_ip, 'dev', bridge,
|
||||
run_as_root=True, check_exit_code=[0, 2, 254])
|
||||
|
||||
return dev
|
||||
|
||||
def unplug(self, network):
|
||||
dev = self.get_dev(network)
|
||||
if not linux_net_utils.device_exists(dev):
|
||||
return None
|
||||
else:
|
||||
linux_net_utils.delete_net_dev(dev)
|
||||
return dev
|
||||
|
||||
def get_dev(self, network):
|
||||
dev = self.GATEWAY_INTERFACE_PREFIX + str(network['uuid'][0:11])
|
||||
return dev
|
||||
|
||||
def get_bridge(self, network):
|
||||
bridge = self.BRIDGE_NAME_PREFIX + str(network['uuid'][0:11])
|
||||
return bridge
|
||||
|
||||
|
||||
iptables_manager = IptablesManager()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user