
In order to test NGS compatability and generally move the state forward we need to be able to wire in switch simulators. This is *not* intended to be run in CI, due to known performance issues. This first pass hooks up Dell Force10 switches with OS version 9.13, and does so we can configure the switch as part of the setup. This makes the prior behavior of configure-vm.py and the VM templates to be able to execute as it did before I0ef1ad1b2e50cb26839c618a1367704d51ed8a4d to enable the simulator attachments because we can't exercise network switch simulators with dynamic post-vm start network attachments, becuase the attachment to the switch sim must be done in advance of switch VM launch. Change-Id: I4addd71adea0b3f6e56b967db848546b5c56561e
36 lines
1.6 KiB
Plaintext
36 lines
1.6 KiB
Plaintext
enable_service ironic ir-api ir-cond ir-novnc ir-sw-sim
|
|
|
|
source $DEST/ironic/devstack/common_settings
|
|
|
|
# Set a default, so we can overwrite it if we need to.
|
|
PUBLIC_BRIDGE_MTU=${PUBLIC_BRIDGE_MTU:-1500}
|
|
|
|
# NOTE(vsaienko) mtu calculation has been changed recently to 1450
|
|
# https://github.com/openstack/neutron/commit/51a697
|
|
# and caused https://bugs.launchpad.net/ironic/+bug/1631875
|
|
# Get the smallest local MTU
|
|
local_mtu=$(ip link show | sed -ne 's/.*mtu \([0-9]\+\).*/\1/p' | sort -n | head -1)
|
|
|
|
# At some point, devstack started pre-populating a public bridge mtu,
|
|
# which is fine, but that also got set and used in neutron as the MTU,
|
|
# which is fine, but if our MTU is lower, then that can create headaches,
|
|
# unless we *need* it lower for specific multinode testing.
|
|
# so if the calculated local_mtu *is* higher, then we are wrong, and trust
|
|
# a prepopulated variable (1500-40-30=1430 bytes)
|
|
if [ $local_mtu -gt $PUBLIC_BRIDGE_MTU ]; then
|
|
local_mtu=$PUBLIC_BRIDGE_MTU
|
|
fi
|
|
|
|
# 50 bytes is overhead for vxlan (which is greater than GRE
|
|
# allowing us to use either overlay option with this MTU).
|
|
# However, if traffic is flowing over IPv6 tunnels, then
|
|
# The overhead is essentially another 78 bytes. In order to
|
|
# handle both cases, lets go ahead and drop the maximum by
|
|
# 78 bytes, while not going below 1280 to make IPv6 work at all.
|
|
if [[ "$HOST_TOPOLOGY" == "multinode" ]]; then
|
|
# This logic is to artificially pin down the PUBLIC_BRIDGE_MTU for
|
|
# when we are using mutlinode architecture, as to transfer the
|
|
# bytes over the multinode VXLAN tunnel, we need to drop the mtu.
|
|
PUBLIC_BRIDGE_MTU=${OVERRIDE_PUBLIC_BRIDGE_MTU:-$((local_mtu - 78))}
|
|
fi
|