Hi Ihar,

I gave the series another look (specifically at the changes made between v8 and v9).

Given the conversation after v8, I went ahead and added my Acks to any of the patches that did not already have them. I then pushed the series to main.

Thanks a bunch for your hard work and patience on this.

On 1/6/23 15:03, Ihar Hrachyshka wrote:
This series adds support to run multiple ovn-controller instances using
the same vswitchd instance. This may be used to reuse a single host
level vswitchd installation to run multiple CMS (e.g. k8s and
openstack), each having its own OVN stack running on a separate
integration bridge.

This setup may, in some instances, simplify administration of the
system, since the admin no longer needs to maintain separate vswitchd
installations (e.g. in separate containers). This is also helpful when
running different datapath types for the mixed setup.

v1: initial series
v2: change tunnel port naming scheme: include "chassis index" instead of
     its name for source chassis.
v2: formatting adjustments.
v3: fixed build due to ovs_abort missing arguments.
v3: added documentation to CLI and system-id-override file.
v3: added documentation for chassis specific db config options.
v3: documented the ability to run multiple controllers on the same host,
     while mentioning that this support is highly experimental.
v3: updated NEWS file to include the note about the new experimental
     issue.
v3: rebased.
v4: fixed a memory leak in get_chassis_idx.
v5: actually fix the leak...
v6: fix race condition in new test cases where ssl db configuration was
     removed before ovn-controller has a chance to read it from db,
     making it fail to start and process ports
v7: addresses Mark's comments from v6, specifically:
     - 1/7: Clean up allocated index on exit
     - 1/7: Remove hardcoded 16 with sizeof(CHASSIS_IDX_PREFIX) - 1
     - 1/7: Explain in comments why the first chassis uses an empty
       string index and not “0”
     - 2/7: Document that requested-chassis should use unique chassis
       names, not hostnames
     - 2/7: Document that unique own-bridges should be used for multiple
       co-hosted controllers
     - 2/7: Reworked logic for get_chassis_external_value functions to
       avoid duplication with smap_get_<type> functions
     - 2/7: Use wait_column in tests
     - 3/7: Add information about the directory where system-id-override
       file is located
     - 3/7: Use FILE * functions from stdio.h instead of Unix lower level
       equivalents
     - 3/7: Use wait_column in tests
     - 4/7: Also validate that CLI takes precedence over override file,
       not only db
     - 4/7: Use wait_column in tests
     - 5/7: - (no changes)
     - 6/7: Move start_virtual_controller to ovn-macros.at to avoid code
       duplication
     - 6/7: Added comments explaining why test cases running two
       controllers use the same sandbox name for both
     - 7/7: - (no changes)
v8:
     - 1/7: fixed test case for ovn-chassis-idx population
     - 1/7: fixed SIGSEGV errors in chassis_cleanup for chassis index
v9:
     - 5/8: fixed tunnel ports cleanup test (it wasn't catching
            regressions)
     - 6/8: include "Don't delete patch ports that don't belong to
            br-int" patch similar to the one for tunnel ports
     - 8/8: explicitly mention in the documentation that stateful ACLs
            won't work as-is with the new feature.

Ihar Hrachyshka (8):
   Include "chassis index" into tunnel port name
   Support ovn-...-<chassis> specific global ovsdb options
   Allow to override system-id via file
   Support passing chassis name via CLI
   Don't touch tunnel ports from a different br-int
   Don't delete patch ports that don't belong to br-int
   Add connectivity test for 2 controllers on the same host
   Document experimental support for co-hosted controllers

  NEWS                            |   2 +
  controller/chassis.c            | 280 ++++++++++++++++++++-----
  controller/chassis.h            |  15 +-
  controller/encaps.c             |  76 +++----
  controller/encaps.h             |   1 -
  controller/ovn-controller.8.xml |  36 +++-
  controller/ovn-controller.c     | 186 ++++++++++++-----
  controller/patch.c              |  42 +++-
  controller/patch.h              |   2 +-
  controller/physical.c           |   2 +-
  lib/ovn-util.c                  |  79 +++++++
  lib/ovn-util.h                  |  26 +++
  ovn-nb.xml                      |   8 +
  tests/automake.mk               |   1 +
  tests/ovn-macros.at             |  36 +++-
  tests/ovn.at                    | 360 ++++++++++++++++++++++++++++++++
  tests/ovs-macros.at             |   2 +
  17 files changed, 992 insertions(+), 162 deletions(-)


_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to