[ovn]neutron-server allow more efficient reconnections when connecting to clustered OVSDB servers.

Bug #1958593 reported by ZhouHeng
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
New
Undecided
Unassigned

Bug Description

When our cluster has a lot of data, once theNB/SB needs to be reconnected (the NB/SB is disconnected or the leader switches), neutron needs to resynchronize and process all the data from NB/SB, which will occupy resources. Moreover, creating a virtual machine during reconnection may cause a timeout waiting for network-vif-plugged.

python-ovs support for monitor_cond_since / update3 to allow more efficient reconnections when connecting to clustered
OVSDB servers[1].

neutron-server only uses python-ovs. it should not be care whether it is fast synchronization or full synchronization. It only needs to update python-ovs to achieve fast synchronization.

But neutron-sever monitors the database schema changes[2]. each reconnection triggers a create database event, call updaet_tables, and clear cache. this means that fast synchronization cannot be used.

can we not support updated or downgraded(now it only for Table 'Chassis_Private') while neutron-server is running?

[1] https://github.com/openvswitch/ovs/commit/46d44cf3be0dbf4a44cebea3b279b3d16a326796
[2] https://review.opendev.org/c/openstack/neutron/+/760967

Tags: ovn
tags: added: ovn
Revision history for this message
Terry Wilson (otherwiseguy) wrote :

The only way to use update3/monitor_cond_since with OVS currently is to use ovs 2.17+ and enable RAFT for the ovsdb-servers. Even though ovsdb-server should be able to use monitor-cond-since without RAFT, it currently does not.

There isn't really anything to do in neutron or ovsdbapp for this. It will be used automatically if the ovs version / setup support it.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.