[NETVIRT-904] port status update does not work w/ High Availability Created: 12/Sep/17 Updated: 29/May/18 Resolved: 22/May/18 |
|
| Status: | Resolved |
| Project: | netvirt |
| Component/s: | General |
| Affects Version/s: | Carbon |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Medium |
| Reporter: | Josh Hershberg | Assignee: | Josh Hershberg |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| External issue ID: | 9147 |
| Priority: | Highest |
| Description |
|
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. ----------------------------
---------------------------- |
| Comments |
| Comment by Josh Hershberg [ 12/Sep/17 ] |
|
NOTE: THE ASCII ART IS MESSED UP BUT IF YOU CUT-PASTE IT ELSEWHERE YOU'LL BE ABLE TO SEE IT |
| Comment by Josh Hershberg [ 12/Sep/17 ] |
|
Note that the reason the websocket event fires only on the leader is because it is triggered (in netconf) by a data change notification which occurs only as a result of a write and not a write triggered by replication. |
| Comment by Tim Rozet [ 20/Sep/17 ] |
|
Why do we not open websocket connections on every ODL to neutron IP/VIP. HAProxy can loadbalance the websocket connections to neutron. |
| Comment by Sam Hague [ 06/Apr/18 ] |
|
jhershbe I think this works now, so please update accordingly. |