| Message ID | 20250811101031.918034-1-numans@ovn.org |
|---|---|
| State | Changes Requested |
| Headers | show |
| Series | OVN Bridge Controller service. | expand |
| Context | Check | Description |
|---|---|---|
| ovsrobot/apply-robot | warning | apply and check: warning |
| ovsrobot/github-robot-_Build_and_Test | fail | github build: failed |
| ovsrobot/github-robot-_ovn-kubernetes | fail | github build: failed |
Hi Numan, I have one comment below. On 8/11/25 6:10 AM, numans@ovn.org wrote: > From: Numan Siddique <numans@ovn.org> > > Signed-off-by: Numan Siddique <numans@ovn.org> > --- > utilities/ovn-ctl | 163 ++++++++++++++++++++++++++++++++++++++++ > utilities/ovn-ctl.8.xml | 36 +++++++++ > 2 files changed, 199 insertions(+) > > diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl > index acbeacd099..5af2db17cb 100755 > --- a/utilities/ovn-ctl > +++ b/utilities/ovn-ctl > @@ -444,6 +444,11 @@ start_ic_ovsdb () { > start_ic_sb_ovsdb > } > > + > +start_ovnbr_ovsdb() { > + start_ovsdb__ OVNBR br OVN_Bridge_Controller BR_Global > +} > + > sync_status() { > local ctl_file=$1 > ovn-appctl -t $ctl_file ovsdb-server/sync-status | \ > @@ -510,6 +515,14 @@ status_ic_ovsdb () { > fi > } > > +status_ovnbr_ovsdb() { > + if ! pidfile_is_running $DB_OVNBR_PIDFILE; then > + echo "not-running" > + else > + echo "running/$(sync_status $DB_OVNBR_CTRL_SOCK)" > + fi > +} > + > run_nb_ovsdb() { > DB_NB_DETACH=no > start_nb_ovsdb > @@ -535,6 +548,11 @@ run_ic_sb_ovsdb() { > start_ic_sb_ovsdb > } > > +run_ovnbr_ovsdb() { > + DB_NB_DETACH=no > + start_ovnbr_ovsdb > +} > + > start_northd () { > if [ ! -e $ovn_northd_db_conf_file ]; then > if test X"$OVN_MANAGE_OVSDB" = Xyes; then > @@ -717,6 +735,40 @@ start_controller_vtep () { > OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" > } > > +start_ovnbr_controller () { > + set ovn-br-controller > + set "$@" -vconsole:emer -vsyslog:err -vfile:info > + if test X"$OVN_CONTROLLER_SSL_KEY" != X; then > + set "$@" --private-key=$OVN_CONTROLLER_SSL_KEY > + fi > + if test X"$OVN_CONTROLLER_SSL_CERT" != X; then > + set "$@" --certificate=$OVN_CONTROLLER_SSL_CERT > + fi > + if test X"$OVN_CONTROLLER_SSL_CA_CERT" != X; then > + set "$@" --ca-cert=$OVN_CONTROLLER_SSL_CA_CERT > + fi > + if test X"$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT" != X; then > + set "$@" --bootstrap-ca-cert=$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT > + fi > + if test X"$OVN_CONTROLLER_SSL_PROTOCOLS" != X; then > + set "$@" --ssl-protocols=$OVN_CONTROLLER_SSL_PROTOCOLS > + fi > + if test X"$OVN_CONTROLLER_SSL_CIPHERS" != X; then > + set "$@" --ssl-ciphers=$OVN_CONTROLLER_SSL_CIPHERS > + fi > + if test X"$OVN_CONTROLLER_SSL_CIPHERSUITES" != X; then > + set "$@" --ssl-ciphersuites=$OVN_CONTROLLER_SSL_CIPHERSUITES > + fi All of the tests above are for OVN_CONTROLLER SSL values instead of OVN_BRCONTROLLER SSL values. > + > + [ "$OVN_USER" != "" ] && set "$@" --user "$OVN_USER" > + > + if test X"$extra_args" != X; then > + set "$@" $extra_args > + fi > + > + OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" > +} > + > ## ---- ## > ## stop ## > ## ---- ## > @@ -747,6 +799,10 @@ stop_controller_vtep () { > OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-controller-vtep > } > > +stop_ovnbr_controller () { > + OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-br-controller > +} > + > ## ------- ## > ## restart ## > ## ------- ## > @@ -807,6 +863,16 @@ restart_sb_relay_ovsdb() { > start_sb_relay_ovsdb > } > > +restart_ovnbr_ovsdb () { > + stop_ovnbr_ovsdb > + start_ovnbr_ovsdb > +} > + > +restart_ovnbr_controller () { > + stop_ovnbr_controller > + start_ovnbr_controller > +} > + > ## ---- ## > ## main ## > ## ---- ## > @@ -870,6 +936,7 @@ set_defaults () { > DB_SB_SCHEMA=$ovn_datadir/ovn-sb.ovsschema > DB_IC_NB_SCHEMA=$ovn_datadir/ovn-ic-nb.ovsschema > DB_IC_SB_SCHEMA=$ovn_datadir/ovn-ic-sb.ovsschema > + DB_OVNBR_SCHEMA=$ovn_datadir/ovn-br.ovsschema > > DB_SOCK=$OVS_RUNDIR/db.sock > DB_CONF_FILE=$dbdir/conf.db > @@ -1020,6 +1087,39 @@ set_defaults () { > DB_CLUSTER_SCHEMA_UPGRADE="yes" > > OVN_CONTROLLER_SYSTEM_ID="" > + > + DB_OVNBR_SOCK=$OVN_RUNDIR/ovnbr_db.sock > + DB_OVNBR_PIDFILE=$OVN_RUNDIR/ovnbr_db.pid > + DB_OVNBR_CTRL_SOCK=$OVN_RUNDIR/ovnbr_db.ctl > + DB_OVNBR_FILE=$ovn_dbdir/ovnbr_db.db > + DB_OVNBR_ADDR=0.0.0.0 > + DB_OVNBR_PORT=6651 > + > + OVNBR_CONTROLLER_PRIORITY=-10 > + OVNBR_CONTROLLER_WRAPPER= > + > + OVNBR_CONTROLLER_LOG="-vconsole:emer -vsyslog:err -vfile:info" > + OVN_OVNBR_LOGFILE="$ovn_logdir/ovsdb-server-ovnbr.log" > + > + OVNBR_CONTROLLER_SSL_KEY="" > + OVNBR_CONTROLLER_SSL_CERT="" > + OVNBR_CONTROLLER_SSL_CA_CERT="" > + OVNBR_CONTROLLER_SSL_BOOTSTRAP_CA_CERT="" > + OVNBR_CONTROLLER_SSL_PROTOCOLS="" > + OVNBR_CONTROLLER_SSL_CIPHERS="" > + OVNBR_CONTROLLER_SSL_CIPHERSUITES="" > + > + DB_OVNBR_CREATE_INSECURE_REMOTE="no" > + > + DB_OVNBR_DETACH="yes" > + DB_OVNBR_USE_REMOTE_IN_DB="yes" > + > + OVNBR_DB_SSL_KEY="" > + OVNBR_DB_SSL_CERT="" > + OVNBR_DB_SSL_CA_CERT="" > + OVNBR_DB_SSL_PROTOCOLS="" > + OVNBR_DB_SSL_CIPHERS="" > + OVNBR_DB_SSL_CIPHERSUITES="" > } > > set_option () { > @@ -1096,6 +1196,15 @@ Commands: > demote_ic_sb demote ovn ic-southbound db active server to backup > run_ic_nb_ovsdb run ovn ic-northbound db ovsdb-server process > run_ic_sb_ovsdb run ovn ic-southbound db ovsdb-server process > + start_ovnbr_ovsdb start ovn bridge controller db ovsdb-server process > + start_ovnbr_controller start ovn-br-controller > + stop_ovnbr_ovsdb stop ovn bridge controller db ovsdb-server process > + stop_ovnbr_controller stop ovn-br-controller > + restart_ovnbr_ovsdb restart ovn bridge controller db ovsdb-server process > + restart_ovnbr_controller restart ovn-br-controller > + status_ovnbr_ovsdb status ovn bridge controller db ovsdb-server processes > + status_ovnbr_controller status ovn-br-controller > + run_ovnbr_ovsdb run bridge controller db ovsdb-server process > > Options: > --ovn-northd-priority=NICE set ovn-northd's niceness (default: $OVN_NORTHD_PRIORITY) > @@ -1173,6 +1282,24 @@ Options: > --db-sb-relay-remote Specifies upstream cluster/server remote for ovsdb relay > --db-sb-relay-use-remote-in-db=no|yes > OVN_Sorthbound db listen on target connection table (default: $DB_SB_RELAY_USE_REMOTE_IN_DB) > + --ovn-br-controller-priority=NICE set ovn-br-controller's niceness (default: $OVN_CONTROLLER_PRIORITY) > + --ovn-br-controller-wrapper=WRAPPER run with a wrapper like valgrind for debugging > + --ovn-br-controller-ssl-key=KEY OVN Bridge Controller SSL/TLS private key file > + --ovn-br-controller-ssl-cert=CERT OVN Bridge Controller SSL/TLS certificate file > + --ovn-br-controller-ssl-ca-cert=CERT OVN Bridge Controller SSL/TLS CA certificate file > + --ovn-br-controller-ssl-bootstrap-ca-cert=CERT Bootstrapped OVN Bridge Controller SSL/TLS CA certificate file > + --ovn-br-controller-ssl-protocols=PROTOCOLS OVN Bridge Controller SSL/TLS protocols > + --ovn-br-controller-ssl-ciphers=CIPHERS OVN Bridge Controller SSL/TLS cipher list > + --ovn-br-controller-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller TLSv1.3+ ciphersuite list > + --ovn-br-db-ssl-key=KEY OVN Bridge Controller DB SSL/TLS private key file > + --ovn-br-db-ssl-cert=CERT OVN Bridge Controller DB SSL/TLS certificate file > + --ovn-br-db-ssl-ca-cert=CERT OVN Bridge Controller DB SSL/TLS CA certificate file > + --ovn-br-db-ssl-protocols=PROTOCOLS OVN Bridge Controller DB SSL/TLS protocols > + --ovn-br-db-ssl-ciphers=CIPHERS OVN Bridge Controller DB SSL/TLS cipher list > + --ovn-br-db-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller DB TLSv1.3+ ciphersuite list > + --ovn-br-controller-log=STRING ovn controller process logging params (default: $OVN_CONTROLLER_LOG) > + --ovn-br-db-log=STRING ovn brdb ovsdb-server processes logging params (default: $OVN_BR_DB_LOG) > + --ovsdb-br-wrapper=WRAPPER run with a wrapper like valgrind for debugging > -h, --help display this help message > > File location options: > @@ -1305,12 +1432,22 @@ File location options: > --ovn-sb-relay-db-ssl-cert=CERT OVN_Southbound DB relay SSL/TLS certificate file > --ovn-sb-relay-db-ssl-ca-cert=CERT OVN OVN_Southbound DB relay SSL/TLS CA certificate file > --db-cluster-schema-upgrade=yes|no (default: $DB_CLUSTER_SCHEMA_UPGRADE) > + --db-ovnbr-sock=SOCKET OVN_Bridge_Controller db socket (default: $DB_OVNBR_SOCK) > + --db-ovnbr-file=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_FILE) > + --db-ovnbr-pidfile=FILE OVN_Bridge_Controller db pidfile (default: $DB_OVNBR_PIDFILE) > + --db-ovnbr-schema=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_SCHEMA) > + --db-ovnbr-addr=ADDR OVN_Bridge_Controller db ptcp address (default: $DB_OVNBR_ADDR) > + --db-ovnbr-port=PORT OVN_Bridge_Controller db ptcp port (default: $DB_OVNBR_PORT) > + --db-ovnbr-ctrl-sock=SOCKET OVN_Bridge_Controller db control socket (default: $DB_OVNBR_CTRL_SOCK) > + --ovn-ovnbr-logfile=FILE OVN_Bridge_Controller log file (default: $OVN_OVNBR_LOGFILE) > + --db-ovnbr-create-insecure-remote=yes|no Create ptcp OVN_Bridge_Controller remote (default: $DB_OVNBR_CREATE_INSECURE_REMOTE) > > Default directories with "configure" option and environment variable override: > logs: /usr/local/var/log/ovn (--with-logdir, OVN_LOGDIR) > pidfiles and sockets: /usr/local/var/run/ovn (--with-rundir, OVN_RUNDIR) > ovn-nb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > ovn-sb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > + ovn-ovnbr.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > system configuration: /usr/local/etc (--sysconfdir, OVN_SYSCONFDIR) > data files: /usr/local/share/ovn (--pkgdatadir, OVN_PKGDATADIR) > user binaries: /usr/local/bin (--bindir, OVN_BINDIR) > @@ -1536,6 +1673,32 @@ case $command in > run_ic_sb_ovsdb) > run_ic_sb_ovsdb > ;; > + start_ovnbr_ovsdb) > + start_ovnbr_ovsdb > + ;; > + start_ovnbr_controller) > + start_ovnbr_controller > + ;; > + stop_ovnbr_ovsdb) > + stop_ovnbr_ovsdb > + ;; > + stop_ovnbr_controller) > + stop_ovnbr_controller > + ;; > + restart_ovnbr_ovsdb) > + restart_ovnbr_ovsdb > + ;; > + restart_ovnbr_controller) > + restart_ovnbr_controller > + ;; > + status_ovnbr_ovsdb) > + status_ovnbr_ovsdb > + ;; > + status_ovnbr_controller) > + daemon_status ovn-br-controller || exit 1 > + ;; > + run_ovnbr_ovsdb) > + run_ovnbr_ovsdb;; > help) > usage > ;; > diff --git a/utilities/ovn-ctl.8.xml b/utilities/ovn-ctl.8.xml > index 99f512043e..0e03247469 100644 > --- a/utilities/ovn-ctl.8.xml > +++ b/utilities/ovn-ctl.8.xml > @@ -58,6 +58,15 @@ > <dt><code>restart_ic_ovsdb</code></dt> > <dt><code>run_ic_nb_ovsdb</code></dt> > <dt><code>run_ic_sb_ovsdb</code></dt> > + <dt><code>start_ovnbr_ovsdb</code></dt> > + <dt><code>start_br_controller</code></dt> > + <dt><code>stop_ovnbr_ovsdb</code></dt> > + <dt><code>stop_br_controller</code></dt> > + <dt><code>restart_ovnbr_ovsdb</code></dt> > + <dt><code>restart_br_controller</code></dt> > + <dt><code>status_ovnbr_ovsdb</code></dt> > + <dt><code>status_br_controller</code></dt> > + <dt><code>run_ovnbr_ovsdb</code></dt> > </dl> > > <h1>Options</h1> > @@ -69,6 +78,8 @@ > <p><code>--ovn-ic-wrapper=<var>WRAPPER</var></code></p> > <p><code>--ovsdb-nb-wrapper=<var>WRAPPER</var></code></p> > <p><code>--ovsdb-sb-wrapper=<var>WRAPPER</var></code></p> > + <p><code>--ovn-br-controller-priority=<var>NICE</var></code></p> > + <p><code>--ovn-br-controller-wrapper=<var>WRAPPER</var></code></p> > <p><code>--ovn-user=<var>USER:GROUP</var></code></p> > <p><code>-h</code> | <code>--help</code></p> > > @@ -95,6 +106,15 @@ > <p><code>--ovn-controller-ssl-cert=<var>CERT</var></code></p> > <p><code>--ovn-controller-ssl-ca-cert=<var>CERT</var></code></p> > <p><code>--ovn-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> > + <p><code>--db-ovnbr-sock=<var>SOCKET</var></code></p> > + <p><code>--db-ovnbr-file=<var>FILE</var></code></p> > + <p><code>--db-ovnbr-schema=<var>FILE</var></code></p> > + <p><code>--db-ovnbr-create-insecure-remote=<var>yes|no</var></code></p> > + <p><code>--db-ovnbr-config-file=<var>FILE</var></code></p> > + <p><code>--ovn-br-controller-ssl-key=<var>KEY</var></code></p> > + <p><code>--ovn-br-controller-ssl-cert=<var>CERT</var></code></p> > + <p><code>--ovn-br-controller-ssl-ca-cert=<var>CERT</var></code></p> > + <p><code>--ovn-br-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> > > <h1>Protocol, Cipher and Ciphersuite options</h1> > <p><code>--ovn-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> > @@ -118,6 +138,11 @@ > <p><code>--ovn-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > <p><code>--ovn-ic-nb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > <p><code>--ovn-ic-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > + <p><code>--ovn-br-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> > + <p><code>--ovn-br-db-ssl-protocols=<var>PROTOCOLS</var></code></p> > + <p><code>--ovn-br-controller-ssl-ciphers=<var>CIPHERS</var></code></p> > + <p><code>--ovn-br-db-ssl-ciphers=<var>CIPHERS</var></code></p> > + <p><code>--ovn-br-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > > <h1>Address and port options</h1> > <p><code>--db-nb-sync-from-addr=<var>IP ADDRESS</var></code></p> > @@ -273,6 +298,13 @@ > This command will be useful for starting the OVN IC-SB ovsdb-server in a > container. > </p> > + <p><code># ovn-ctl run_ovnbr_ovsdb</code></p> > + <p> > + This command runs the OVN bridge db ovsdb-server without passing the > + <code>detach</code> option, making it to block until ovsdb-server exits. > + This command will be useful for starting the OVN br db ovsdb-server in a > + container. > + </p> > > <h1>Example Usage</h1> > <h2>Run ovn-controller on a host already running OVS</h2> > @@ -372,4 +404,8 @@ > # ovsdb-client convert unix:/var/run/ovn/ovnsb_db.sock /usr/local/share/ovn/ovn-sb.ovsschema > </code> > </p> > + > + <h2>Run OVN bridge controller services on a host already running OVS</h2> > + <p><code># ovn-ctl start_ovnbr_ovsdb</code></p> > + <p><code># ovn-ctl start_br_controller</code></p> > </manpage>
On Thu, Aug 21, 2025 at 5:29 PM Mark Michelson <mmichels@redhat.com> wrote: > > Hi Numan, I have one comment below. > > On 8/11/25 6:10 AM, numans@ovn.org wrote: > > From: Numan Siddique <numans@ovn.org> > > > > Signed-off-by: Numan Siddique <numans@ovn.org> > > --- > > utilities/ovn-ctl | 163 ++++++++++++++++++++++++++++++++++++++++ > > utilities/ovn-ctl.8.xml | 36 +++++++++ > > 2 files changed, 199 insertions(+) > > > > diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl > > index acbeacd099..5af2db17cb 100755 > > --- a/utilities/ovn-ctl > > +++ b/utilities/ovn-ctl > > @@ -444,6 +444,11 @@ start_ic_ovsdb () { > > start_ic_sb_ovsdb > > } > > > > + > > +start_ovnbr_ovsdb() { > > + start_ovsdb__ OVNBR br OVN_Bridge_Controller BR_Global > > +} > > + > > sync_status() { > > local ctl_file=$1 > > ovn-appctl -t $ctl_file ovsdb-server/sync-status | \ > > @@ -510,6 +515,14 @@ status_ic_ovsdb () { > > fi > > } > > > > +status_ovnbr_ovsdb() { > > + if ! pidfile_is_running $DB_OVNBR_PIDFILE; then > > + echo "not-running" > > + else > > + echo "running/$(sync_status $DB_OVNBR_CTRL_SOCK)" > > + fi > > +} > > + > > run_nb_ovsdb() { > > DB_NB_DETACH=no > > start_nb_ovsdb > > @@ -535,6 +548,11 @@ run_ic_sb_ovsdb() { > > start_ic_sb_ovsdb > > } > > > > +run_ovnbr_ovsdb() { > > + DB_NB_DETACH=no > > + start_ovnbr_ovsdb > > +} > > + > > start_northd () { > > if [ ! -e $ovn_northd_db_conf_file ]; then > > if test X"$OVN_MANAGE_OVSDB" = Xyes; then > > @@ -717,6 +735,40 @@ start_controller_vtep () { > > OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" > > } > > > > +start_ovnbr_controller () { > > + set ovn-br-controller > > + set "$@" -vconsole:emer -vsyslog:err -vfile:info > > + if test X"$OVN_CONTROLLER_SSL_KEY" != X; then > > + set "$@" --private-key=$OVN_CONTROLLER_SSL_KEY > > + fi > > + if test X"$OVN_CONTROLLER_SSL_CERT" != X; then > > + set "$@" --certificate=$OVN_CONTROLLER_SSL_CERT > > + fi > > + if test X"$OVN_CONTROLLER_SSL_CA_CERT" != X; then > > + set "$@" --ca-cert=$OVN_CONTROLLER_SSL_CA_CERT > > + fi > > + if test X"$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT" != X; then > > + set "$@" --bootstrap-ca-cert=$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT > > + fi > > + if test X"$OVN_CONTROLLER_SSL_PROTOCOLS" != X; then > > + set "$@" --ssl-protocols=$OVN_CONTROLLER_SSL_PROTOCOLS > > + fi > > + if test X"$OVN_CONTROLLER_SSL_CIPHERS" != X; then > > + set "$@" --ssl-ciphers=$OVN_CONTROLLER_SSL_CIPHERS > > + fi > > + if test X"$OVN_CONTROLLER_SSL_CIPHERSUITES" != X; then > > + set "$@" --ssl-ciphersuites=$OVN_CONTROLLER_SSL_CIPHERSUITES > > + fi > > All of the tests above are for OVN_CONTROLLER SSL values instead of > OVN_BRCONTROLLER SSL values. Oops. Thanks for pointing this out. I'll address it in v2. Numan > > > + > > + [ "$OVN_USER" != "" ] && set "$@" --user "$OVN_USER" > > + > > + if test X"$extra_args" != X; then > > + set "$@" $extra_args > > + fi > > + > > + OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" > > +} > > + > > ## ---- ## > > ## stop ## > > ## ---- ## > > @@ -747,6 +799,10 @@ stop_controller_vtep () { > > OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-controller-vtep > > } > > > > +stop_ovnbr_controller () { > > + OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-br-controller > > +} > > + > > ## ------- ## > > ## restart ## > > ## ------- ## > > @@ -807,6 +863,16 @@ restart_sb_relay_ovsdb() { > > start_sb_relay_ovsdb > > } > > > > +restart_ovnbr_ovsdb () { > > + stop_ovnbr_ovsdb > > + start_ovnbr_ovsdb > > +} > > + > > +restart_ovnbr_controller () { > > + stop_ovnbr_controller > > + start_ovnbr_controller > > +} > > + > > ## ---- ## > > ## main ## > > ## ---- ## > > @@ -870,6 +936,7 @@ set_defaults () { > > DB_SB_SCHEMA=$ovn_datadir/ovn-sb.ovsschema > > DB_IC_NB_SCHEMA=$ovn_datadir/ovn-ic-nb.ovsschema > > DB_IC_SB_SCHEMA=$ovn_datadir/ovn-ic-sb.ovsschema > > + DB_OVNBR_SCHEMA=$ovn_datadir/ovn-br.ovsschema > > > > DB_SOCK=$OVS_RUNDIR/db.sock > > DB_CONF_FILE=$dbdir/conf.db > > @@ -1020,6 +1087,39 @@ set_defaults () { > > DB_CLUSTER_SCHEMA_UPGRADE="yes" > > > > OVN_CONTROLLER_SYSTEM_ID="" > > + > > + DB_OVNBR_SOCK=$OVN_RUNDIR/ovnbr_db.sock > > + DB_OVNBR_PIDFILE=$OVN_RUNDIR/ovnbr_db.pid > > + DB_OVNBR_CTRL_SOCK=$OVN_RUNDIR/ovnbr_db.ctl > > + DB_OVNBR_FILE=$ovn_dbdir/ovnbr_db.db > > + DB_OVNBR_ADDR=0.0.0.0 > > + DB_OVNBR_PORT=6651 > > + > > + OVNBR_CONTROLLER_PRIORITY=-10 > > + OVNBR_CONTROLLER_WRAPPER= > > + > > + OVNBR_CONTROLLER_LOG="-vconsole:emer -vsyslog:err -vfile:info" > > + OVN_OVNBR_LOGFILE="$ovn_logdir/ovsdb-server-ovnbr.log" > > + > > + OVNBR_CONTROLLER_SSL_KEY="" > > + OVNBR_CONTROLLER_SSL_CERT="" > > + OVNBR_CONTROLLER_SSL_CA_CERT="" > > + OVNBR_CONTROLLER_SSL_BOOTSTRAP_CA_CERT="" > > + OVNBR_CONTROLLER_SSL_PROTOCOLS="" > > + OVNBR_CONTROLLER_SSL_CIPHERS="" > > + OVNBR_CONTROLLER_SSL_CIPHERSUITES="" > > + > > + DB_OVNBR_CREATE_INSECURE_REMOTE="no" > > + > > + DB_OVNBR_DETACH="yes" > > + DB_OVNBR_USE_REMOTE_IN_DB="yes" > > + > > + OVNBR_DB_SSL_KEY="" > > + OVNBR_DB_SSL_CERT="" > > + OVNBR_DB_SSL_CA_CERT="" > > + OVNBR_DB_SSL_PROTOCOLS="" > > + OVNBR_DB_SSL_CIPHERS="" > > + OVNBR_DB_SSL_CIPHERSUITES="" > > } > > > > set_option () { > > @@ -1096,6 +1196,15 @@ Commands: > > demote_ic_sb demote ovn ic-southbound db active server to backup > > run_ic_nb_ovsdb run ovn ic-northbound db ovsdb-server process > > run_ic_sb_ovsdb run ovn ic-southbound db ovsdb-server process > > + start_ovnbr_ovsdb start ovn bridge controller db ovsdb-server process > > + start_ovnbr_controller start ovn-br-controller > > + stop_ovnbr_ovsdb stop ovn bridge controller db ovsdb-server process > > + stop_ovnbr_controller stop ovn-br-controller > > + restart_ovnbr_ovsdb restart ovn bridge controller db ovsdb-server process > > + restart_ovnbr_controller restart ovn-br-controller > > + status_ovnbr_ovsdb status ovn bridge controller db ovsdb-server processes > > + status_ovnbr_controller status ovn-br-controller > > + run_ovnbr_ovsdb run bridge controller db ovsdb-server process > > > > Options: > > --ovn-northd-priority=NICE set ovn-northd's niceness (default: $OVN_NORTHD_PRIORITY) > > @@ -1173,6 +1282,24 @@ Options: > > --db-sb-relay-remote Specifies upstream cluster/server remote for ovsdb relay > > --db-sb-relay-use-remote-in-db=no|yes > > OVN_Sorthbound db listen on target connection table (default: $DB_SB_RELAY_USE_REMOTE_IN_DB) > > + --ovn-br-controller-priority=NICE set ovn-br-controller's niceness (default: $OVN_CONTROLLER_PRIORITY) > > + --ovn-br-controller-wrapper=WRAPPER run with a wrapper like valgrind for debugging > > + --ovn-br-controller-ssl-key=KEY OVN Bridge Controller SSL/TLS private key file > > + --ovn-br-controller-ssl-cert=CERT OVN Bridge Controller SSL/TLS certificate file > > + --ovn-br-controller-ssl-ca-cert=CERT OVN Bridge Controller SSL/TLS CA certificate file > > + --ovn-br-controller-ssl-bootstrap-ca-cert=CERT Bootstrapped OVN Bridge Controller SSL/TLS CA certificate file > > + --ovn-br-controller-ssl-protocols=PROTOCOLS OVN Bridge Controller SSL/TLS protocols > > + --ovn-br-controller-ssl-ciphers=CIPHERS OVN Bridge Controller SSL/TLS cipher list > > + --ovn-br-controller-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller TLSv1.3+ ciphersuite list > > + --ovn-br-db-ssl-key=KEY OVN Bridge Controller DB SSL/TLS private key file > > + --ovn-br-db-ssl-cert=CERT OVN Bridge Controller DB SSL/TLS certificate file > > + --ovn-br-db-ssl-ca-cert=CERT OVN Bridge Controller DB SSL/TLS CA certificate file > > + --ovn-br-db-ssl-protocols=PROTOCOLS OVN Bridge Controller DB SSL/TLS protocols > > + --ovn-br-db-ssl-ciphers=CIPHERS OVN Bridge Controller DB SSL/TLS cipher list > > + --ovn-br-db-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller DB TLSv1.3+ ciphersuite list > > + --ovn-br-controller-log=STRING ovn controller process logging params (default: $OVN_CONTROLLER_LOG) > > + --ovn-br-db-log=STRING ovn brdb ovsdb-server processes logging params (default: $OVN_BR_DB_LOG) > > + --ovsdb-br-wrapper=WRAPPER run with a wrapper like valgrind for debugging > > -h, --help display this help message > > > > File location options: > > @@ -1305,12 +1432,22 @@ File location options: > > --ovn-sb-relay-db-ssl-cert=CERT OVN_Southbound DB relay SSL/TLS certificate file > > --ovn-sb-relay-db-ssl-ca-cert=CERT OVN OVN_Southbound DB relay SSL/TLS CA certificate file > > --db-cluster-schema-upgrade=yes|no (default: $DB_CLUSTER_SCHEMA_UPGRADE) > > + --db-ovnbr-sock=SOCKET OVN_Bridge_Controller db socket (default: $DB_OVNBR_SOCK) > > + --db-ovnbr-file=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_FILE) > > + --db-ovnbr-pidfile=FILE OVN_Bridge_Controller db pidfile (default: $DB_OVNBR_PIDFILE) > > + --db-ovnbr-schema=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_SCHEMA) > > + --db-ovnbr-addr=ADDR OVN_Bridge_Controller db ptcp address (default: $DB_OVNBR_ADDR) > > + --db-ovnbr-port=PORT OVN_Bridge_Controller db ptcp port (default: $DB_OVNBR_PORT) > > + --db-ovnbr-ctrl-sock=SOCKET OVN_Bridge_Controller db control socket (default: $DB_OVNBR_CTRL_SOCK) > > + --ovn-ovnbr-logfile=FILE OVN_Bridge_Controller log file (default: $OVN_OVNBR_LOGFILE) > > + --db-ovnbr-create-insecure-remote=yes|no Create ptcp OVN_Bridge_Controller remote (default: $DB_OVNBR_CREATE_INSECURE_REMOTE) > > > > Default directories with "configure" option and environment variable override: > > logs: /usr/local/var/log/ovn (--with-logdir, OVN_LOGDIR) > > pidfiles and sockets: /usr/local/var/run/ovn (--with-rundir, OVN_RUNDIR) > > ovn-nb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > > ovn-sb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > > + ovn-ovnbr.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) > > system configuration: /usr/local/etc (--sysconfdir, OVN_SYSCONFDIR) > > data files: /usr/local/share/ovn (--pkgdatadir, OVN_PKGDATADIR) > > user binaries: /usr/local/bin (--bindir, OVN_BINDIR) > > @@ -1536,6 +1673,32 @@ case $command in > > run_ic_sb_ovsdb) > > run_ic_sb_ovsdb > > ;; > > + start_ovnbr_ovsdb) > > + start_ovnbr_ovsdb > > + ;; > > + start_ovnbr_controller) > > + start_ovnbr_controller > > + ;; > > + stop_ovnbr_ovsdb) > > + stop_ovnbr_ovsdb > > + ;; > > + stop_ovnbr_controller) > > + stop_ovnbr_controller > > + ;; > > + restart_ovnbr_ovsdb) > > + restart_ovnbr_ovsdb > > + ;; > > + restart_ovnbr_controller) > > + restart_ovnbr_controller > > + ;; > > + status_ovnbr_ovsdb) > > + status_ovnbr_ovsdb > > + ;; > > + status_ovnbr_controller) > > + daemon_status ovn-br-controller || exit 1 > > + ;; > > + run_ovnbr_ovsdb) > > + run_ovnbr_ovsdb;; > > help) > > usage > > ;; > > diff --git a/utilities/ovn-ctl.8.xml b/utilities/ovn-ctl.8.xml > > index 99f512043e..0e03247469 100644 > > --- a/utilities/ovn-ctl.8.xml > > +++ b/utilities/ovn-ctl.8.xml > > @@ -58,6 +58,15 @@ > > <dt><code>restart_ic_ovsdb</code></dt> > > <dt><code>run_ic_nb_ovsdb</code></dt> > > <dt><code>run_ic_sb_ovsdb</code></dt> > > + <dt><code>start_ovnbr_ovsdb</code></dt> > > + <dt><code>start_br_controller</code></dt> > > + <dt><code>stop_ovnbr_ovsdb</code></dt> > > + <dt><code>stop_br_controller</code></dt> > > + <dt><code>restart_ovnbr_ovsdb</code></dt> > > + <dt><code>restart_br_controller</code></dt> > > + <dt><code>status_ovnbr_ovsdb</code></dt> > > + <dt><code>status_br_controller</code></dt> > > + <dt><code>run_ovnbr_ovsdb</code></dt> > > </dl> > > > > <h1>Options</h1> > > @@ -69,6 +78,8 @@ > > <p><code>--ovn-ic-wrapper=<var>WRAPPER</var></code></p> > > <p><code>--ovsdb-nb-wrapper=<var>WRAPPER</var></code></p> > > <p><code>--ovsdb-sb-wrapper=<var>WRAPPER</var></code></p> > > + <p><code>--ovn-br-controller-priority=<var>NICE</var></code></p> > > + <p><code>--ovn-br-controller-wrapper=<var>WRAPPER</var></code></p> > > <p><code>--ovn-user=<var>USER:GROUP</var></code></p> > > <p><code>-h</code> | <code>--help</code></p> > > > > @@ -95,6 +106,15 @@ > > <p><code>--ovn-controller-ssl-cert=<var>CERT</var></code></p> > > <p><code>--ovn-controller-ssl-ca-cert=<var>CERT</var></code></p> > > <p><code>--ovn-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> > > + <p><code>--db-ovnbr-sock=<var>SOCKET</var></code></p> > > + <p><code>--db-ovnbr-file=<var>FILE</var></code></p> > > + <p><code>--db-ovnbr-schema=<var>FILE</var></code></p> > > + <p><code>--db-ovnbr-create-insecure-remote=<var>yes|no</var></code></p> > > + <p><code>--db-ovnbr-config-file=<var>FILE</var></code></p> > > + <p><code>--ovn-br-controller-ssl-key=<var>KEY</var></code></p> > > + <p><code>--ovn-br-controller-ssl-cert=<var>CERT</var></code></p> > > + <p><code>--ovn-br-controller-ssl-ca-cert=<var>CERT</var></code></p> > > + <p><code>--ovn-br-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> > > > > <h1>Protocol, Cipher and Ciphersuite options</h1> > > <p><code>--ovn-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> > > @@ -118,6 +138,11 @@ > > <p><code>--ovn-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > > <p><code>--ovn-ic-nb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > > <p><code>--ovn-ic-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > > + <p><code>--ovn-br-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> > > + <p><code>--ovn-br-db-ssl-protocols=<var>PROTOCOLS</var></code></p> > > + <p><code>--ovn-br-controller-ssl-ciphers=<var>CIPHERS</var></code></p> > > + <p><code>--ovn-br-db-ssl-ciphers=<var>CIPHERS</var></code></p> > > + <p><code>--ovn-br-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> > > > > <h1>Address and port options</h1> > > <p><code>--db-nb-sync-from-addr=<var>IP ADDRESS</var></code></p> > > @@ -273,6 +298,13 @@ > > This command will be useful for starting the OVN IC-SB ovsdb-server in a > > container. > > </p> > > + <p><code># ovn-ctl run_ovnbr_ovsdb</code></p> > > + <p> > > + This command runs the OVN bridge db ovsdb-server without passing the > > + <code>detach</code> option, making it to block until ovsdb-server exits. > > + This command will be useful for starting the OVN br db ovsdb-server in a > > + container. > > + </p> > > > > <h1>Example Usage</h1> > > <h2>Run ovn-controller on a host already running OVS</h2> > > @@ -372,4 +404,8 @@ > > # ovsdb-client convert unix:/var/run/ovn/ovnsb_db.sock /usr/local/share/ovn/ovn-sb.ovsschema > > </code> > > </p> > > + > > + <h2>Run OVN bridge controller services on a host already running OVS</h2> > > + <p><code># ovn-ctl start_ovnbr_ovsdb</code></p> > > + <p><code># ovn-ctl start_br_controller</code></p> > > </manpage> >
diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl index acbeacd099..5af2db17cb 100755 --- a/utilities/ovn-ctl +++ b/utilities/ovn-ctl @@ -444,6 +444,11 @@ start_ic_ovsdb () { start_ic_sb_ovsdb } + +start_ovnbr_ovsdb() { + start_ovsdb__ OVNBR br OVN_Bridge_Controller BR_Global +} + sync_status() { local ctl_file=$1 ovn-appctl -t $ctl_file ovsdb-server/sync-status | \ @@ -510,6 +515,14 @@ status_ic_ovsdb () { fi } +status_ovnbr_ovsdb() { + if ! pidfile_is_running $DB_OVNBR_PIDFILE; then + echo "not-running" + else + echo "running/$(sync_status $DB_OVNBR_CTRL_SOCK)" + fi +} + run_nb_ovsdb() { DB_NB_DETACH=no start_nb_ovsdb @@ -535,6 +548,11 @@ run_ic_sb_ovsdb() { start_ic_sb_ovsdb } +run_ovnbr_ovsdb() { + DB_NB_DETACH=no + start_ovnbr_ovsdb +} + start_northd () { if [ ! -e $ovn_northd_db_conf_file ]; then if test X"$OVN_MANAGE_OVSDB" = Xyes; then @@ -717,6 +735,40 @@ start_controller_vtep () { OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" } +start_ovnbr_controller () { + set ovn-br-controller + set "$@" -vconsole:emer -vsyslog:err -vfile:info + if test X"$OVN_CONTROLLER_SSL_KEY" != X; then + set "$@" --private-key=$OVN_CONTROLLER_SSL_KEY + fi + if test X"$OVN_CONTROLLER_SSL_CERT" != X; then + set "$@" --certificate=$OVN_CONTROLLER_SSL_CERT + fi + if test X"$OVN_CONTROLLER_SSL_CA_CERT" != X; then + set "$@" --ca-cert=$OVN_CONTROLLER_SSL_CA_CERT + fi + if test X"$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT" != X; then + set "$@" --bootstrap-ca-cert=$OVN_CONTROLLER_SSL_BOOTSTRAP_CA_CERT + fi + if test X"$OVN_CONTROLLER_SSL_PROTOCOLS" != X; then + set "$@" --ssl-protocols=$OVN_CONTROLLER_SSL_PROTOCOLS + fi + if test X"$OVN_CONTROLLER_SSL_CIPHERS" != X; then + set "$@" --ssl-ciphers=$OVN_CONTROLLER_SSL_CIPHERS + fi + if test X"$OVN_CONTROLLER_SSL_CIPHERSUITES" != X; then + set "$@" --ssl-ciphersuites=$OVN_CONTROLLER_SSL_CIPHERSUITES + fi + + [ "$OVN_USER" != "" ] && set "$@" --user "$OVN_USER" + + if test X"$extra_args" != X; then + set "$@" $extra_args + fi + + OVS_RUNDIR=${OVS_RUNDIR} start_ovn_daemon "$OVN_CONTROLLER_PRIORITY" "$OVN_CONTROLLER_WRAPPER" "$@" +} + ## ---- ## ## stop ## ## ---- ## @@ -747,6 +799,10 @@ stop_controller_vtep () { OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-controller-vtep } +stop_ovnbr_controller () { + OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-br-controller +} + ## ------- ## ## restart ## ## ------- ## @@ -807,6 +863,16 @@ restart_sb_relay_ovsdb() { start_sb_relay_ovsdb } +restart_ovnbr_ovsdb () { + stop_ovnbr_ovsdb + start_ovnbr_ovsdb +} + +restart_ovnbr_controller () { + stop_ovnbr_controller + start_ovnbr_controller +} + ## ---- ## ## main ## ## ---- ## @@ -870,6 +936,7 @@ set_defaults () { DB_SB_SCHEMA=$ovn_datadir/ovn-sb.ovsschema DB_IC_NB_SCHEMA=$ovn_datadir/ovn-ic-nb.ovsschema DB_IC_SB_SCHEMA=$ovn_datadir/ovn-ic-sb.ovsschema + DB_OVNBR_SCHEMA=$ovn_datadir/ovn-br.ovsschema DB_SOCK=$OVS_RUNDIR/db.sock DB_CONF_FILE=$dbdir/conf.db @@ -1020,6 +1087,39 @@ set_defaults () { DB_CLUSTER_SCHEMA_UPGRADE="yes" OVN_CONTROLLER_SYSTEM_ID="" + + DB_OVNBR_SOCK=$OVN_RUNDIR/ovnbr_db.sock + DB_OVNBR_PIDFILE=$OVN_RUNDIR/ovnbr_db.pid + DB_OVNBR_CTRL_SOCK=$OVN_RUNDIR/ovnbr_db.ctl + DB_OVNBR_FILE=$ovn_dbdir/ovnbr_db.db + DB_OVNBR_ADDR=0.0.0.0 + DB_OVNBR_PORT=6651 + + OVNBR_CONTROLLER_PRIORITY=-10 + OVNBR_CONTROLLER_WRAPPER= + + OVNBR_CONTROLLER_LOG="-vconsole:emer -vsyslog:err -vfile:info" + OVN_OVNBR_LOGFILE="$ovn_logdir/ovsdb-server-ovnbr.log" + + OVNBR_CONTROLLER_SSL_KEY="" + OVNBR_CONTROLLER_SSL_CERT="" + OVNBR_CONTROLLER_SSL_CA_CERT="" + OVNBR_CONTROLLER_SSL_BOOTSTRAP_CA_CERT="" + OVNBR_CONTROLLER_SSL_PROTOCOLS="" + OVNBR_CONTROLLER_SSL_CIPHERS="" + OVNBR_CONTROLLER_SSL_CIPHERSUITES="" + + DB_OVNBR_CREATE_INSECURE_REMOTE="no" + + DB_OVNBR_DETACH="yes" + DB_OVNBR_USE_REMOTE_IN_DB="yes" + + OVNBR_DB_SSL_KEY="" + OVNBR_DB_SSL_CERT="" + OVNBR_DB_SSL_CA_CERT="" + OVNBR_DB_SSL_PROTOCOLS="" + OVNBR_DB_SSL_CIPHERS="" + OVNBR_DB_SSL_CIPHERSUITES="" } set_option () { @@ -1096,6 +1196,15 @@ Commands: demote_ic_sb demote ovn ic-southbound db active server to backup run_ic_nb_ovsdb run ovn ic-northbound db ovsdb-server process run_ic_sb_ovsdb run ovn ic-southbound db ovsdb-server process + start_ovnbr_ovsdb start ovn bridge controller db ovsdb-server process + start_ovnbr_controller start ovn-br-controller + stop_ovnbr_ovsdb stop ovn bridge controller db ovsdb-server process + stop_ovnbr_controller stop ovn-br-controller + restart_ovnbr_ovsdb restart ovn bridge controller db ovsdb-server process + restart_ovnbr_controller restart ovn-br-controller + status_ovnbr_ovsdb status ovn bridge controller db ovsdb-server processes + status_ovnbr_controller status ovn-br-controller + run_ovnbr_ovsdb run bridge controller db ovsdb-server process Options: --ovn-northd-priority=NICE set ovn-northd's niceness (default: $OVN_NORTHD_PRIORITY) @@ -1173,6 +1282,24 @@ Options: --db-sb-relay-remote Specifies upstream cluster/server remote for ovsdb relay --db-sb-relay-use-remote-in-db=no|yes OVN_Sorthbound db listen on target connection table (default: $DB_SB_RELAY_USE_REMOTE_IN_DB) + --ovn-br-controller-priority=NICE set ovn-br-controller's niceness (default: $OVN_CONTROLLER_PRIORITY) + --ovn-br-controller-wrapper=WRAPPER run with a wrapper like valgrind for debugging + --ovn-br-controller-ssl-key=KEY OVN Bridge Controller SSL/TLS private key file + --ovn-br-controller-ssl-cert=CERT OVN Bridge Controller SSL/TLS certificate file + --ovn-br-controller-ssl-ca-cert=CERT OVN Bridge Controller SSL/TLS CA certificate file + --ovn-br-controller-ssl-bootstrap-ca-cert=CERT Bootstrapped OVN Bridge Controller SSL/TLS CA certificate file + --ovn-br-controller-ssl-protocols=PROTOCOLS OVN Bridge Controller SSL/TLS protocols + --ovn-br-controller-ssl-ciphers=CIPHERS OVN Bridge Controller SSL/TLS cipher list + --ovn-br-controller-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller TLSv1.3+ ciphersuite list + --ovn-br-db-ssl-key=KEY OVN Bridge Controller DB SSL/TLS private key file + --ovn-br-db-ssl-cert=CERT OVN Bridge Controller DB SSL/TLS certificate file + --ovn-br-db-ssl-ca-cert=CERT OVN Bridge Controller DB SSL/TLS CA certificate file + --ovn-br-db-ssl-protocols=PROTOCOLS OVN Bridge Controller DB SSL/TLS protocols + --ovn-br-db-ssl-ciphers=CIPHERS OVN Bridge Controller DB SSL/TLS cipher list + --ovn-br-db-ssl-ciphersuites=CIPHERSUITES OVN Bridge Controller DB TLSv1.3+ ciphersuite list + --ovn-br-controller-log=STRING ovn controller process logging params (default: $OVN_CONTROLLER_LOG) + --ovn-br-db-log=STRING ovn brdb ovsdb-server processes logging params (default: $OVN_BR_DB_LOG) + --ovsdb-br-wrapper=WRAPPER run with a wrapper like valgrind for debugging -h, --help display this help message File location options: @@ -1305,12 +1432,22 @@ File location options: --ovn-sb-relay-db-ssl-cert=CERT OVN_Southbound DB relay SSL/TLS certificate file --ovn-sb-relay-db-ssl-ca-cert=CERT OVN OVN_Southbound DB relay SSL/TLS CA certificate file --db-cluster-schema-upgrade=yes|no (default: $DB_CLUSTER_SCHEMA_UPGRADE) + --db-ovnbr-sock=SOCKET OVN_Bridge_Controller db socket (default: $DB_OVNBR_SOCK) + --db-ovnbr-file=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_FILE) + --db-ovnbr-pidfile=FILE OVN_Bridge_Controller db pidfile (default: $DB_OVNBR_PIDFILE) + --db-ovnbr-schema=FILE OVN_Bridge_Controller db file (default: $DB_OVNBR_SCHEMA) + --db-ovnbr-addr=ADDR OVN_Bridge_Controller db ptcp address (default: $DB_OVNBR_ADDR) + --db-ovnbr-port=PORT OVN_Bridge_Controller db ptcp port (default: $DB_OVNBR_PORT) + --db-ovnbr-ctrl-sock=SOCKET OVN_Bridge_Controller db control socket (default: $DB_OVNBR_CTRL_SOCK) + --ovn-ovnbr-logfile=FILE OVN_Bridge_Controller log file (default: $OVN_OVNBR_LOGFILE) + --db-ovnbr-create-insecure-remote=yes|no Create ptcp OVN_Bridge_Controller remote (default: $DB_OVNBR_CREATE_INSECURE_REMOTE) Default directories with "configure" option and environment variable override: logs: /usr/local/var/log/ovn (--with-logdir, OVN_LOGDIR) pidfiles and sockets: /usr/local/var/run/ovn (--with-rundir, OVN_RUNDIR) ovn-nb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) ovn-sb.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) + ovn-ovnbr.db: /usr/local/etc/ovn (--with-dbdir, OVN_DBDIR) system configuration: /usr/local/etc (--sysconfdir, OVN_SYSCONFDIR) data files: /usr/local/share/ovn (--pkgdatadir, OVN_PKGDATADIR) user binaries: /usr/local/bin (--bindir, OVN_BINDIR) @@ -1536,6 +1673,32 @@ case $command in run_ic_sb_ovsdb) run_ic_sb_ovsdb ;; + start_ovnbr_ovsdb) + start_ovnbr_ovsdb + ;; + start_ovnbr_controller) + start_ovnbr_controller + ;; + stop_ovnbr_ovsdb) + stop_ovnbr_ovsdb + ;; + stop_ovnbr_controller) + stop_ovnbr_controller + ;; + restart_ovnbr_ovsdb) + restart_ovnbr_ovsdb + ;; + restart_ovnbr_controller) + restart_ovnbr_controller + ;; + status_ovnbr_ovsdb) + status_ovnbr_ovsdb + ;; + status_ovnbr_controller) + daemon_status ovn-br-controller || exit 1 + ;; + run_ovnbr_ovsdb) + run_ovnbr_ovsdb;; help) usage ;; diff --git a/utilities/ovn-ctl.8.xml b/utilities/ovn-ctl.8.xml index 99f512043e..0e03247469 100644 --- a/utilities/ovn-ctl.8.xml +++ b/utilities/ovn-ctl.8.xml @@ -58,6 +58,15 @@ <dt><code>restart_ic_ovsdb</code></dt> <dt><code>run_ic_nb_ovsdb</code></dt> <dt><code>run_ic_sb_ovsdb</code></dt> + <dt><code>start_ovnbr_ovsdb</code></dt> + <dt><code>start_br_controller</code></dt> + <dt><code>stop_ovnbr_ovsdb</code></dt> + <dt><code>stop_br_controller</code></dt> + <dt><code>restart_ovnbr_ovsdb</code></dt> + <dt><code>restart_br_controller</code></dt> + <dt><code>status_ovnbr_ovsdb</code></dt> + <dt><code>status_br_controller</code></dt> + <dt><code>run_ovnbr_ovsdb</code></dt> </dl> <h1>Options</h1> @@ -69,6 +78,8 @@ <p><code>--ovn-ic-wrapper=<var>WRAPPER</var></code></p> <p><code>--ovsdb-nb-wrapper=<var>WRAPPER</var></code></p> <p><code>--ovsdb-sb-wrapper=<var>WRAPPER</var></code></p> + <p><code>--ovn-br-controller-priority=<var>NICE</var></code></p> + <p><code>--ovn-br-controller-wrapper=<var>WRAPPER</var></code></p> <p><code>--ovn-user=<var>USER:GROUP</var></code></p> <p><code>-h</code> | <code>--help</code></p> @@ -95,6 +106,15 @@ <p><code>--ovn-controller-ssl-cert=<var>CERT</var></code></p> <p><code>--ovn-controller-ssl-ca-cert=<var>CERT</var></code></p> <p><code>--ovn-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> + <p><code>--db-ovnbr-sock=<var>SOCKET</var></code></p> + <p><code>--db-ovnbr-file=<var>FILE</var></code></p> + <p><code>--db-ovnbr-schema=<var>FILE</var></code></p> + <p><code>--db-ovnbr-create-insecure-remote=<var>yes|no</var></code></p> + <p><code>--db-ovnbr-config-file=<var>FILE</var></code></p> + <p><code>--ovn-br-controller-ssl-key=<var>KEY</var></code></p> + <p><code>--ovn-br-controller-ssl-cert=<var>CERT</var></code></p> + <p><code>--ovn-br-controller-ssl-ca-cert=<var>CERT</var></code></p> + <p><code>--ovn-br-controller-ssl-bootstrap-ca-cert=<var>CERT</var></code></p> <h1>Protocol, Cipher and Ciphersuite options</h1> <p><code>--ovn-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> @@ -118,6 +138,11 @@ <p><code>--ovn-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> <p><code>--ovn-ic-nb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> <p><code>--ovn-ic-sb-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> + <p><code>--ovn-br-controller-ssl-protocols=<var>PROTOCOLS</var></code></p> + <p><code>--ovn-br-db-ssl-protocols=<var>PROTOCOLS</var></code></p> + <p><code>--ovn-br-controller-ssl-ciphers=<var>CIPHERS</var></code></p> + <p><code>--ovn-br-db-ssl-ciphers=<var>CIPHERS</var></code></p> + <p><code>--ovn-br-db-ssl-ciphersuites=<var>CIPHERSUITES</var></code></p> <h1>Address and port options</h1> <p><code>--db-nb-sync-from-addr=<var>IP ADDRESS</var></code></p> @@ -273,6 +298,13 @@ This command will be useful for starting the OVN IC-SB ovsdb-server in a container. </p> + <p><code># ovn-ctl run_ovnbr_ovsdb</code></p> + <p> + This command runs the OVN bridge db ovsdb-server without passing the + <code>detach</code> option, making it to block until ovsdb-server exits. + This command will be useful for starting the OVN br db ovsdb-server in a + container. + </p> <h1>Example Usage</h1> <h2>Run ovn-controller on a host already running OVS</h2> @@ -372,4 +404,8 @@ # ovsdb-client convert unix:/var/run/ovn/ovnsb_db.sock /usr/local/share/ovn/ovn-sb.ovsschema </code> </p> + + <h2>Run OVN bridge controller services on a host already running OVS</h2> + <p><code># ovn-ctl start_ovnbr_ovsdb</code></p> + <p><code># ovn-ctl start_br_controller</code></p> </manpage>