Introduce PUBLIC_BRIDGE_MTU variable to set br-ex MTU

This variable can be used to accommodate for underlying infrastructure
that does not provide full 1500-sized traffic, or maybe instead gives
access to Jumbo frames.

Conflicts:
	lib/neutron_plugins/linuxbridge_agent
	lib/neutron_plugins/openvswitch_agent
	lib/neutron_plugins/services/l3

Change-Id: I38a80bac18673a30842a7b997d0669fed5aff976
Related-Bug: #1603268
(cherry picked from commit 7b5c7dce53)
This commit is contained in:
Ihar Hrachyshka 2016-07-15 20:17:13 +02:00
parent e16da5130b
commit b078590721
5 changed files with 18 additions and 2 deletions

View File

@ -668,6 +668,15 @@ function create_disk {
fi
}
# set_mtu - Set MTU on a device
function set_mtu {
local dev=$1
local mtu=$2
sudo ip link set mtu $mtu dev $dev
}
# Restore xtrace
$_XTRACE_FUNCTIONS

View File

@ -183,6 +183,7 @@ IPV6_PROVIDER_NETWORK_GATEWAY=${IPV6_PROVIDER_NETWORK_GATEWAY:-}
# Define the public bridge that will transmit traffic from VMs to the
# physical network - used by both the OVS and Linux Bridge drivers.
PUBLIC_BRIDGE=${PUBLIC_BRIDGE:-br-ex}
PUBLIC_BRIDGE_MTU=${PUBLIC_BRIDGE_MTU:-1500}
# Use flat providernet for public network
#

View File

@ -48,6 +48,7 @@ function neutron_plugin_configure_dhcp_agent {
function neutron_plugin_configure_l3_agent {
sudo brctl addbr $PUBLIC_BRIDGE
set_mtu $PUBLIC_BRIDGE $PUBLIC_BRIDGE_MTU
iniset $Q_L3_CONF_FILE DEFAULT external_network_bridge
iniset $Q_L3_CONF_FILE DEFAULT l3_agent_manager neutron.agent.l3_agent.L3NATAgentWithStateReport
}

View File

@ -102,7 +102,7 @@ function neutron_plugin_configure_plugin_agent {
sudo ovs-vsctl -- --may-exist add-port "br-$GUEST_INTERFACE_DEFAULT" $GUEST_INTERFACE_DEFAULT
# Create external bridge and add port
_neutron_ovs_base_add_bridge $PUBLIC_BRIDGE
_neutron_ovs_base_add_public_bridge
sudo ovs-vsctl -- --may-exist add-port $PUBLIC_BRIDGE $PUBLIC_INTERFACE_DEFAULT
# Set bridge mappings to "physnet1:br-$GUEST_INTERFACE_DEFAULT"

View File

@ -105,11 +105,16 @@ function _neutron_ovs_base_configure_l3_agent {
sudo ip link set $Q_PUBLIC_VETH_EX up
sudo ip addr flush dev $Q_PUBLIC_VETH_EX
else
_neutron_ovs_base_add_bridge $PUBLIC_BRIDGE
_neutron_ovs_base_add_public_bridge
sudo ovs-vsctl br-set-external-id $PUBLIC_BRIDGE bridge-id $PUBLIC_BRIDGE
fi
}
function _neutron_ovs_base_add_public_bridge {
_neutron_ovs_base_add_bridge $PUBLIC_BRIDGE
set_mtu $PUBLIC_BRIDGE $PUBLIC_BRIDGE_MTU
}
function _neutron_ovs_base_configure_nova_vif_driver {
:
}