neutron/neutron
Arjun Baindur e68cc4d849 Change duplicate OVS bridge datapath-ids
The native OVS/ofctl controllers talk to the bridges using a
datapath-id, instead of the bridge name. The datapath ID is
auto-generated based on the MAC address of the bridge's NIC.
In the case where bridges are on VLAN interfaces, they would
have the same MACs, therefore the same datapath-id, causing
flows for one physical bridge to be programmed on each other.

The datapath-id is a 64-bit field, with lower 48 bits being
the MAC. We set the upper 12 unused bits to identify each
unique physical bridge

This could also be fixed manually using ovs-vsctl set, but
it might be beneficial to automate this in the code.

ovs-vsctl set bridge <mybr> other-config:datapath-id=<datapathid>

You can change this yourself using above command.

You can view/verify current datapath-id via

ovs-vsctl get Bridge br-vlan datapath-id
"00006ea5a4b38a4a"

(please note that other-config is needed in the set, but not get)

Closes-Bug: #1697243
Co-Authored-By: Rodolfo Alonso Hernandez <ralonsoh@redhat.com>

Change-Id: I575ddf0a66e2cfe745af3874728809cf54e37745
(cherry picked from commit 379a9faf62)
(cherry picked from commit c02b1148db)
(cherry picked from commit c7031e2cd3)
2019-04-03 00:07:41 +00:00
..
agent Change duplicate OVS bridge datapath-ids 2019-04-03 00:07:41 +00:00
api dhcp: serializing port delete and network rpc calls 2018-12-03 22:15:27 +01:00
callbacks Merge "Routed networks IPv4 inventory in Nova GRP" 2017-01-24 22:37:41 +00:00
cmd More efficiently clean up OVS ports 2018-01-29 08:15:55 -06:00
common Fix eventlet imports issue 2018-06-02 09:57:26 +00:00
conf [OVS] Add mac-table-size to be set on each ovs bridge 2018-06-21 07:41:03 +00:00
core_extensions Adopt neutron-lib plugin directory 2016-11-23 04:45:33 -07:00
db Fix notification about arp entries for dvr routers 2019-02-18 10:22:19 +01:00
debug Replace device owners hard coded strings to neutron_lib constants 2016-07-12 04:11:35 -04:00
extensions Enhance tag mechanism 2017-02-06 10:09:05 +00:00
hacking Register sqlalchemy events through hook for UT cleanup 2017-01-20 04:15:01 -08:00
ipam Reduce IP address collision during port creating 2018-07-20 10:36:07 +00:00
locale Imported Translations from Zanata 2017-10-31 07:43:29 +00:00
notifiers Turn nova notifier into a proper rate limiter 2017-03-20 20:48:58 +00:00
objects Revert "Ensure _get_changed_synthetic_fields() return updatable fields" 2018-06-22 19:15:28 +00:00
pecan_wsgi [Pecan] Fix custom tenant_id project_id matching 2017-06-14 16:47:09 +00:00
plugins Change duplicate OVS bridge datapath-ids 2019-04-03 00:07:41 +00:00
privileged Add capabilities for privsep 2018-10-29 19:42:40 +00:00
quota Register sqlalchemy events through hook for UT cleanup 2017-01-20 04:15:01 -08:00
scheduler Avoid redundant HA port creation during migration 2017-09-11 19:57:01 +00:00
server neutron-rpc-server fails with no plugins loaded 2017-06-14 11:01:52 +00:00
services Fix meter-label-rule creation 2018-04-16 16:34:22 +00:00
tests Change duplicate OVS bridge datapath-ids 2019-04-03 00:07:41 +00:00
__init__.py Hacking rule to check i18n usage 2016-03-30 21:28:37 -04:00
_i18n.py Move i18n to _i18n, as per oslo_i18n guidelines 2015-12-01 19:29:10 -07:00
auth.py
context.py Correctly set project_name 2017-01-20 16:11:00 -05:00
manager.py Adopt neutron-lib plugin directory 2016-11-23 04:45:33 -07:00
neutron_plugin_base_v2.py Revert "Revert "Remove threading before process forking"" 2016-06-02 21:26:08 +00:00
opts.py XenAPI: Support daemon mode for rootwrap 2017-01-19 07:33:43 +00:00
policy.py Neutron server was not compatible with member actions 2017-06-19 10:32:48 +02:00
service.py Adopt neutron-lib plugin directory 2016-11-23 04:45:33 -07:00
version.py
worker.py Move AgentStatusCheckWorker to PeriodicWorker 2016-11-17 15:31:19 -08:00
wsgi.py Pass parameters when create eventlet.wsgi server 2018-02-02 19:11:17 +00:00