Bug 1491327 - Port status update does not work w/ High Availability
Summary: Port status update does not work w/ High Availability
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: opendaylight
Version: 12.0 (Pike)
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: beta
: 13.0 (Queens)
Assignee: Josh Hershberg
QA Contact: Tomas Jamrisko
URL:
Whiteboard: scale_lab
: 1486917 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-13 14:08 UTC by Tomas Jamrisko
Modified: 2018-10-18 07:23 UTC (History)
10 users (show)

Fixed In Version: opendaylight-8.0.0-3
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
N/A
Last Closed: 2018-06-27 13:36:16 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
OpenDaylight Bug 9147 None None None 2017-09-13 14:08:48 UTC
OpenDaylight gerrit 9256 None None None 2018-03-21 12:13:14 UTC
OpenDaylight gerrit 64775 None None None 2018-03-21 14:10:09 UTC
OpenDaylight gerrit 66777 None None None 2018-03-21 14:09:16 UTC
Red Hat Product Errata RHEA-2018:2086 None None None 2018-06-27 13:37:03 UTC

Description Tomas Jamrisko 2017-09-13 14:08:49 UTC
Opening downstream based on a bug from upstream, ASCII art might be messed up in buzgilla but it should be readable elsewhere:

Joshua 2017-09-12 12:07:38 UTC
Our current deployment has three controllers, each with an odl instance and a neutron/n-odl instance. The neutron/n-odl instances connect to odl via a VIP. In the deployment we have all webwsocket connections are established against odl0 but the neutron port events that trigger the flow creation and set the operational port status to ACTIVE occur on odl2 which is the "leader". This means that the websocket event is generated on odl2 only...but no one is listening for websocket events on odl2...so the port never gets set to ACTIVE in neutron and the VM remains in BUILD state forever and ever. 

+-----------------------------+      +-----------------------------+      +-----------------------------+
|                             |      |                             |      |                             |
|                             |      |                             |      |                             |
|   +---------------------+   |      |   +---------------------+   |      |   +---------------------+   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   |    odl0             |   |      |   |    odl1             |   |      |   |    odl2             |   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   |                     |   |      |   |                     |   |      |   |   port created here |   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   +----------+----------+   |      |   +---------------------+   |      |   +---------------------+   |
|              ^              |      |                             |      |                             |
|              |              |      |                             |      |                             |
|              websocket----------------------------+-------------------------------------+             |
|              |              |      |              |              |      |               |             |
|              |              |      |              |              |      |               |             |
|   +----------+----------+   |      |   +----------+----------+   |      |   +-----------+---------+   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   |  neutron/n-odl      |   |      |   |  neutron/n-odl      |   |      |   |  neutron/n-odl      |   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   |                     |   |      |   |                     |   |      |   |                     |   |
|   +---------------------+   |      |   +---------------------+   |      |   +---------------------+   |
|                             |      |                             |      |                             |
|                             |      |                             |      |                             |
+-----------------------------+      +-----------------------------+      +-----------------------------+

Comment 2 Tomas Jamrisko 2017-09-19 08:28:53 UTC
Version in which this was observed:

opendaylight-6.1.0-2.el7ost

Comment 3 Tim Rozet 2017-09-20 12:59:39 UTC
*** Bug 1486917 has been marked as a duplicate of this bug. ***

Comment 4 Tim Rozet 2017-09-20 20:37:26 UTC
As a workaround for now, I have proposed patches disabling port status in OOO for HA ODL deployments:
https://review.openstack.org/#/c/505788/

Comment 5 Nir Yechiel 2017-09-28 13:40:41 UTC
Josh, can you please update this BZ? Is their an upstream NetVirt fix?

Comment 6 Aaron Smith 2017-10-04 00:58:47 UTC
Is the root of the issue that fact that the ODL "leader" selection is independent of pacemakers selection for HAProxy master?

Comment 9 Josh Hershberg 2018-03-21 09:19:58 UTC
https://git.opendaylight.org/gerrit/#/c/64602/

Janki, please add the director patches for this. The ones that set the IP of each ODL in xml config.

Comment 13 Tomas Jamrisko 2018-03-28 14:28:06 UTC
Tested on an HA deployment.

Created multiple instances across multiple networks. The instances correctly switched to ACTIVE, connectivity worked as expected.

Comment 14 Janki 2018-03-29 04:29:42 UTC
(In reply to Josh Hershberg from comment #9)
> https://git.opendaylight.org/gerrit/#/c/64602/
> 
> Janki, please add the director patches for this. The ones that set the IP of
> each ODL in xml config.

Setting of IP in xml file is done by Puppet-ODL. The patch (Gerrit id 64775) for it is already merged and backported to Carbon.

Another patch (Gerrit id 66777) is also pushed to reflect the new file changes and backported to Nitrogen.

Comment 16 errata-xmlrpc 2018-06-27 13:36:16 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2018:2086


Note You need to log in before you can comment on or make changes to this bug.