[ovs-build] Passed: ovsrobot/ovn#991 (series_201739 - d36b672)

Travis CI builds at travis-ci.com
Tue Sep 15 05:16:22 UTC 2020

Build Update for ovsrobot/ovn

Build: #991
Status: Passed

Duration: 19 mins and 18 secs
Commit: d36b672 (series_201739)
Author: Ihar Hrachyshka
Message: Allow to run multiple controllers on the same machine

User stories:
1) NFV: an admin wants to run two separate instances of OVN controller
   using the same database but configuring ports on different bridges.
   Some of these bridges may use DPDK while others may not.

2) Parallel OVN instances: an admin wants to run two separate
   instances of OVN controller using different databases. The
   instances are completely independent and serve different consumers.
   For example, the same machine runs both OpenStack and OpenShift
   stacks, each running its own separate OVN stack.

To serve these use cases, several features should be added to

- use different database configuration for multiple controllers;
- customize chassis name used by controller.


For each of the following database configuration options, their
extended chassis specific counterparts are introduced:


For example,

external_ids:ovn-bridge -> external_ids:ovn-bridge-<chassis-name>=
external_ids:ovn-encap-type -> external_ids:ovn-encap-type-<chassis-name>=
external_ids:ovn-encap-ip -> external_ids:ovn-encap-ip-<chassis-name>=
external_ids:ovn-remote -> external_ids:ovn-remote-<chassis-name>=

Priority wise, <chassis-name> specific options take precedence.


For system-id,

You can now pass intended chassis name via CLI argument:

  $ ovn-controller ... -n <chassis_name>

Alternatively, you can configure a chassis name by putting it into the
${ovs_sysconfdir}/system-id file before running the controller.

The latter option may be more useful in container environment where
the same image may be reused for multiple controller instances, where
ovs_sysconfigdir/system-id is a volume mounted into this generic

Priority wise, this is the order in which different means to configure
the chassis name are used:

- ovn-controller ... -n <chassis_name> CLI argument.
- ${ovs_sysconfdir}/system-id file;
- external_ids:system-id= ovsdb option;


Concurrent chassis running on the same host may inadvertantly remove patch
ports that belong to their peer chassis. To avoid that, a new -M
(--concurrent) CLI argument is introduced. Right now it avoids removing
"unneeded" patch ports but it may later be used for related accommodations.


Note: this patch assumes that each chassis has its own unique IP. Future work
may consider adding support to specify custom port numbers for tunneling that
would allow to reuse the same IP address for multiple chassis running on the
same host. This work is out of scope for this patch.

Signed-off-by: Ihar Hrachyshka <ihrachys at redhat.com>
Signed-off-by: 0-day Robot <robot at bytheb.org>

View the changeset: https://github.com/ovsrobot/ovn/commit/d36b672f5309

View the full build log and details: https://travis-ci.com/github/ovsrobot/ovn/builds/184329190?utm_medium=notification&utm_source=email


You can unsubscribe from build emails from the ovsrobot/ovn repository going to https://travis-ci.com/account/preferences/unsubscribe?repository=9136199&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.com/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-build/attachments/20200915/16a8344f/attachment-0001.html>

More information about the build mailing list