[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
Platform: 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.

---------------------------- --------------------------- ----------------------------

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

---------------------------- --------------------------- ----------------------------



 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.

Generated at Wed Feb 07 20:22:46 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.