I think splitting the the ovsdb-server into two processes is a good idea, based on the following experiment that I ran this morning:
Setups: (1) AIO node with default ovsdb_connection_timeout (2) AIO node with ovsdb_connection_timeout set to 120 seconds + 3 compute nodes I attempted to stamp out 4000 copies of the following pattern in the same openstack project: n1(s1) --- r1 --- n2(s2) Setup 1 was quite happy to roll through the whole test without showing the networking-ovn plugin showing any errors talking to ovsdb-server. OTOH, Setup 2 started showing timeouts between the networking-ovn plugin and ovsdb-server about 85% into the run. This was not the result I expected and my resulting hypothesis is that the ovsdb-server process is unable to keep up with both NB and SB changes. I've talked to Kyle about this (as it's becoming a blocker for our scale testing) and so I'm willing to spend some time on the following "poor man's" approach: (1) Leave the current ovsdb-server process on the default port to manage the SB db (2) Spin a new ovsdb-server process to handle the NB db - give it a new name (ovsdb-server-nb) so that ovn-appctl won't get too confused, and run it on another port (say 6641). (3) Modify northd to be able to talk to both ports (4) Modify the networking-ovn plugin to talk to port 6641. Corrections and improvements that decrease the amount of work will be appreciated... Ryan Moats (regXboi) "dev" <dev-boun...@openvswitch.org> wrote on 02/03/2016 09:35:32 AM: > From: Russell Bryant <russ...@ovn.org> > To: Andy Zhou <az...@ovn.org>, Han Zhou <zhou...@gmail.com> > Cc: "dev@openvswitch.org" <dev@openvswitch.org>, Lei Huang <lhua...@ebay.com> > Date: 02/03/2016 09:35 AM > Subject: Re: [ovs-dev] [RFC] ovn-controller: Only process lflows for > local datapaths. > Sent by: "dev" <dev-boun...@openvswitch.org> > > On 02/02/2016 08:36 PM, Andy Zhou wrote: > > > > Would it be possible to separate the nb/sb ovsdb-server so we can get a > > rough idea where performance bottlenecks are? they suppose to be > > separated in a sailing environment anyways. > > Two ovsdb-server processes on the same host is probably sufficient, > right? I assume so if ovsdb-server is not multi-threaded (I didn't > think so..). > > Our current tools don't make separating these databases easy. ovn-ctl > doesn't support it, and the OVN packaging makes use of ovn-ctl. This > area could use some enhancement to give more flexibility. > > -- > Russell Bryant > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev