ovsdb-server has the ability to create additional servers based on a
DB contents. For the Open_vSwitch schema, that's the Manager table and
the Open_vSwitch table's manager_options column.

The ovsdb-server code refers to these as "remotes". If these remotes
have a max_backoff/inactivity_probe column, those values will be set.
inactivity_probe is the column that will determine the probe_interval
for the RPC server that is launched.

According to documentation (and the implementation in the "olden
days"), these remotes are set from the DB by passing

  --remote=db:DATABASE_NAME,TABLE_NAME,COLUMN

to ovsdb-server. For the Open_vSwitch case, that's

  --remote=db:Open_vSwitch,Open_vSwitch,manager_options.

In real life, this actually takes place by ovs-ctl calling

# ovs-appctl -t ovsdb-server ovsdb-server/add-remote \
  db:Open_vSwitch,Open_vSwitch,manager_options

after ovs-vswitchd has started.

OVN, on the other hand, does not appear to have a Manager-like table
to set up remotes and configure them with inactivity_probes, etc. The
ovn-ctl script just hard codes the ptcp:$DB_NB_PORT:$DB_NB_ADDR remote
when launching ovsdb-server for north/southbound db access.

If we want to be consistent with how OVS does things, we would need to
create something like the Manager table and make it possible for
ovn-ctl to call ovs-appctl to add the remotes and configure them.

Related, I see ovn-controller has code to set the probe interval via
the local Open_vSwitch db's
Open_vSwitch.external_ids:ovn-remote-probe-interval. The patch that
added that also added ovsdb-idl.h's ovsdb_idl_set_probe_interval()
which is a similar solution the the one above for the Python code.

I don't have enough "big picture" OVN knowledge yet to know whether
this (and the ovn-remote-probe-interval) patch is the way to go or
whether independently configuring the connections via the db like
Open_vSwitch db is the way. But since I'd had some run-ins with
probe_interval via Neutron code, I thought I'd at least put what I
knew out there.

Terry
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to