[Bug 1852221] Re: ovs-vswitchd needs to be forced to reconfigure after adding protocols to bridges
Edward Hope-Morley
1852221 at bugs.launchpad.net
Tue Jun 2 12:57:55 UTC 2020
** No longer affects: openvswitch (Ubuntu Focal)
** No longer affects: openvswitch (Ubuntu Eoan)
** Also affects: neutron (Ubuntu)
Importance: Undecided
Status: New
** Also affects: openvswitch (Ubuntu Focal)
Importance: Undecided
Status: New
** Also affects: neutron (Ubuntu Focal)
Importance: Undecided
Status: New
** Also affects: openvswitch (Ubuntu Eoan)
Importance: Undecided
Status: New
** Also affects: neutron (Ubuntu Eoan)
Importance: Undecided
Status: New
** Changed in: neutron (Ubuntu Focal)
Status: New => Fix Released
** No longer affects: openvswitch (Ubuntu Eoan)
** No longer affects: openvswitch (Ubuntu Focal)
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to openvswitch in Ubuntu.
https://bugs.launchpad.net/bugs/1852221
Title:
ovs-vswitchd needs to be forced to reconfigure after adding protocols
to bridges
Status in OpenStack neutron-openvswitch charm:
Invalid
Status in Ubuntu Cloud Archive:
Fix Released
Status in Ubuntu Cloud Archive train series:
New
Status in Ubuntu Cloud Archive ussuri series:
Fix Released
Status in kolla-ansible:
New
Status in neutron:
New
Status in openvswitch:
New
Status in neutron package in Ubuntu:
New
Status in openvswitch package in Ubuntu:
Confirmed
Status in neutron source package in Eoan:
New
Status in neutron source package in Focal:
Fix Released
Bug description:
[Impact]
When the neutron native ovs driver creates bridges it will sometimes apply/modify the supported openflow protocols on that bridge. The OpenVswitch versions shipped with Train and Ussuri don't support this which results in OF protocol mismatches when neutron performs operations on that bridge. The patch we are backporting here ensures that all protocol versions are set on the bridge at the point on create/init.
[Test Case]
* deploy Openstack Train
* go to a compute host and do: sudo ovs-ofctl -O OpenFlow14 dump-flows br-int
* ensure you do not see "negotiation failed" errors
[Regression Potential]
* this patch is ensuring that newly created Neutron ovs bridges have OpenFlow 1.0, 1.3 and 1.4 set on them. Neutron already supports these so is not expected to have any change in behaviour. The patch will not impact bridges that already exist (so will not fix them either if they are affected).
--------------------------------------------------------------------------
As part of programming OpenvSwitch, Neutron will add to which
protocols bridges support [0].
However, the Open vSwitch `ovs-vswitchd` process does not appear to
always update its perspective of which protocol versions it should
support for bridges:
# ovs-ofctl -O OpenFlow14 dump-flows br-int
2019-11-12T12:52:56Z|00001|vconn|WARN|unix:/var/run/openvswitch/br-int.mgmt: version negotiation failed (we support version 0x05, peer supports version 0x01)
ovs-ofctl: br-int: failed to connect to socket (Broken pipe)
# systemctl restart ovsdb-server
# ovs-ofctl -O OpenFlow14 dump-flows br-int
cookie=0x84ead4b79da3289a, duration=1.576s, table=0, n_packets=0, n_bytes=0, priority=65535,vlan_tci=0x0fff/0x1fff actions=drop
cookie=0x84ead4b79da3289a, duration=1.352s, table=0, n_packets=0, n_bytes=0, priority=5,in_port="int-br-ex",dl_dst=fa:16:3f:69:2e:c6 actions=goto_table:4
...
(Success)
The restart of the `ovsdb-server` process above will make `ovs-
vswitchd` reassess its configuration.
0:
https://github.com/openstack/neutron/blob/0fa7e74ebb386b178d36ae684ff04f03bdd6cb0d/neutron/agent/common/ovs_lib.py#L281
To manage notifications about this bug go to:
https://bugs.launchpad.net/charm-neutron-openvswitch/+bug/1852221/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list