OpenDaylight needs to know the physical network mapping
used with vlan tenant isolation. This is similar to how
the bridge_mappings cofig is used to map the physical
network to the bridge,
i.e. bridge_mappings=physnet1:br-eth1,physnet2:br-eth2.
OpenDaylight needs the physical network device itself:
provider_mappings=physnet1:eth1,physnet2:eth2.
OpenDaylight needs the mapping because the device port is
used when pushing flows. The neutron API's provide the
physical provider network value for example as physnet1.
DocImpact:
Use of VLANs with ML2 and the OpenDaylight mechanism driver
requires OpenDaylight Helium or newer to be installed.
Closes-Bug: #1315492
Change-Id: If7af9ce5735b01c35315a54c79355ca87b72c4b4
... | ... |
@@ -47,9 +47,9 @@ if is_service_enabled odl-compute; then |
47 | 47 |
ODL_MGR_PORT=${ODL_MGR_PORT:-6640} |
48 | 48 |
read ovstbl <<< $(sudo ovs-vsctl get Open_vSwitch . _uuid) |
49 | 49 |
sudo ovs-vsctl set-manager tcp:$ODL_MGR_IP:$ODL_MGR_PORT |
50 |
- if [[ -n "$OVS_BRIDGE_MAPPINGS" ]] && [[ "$ENABLE_TENANT_VLANS" == "True" ]]; then |
|
50 |
+ if [[ -n "$ODL_PROVIDER_MAPPINGS" ]] && [[ "$ENABLE_TENANT_VLANS" == "True" ]]; then |
|
51 | 51 |
sudo ovs-vsctl set Open_vSwitch $ovstbl \ |
52 |
- other_config:bridge_mappings=$OVS_BRIDGE_MAPPINGS |
|
52 |
+ other_config:provider_mappings=$ODL_PROVIDER_MAPPINGS |
|
53 | 53 |
fi |
54 | 54 |
sudo ovs-vsctl set Open_vSwitch $ovstbl other_config:local_ip=$ODL_LOCAL_IP |
55 | 55 |
elif [[ "$1" == "stack" && "$2" == "post-extra" ]]; then |
... | ... |
@@ -61,6 +61,9 @@ ODL_ARGS=${ODL_ARGS:-"-XX:MaxPermSize=384m"} |
61 | 61 |
# How long to pause after ODL starts to let it complete booting |
62 | 62 |
ODL_BOOT_WAIT=${ODL_BOOT_WAIT:-60} |
63 | 63 |
|
64 |
+# The physical provider network to device mapping |
|
65 |
+ODL_PROVIDER_MAPPINGS=${ODL_PROVIDER_MAPPINGS:-physnet1:eth1} |
|
66 |
+ |
|
64 | 67 |
# Set up default directories |
65 | 68 |
|
66 | 69 |
|