On 3/7/23 00:15, Vladislav Odintsov wrote:
> Hi Ilya,
> 
> I’m wondering whether there are possible configuration parameters for ovsdb 
> relay -> main ovsdb server inactivity probe timer.
> My cluster experiencing issues where relay disconnects from main cluster due 
> to 5 sec. inactivity probe timeout.
> Main cluster has quite big database and a bunch of daemons, which connects to 
> it and it makes difficult to maintain connections in time.
> 
> For ovsdb relay as a remote I use in-db configuration (to provide inactivity 
> probe and rbac configuration for ovn-controllers).
> For ovsdb-server, which serves SB, I just set --remote=pssl:<port>.
> 
> I’d like to configure remote for ovsdb cluster via DB to set inactivity probe 
> setting, but I’m not sure about the correct way for that.
> 
> For now I see only two options:
> 1. Setup custom database scheme with connection table, serve it in same SB 
> cluster and specify this connection when start ovsdb sb server.

There is a ovsdb/local-config.ovsschema shipped with OVS that can be
used for that purpose.  But you'll need to craft transactions for it
manually with ovsdb-client.

There is a control tool prepared by Terry:
  
https://patchwork.ozlabs.org/project/openvswitch/patch/20220713030250.2634491-1-twil...@redhat.com/

But it's not in the repo yet (I need to get back to reviews on that
topic at some point).  The tool itself should be fine, but maybe name
will change.

> 2. Setup second connection in ovn sb database to be used for ovsdb cluster 
> and deploy cluster separately from ovsdb relay, because they both start same 
> connections and conflict on ports. (I don’t use docker here, so I need a 
> separate server for that).

That's an easy option available right now, true.  If they are deployed
on different nodes, you may even use the same connection record.

> 
> Anyway, if I configure ovsdb remote for ovsdb cluster with specified 
> inactivity probe (say, to 60k), I guess it’s still not enough to have ovsdb 
> pings every 60 seconds. Inactivity probe must be the same from both ends - 
> right? From the ovsdb relay process.

Inactivity probes don't need to be the same.  They are separate for each
side of a connection and so configured separately.

You can set up inactivity probe for the server side of the connection via
database.  So, server will probe the relay every 60 seconds, but today
it's not possible to set inactivity probe for the relay-to-server direction.
So, relay will probe the server every 5 seconds.

The way out from this situation is to allow configuration of relays via
database as well, e.g. relay:db:Local_Config,Config,relays.  This will
require addition of a new table to the Local_Config database and allowing
relay config to be parsed from the database in the code.  That wasn't
implemented yet.

> I saw your talk on last ovscon about this topic, and the solution was in 
> progress there. But maybe there were some changes from that time? I’m ready 
> to test it if any. Or, maybe there’s any workaround?

Sorry, we didn't move forward much on that topic since the presentation.
There are few unanswered questions around local config database.  Mainly
regarding upgrades from cmdline/main db -based configuration to a local
config -based.  But I hope we can figure that out in the current release
time frame, i.e. before 3.2 release.

There is also this workaround:
  
https://patchwork.ozlabs.org/project/openvswitch/patch/an2a4qcpihpcfukyt1uomqre.1.1641782536691.hmail.wentao....@easystack.cn/
It simply takes the server->relay inactivity probe value and applies it
to the relay->server connection.  But it's not a correct solution, because
it relies on certain database names.

Out of curiosity, what kind of poll intervals you see on your main server
setup that triggers inactivity probe failures?  Can upgrade to OVS 3.1
solve some of these issues?  3.1 should be noticeably faster than 2.17,
and also parallel compaction introduced in 3.0 removes one of the big
reasons for large poll intervals.  OVN upgrade to 22.09+ or even 23.03
should also help with database sizes.

Best regards, Ilya Maximets.
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to