[ovs-dev] [PATCH ovn v2 3/3] utilities: add conditional {start/stop}_ic_ovsdb on start_ic command

Odintsov Vladislav VlOdintsov at croc.ru
Mon Jan 25 16:23:10 UTC 2021


I’ve updated PR https://github.com/ovn-org/ovn/pull/65
Could you please take a look on it?


Regards,

Vladislav Odintsov

From: Han Zhou <hzhou at ovn.org>
Date: Monday, 25 January 2021, 11:57
To: Odintsov Vladislav <VlOdintsov at croc.ru>
Cc: Han Zhou <hzhou at ovn.org>, Vladislav Odintsov <odivlad at gmail.com>, ovs dev <dev at openvswitch.org>
Subject: Re: [ovs-dev] [PATCH ovn v2 3/3] utilities: add conditional {start/stop}_ic_ovsdb on start_ic command



On Mon, Jan 25, 2021 at 12:29 AM Odintsov Vladislav <VlOdintsov at croc.ru<mailto:VlOdintsov at croc.ru>> wrote:
I considered this purpose same as for ovn-northd – one systemd unit manages all necessary stuff for the service.
We run OVN IC service and IC DBs on separate from ovn-northd nodes using systemd.

Even if one wants to run OVN IC on central and ovn ic dbs on global nodes, and do this via systemd, he/she needs to have additional system-unit for OVN IC DB.

So, the best option is – a new systemd-unit for OVN IC DBs. Right?

Yes, this sounds more reasonable to me.


Regards,

Vladislav Odintsov

From: Han Zhou <hzhou at ovn.org<mailto:hzhou at ovn.org>>
Date: Monday, 25 January 2021, 10:59
To: Odintsov Vladislav <VlOdintsov at croc.ru<mailto:VlOdintsov at croc.ru>>
Cc: Numan Siddique <numans at ovn.org<mailto:numans at ovn.org>>, Han Zhou <hzhou at ovn.org<mailto:hzhou at ovn.org>>, ovs dev <dev at openvswitch.org<mailto:dev at openvswitch.org>>, Vladislav Odintsov <odivlad at gmail.com<mailto:odivlad at gmail.com>>
Subject: Re: [ovs-dev] [PATCH ovn v2 3/3] utilities: add conditional {start/stop}_ic_ovsdb on start_ic command

Hi Odintsov,

Could you help clarify a little more about the purpose of starting IC DBs with start_ic command instead of using start_ic_ovsdb separately?
As I mentioned earlier in a real deployment, it doesn't make much sense to use start_ic command to start the IC DBs because start_ic is needed on central nodes of each AZ, while IC DB should be started in the global DB nodes. These should be different nodes (nodes at AZ level v.s. global).

On Tue, Jan 12, 2021 at 4:49 AM Odintsov Vladislav <VlOdintsov at croc.ru<mailto:VlOdintsov at croc.ru><mailto:VlOdintsov at croc.ru<mailto:VlOdintsov at croc.ru>>> wrote:
>
> Hi,
>
> Sorry for the long reply. There were long NY holidays in Russia.
> I do have same thoughts as Han.
> Maybe, it's better to introduce separate option --ovn-manage-ic-ovsdb, which can have NO as default value and then just pass --ovn-manage-ic-ovsdb=yes in ovn-ic system-unit?
>
> In such situation current behavior for direct ovn-ctl start_ic call would not be changed and at the same time ovn-ic systemd unit will behave similar to ovn-northd: it will start all necessary services for ovn-ic by invoking: `ovn_ctl start_ic --ovn-manage-ic-ovsdb=yes $OPTS` inside system-unit.

The approach you proposed still would not start all necessary services for ovn-ic because ovn-ic depends on not only IC-DBs but also local NB and SB DBs.

Thanks,
Han

>
> Does that look better?
> If yes, I'll update PR.
>
> Regards,
>
> Vladislav Odintsov
>
> On 23.12.2020, 11:24, "dev on behalf of Numan Siddique" <ovs-dev-bounces at openvswitch.org<mailto:ovs-dev-bounces at openvswitch.org><mailto:ovs-dev-bounces at openvswitch.org<mailto:ovs-dev-bounces at openvswitch.org>> on behalf of numans at ovn.org<mailto:numans at ovn.org><mailto:numans at ovn.org<mailto:numans at ovn.org>>> wrote:
>
>     On Wed, Dec 23, 2020 at 12:40 PM Han Zhou <hzhou at ovn.org<mailto:hzhou at ovn.org><mailto:hzhou at ovn.org<mailto:hzhou at ovn.org>>> wrote:
>     >
>     > On Tue, Dec 22, 2020 at 6:05 AM Numan Siddique <numans at ovn.org<mailto:numans at ovn.org><mailto:numans at ovn.org<mailto:numans at ovn.org>>> wrote:
>     > >
>     > > Hi Han,
>     > >
>     > > Can you please take a look at this patch ? Does this change in
>     > > behavior fine with you ?\
>     > >
>     > > Thanks
>     > > Numan
>     > >
>     >
>     > Hi Numan,
>     >
>     > I am concerned with changing the default behavior. In normal use cases the
>     > global IC DBs shouldn't be co-located with ovn-ic, considering that the
>     > glocal DBs are used for multiple OVN deployments, and ovn-ic is in each OVN
>     > deployment (usually on the central nodes). In production I assume the
>     > global DB is managed independently from any of the OVN deployments.
>     > If we want some convenience for testing purposes to start the global DBs
>     > together with ovn-ic, it is better to be done by explicitly specifying the
>     > option --ovn-manage-ovsdb=yes instead of default. In fact, even supporting
>     > this with the --ovn-manage-ovsdb=yes may seem confusing, because ovn-ic
>     > interacts not only with the IC DBs but also local NB/SB DBs, which is not
>     > like ovn-northd, but I am ok if there is a strong need for such
>     > convenience. In other words, I'd suggest keeping the current interface for
>     > clarity, but I am also ok with starting IC DBs with start_ic provided that
>     > it doesn't change the default behavior.
>     >
>     > Thanks,
>     > Han
>
>     Thanks Han. I will let Vladislav comment on this.
>
>     I submitted this patch from the PR - https://github.com/ovn-org/ovn/pull/65
>
>     Numan
>
>     >
>     > >
>     > > On Tue, Dec 22, 2020 at 1:24 PM <numans at ovn.org<mailto:numans at ovn.org><mailto:numans at ovn.org<mailto:numans at ovn.org>>> wrote:
>     > > >
>     > > > From: Vladislav Odintsov <odivlad at gmail.com<mailto:odivlad at gmail.com><mailto:odivlad at gmail.com<mailto:odivlad at gmail.com>>>
>     > > >
>     > > > This commit adds capability to start and stop ovsdb-server for OVN
>     > interconnection
>     > > > when {start,stop}_ic is called.
>     > > > It changes previous behavior where {start,stop}_ic only started/stopped
>     > ovn-ic daemon without ovn-ic DBs.
>     > > >
>     > > > If one wants to save previous behavior, --ovn-manage-ovsdb=no must be
>     > passed to ovn-ctl script.
>     > > >
>     > > > Signed-off-by: Vladislav Odintsov <odivlad at gmail.com<mailto:odivlad at gmail.com><mailto:odivlad at gmail.com<mailto:odivlad at gmail.com>>>
>     > > > ---
>     > > >  utilities/ovn-ctl | 18 +++++++++++++++++-
>     > > >  1 file changed, 17 insertions(+), 1 deletion(-)
>     > > >
>     > > > diff --git a/utilities/ovn-ctl b/utilities/ovn-ctl
>     > > > index 1119308860..178cefaa46 100755
>     > > > --- a/utilities/ovn-ctl
>     > > > +++ b/utilities/ovn-ctl
>     > > > @@ -485,6 +485,19 @@ start_northd () {
>     > > >
>     > > >  start_ic () {
>     > > >      if [ ! -e $ovn_ic_db_conf_file ]; then
>     > > > +        if test X"$OVN_MANAGE_OVSDB" = Xyes; then
>     > > > +            start_ic_ovsdb
>     > > > +
>     > > > +            if ! pidfile_is_running $DB_IC_NB_PID; then
>     > > > +                log_failure_msg "OVN IC Northbound DB is not running"
>     > > > +                exit
>     > > > +            fi
>     > > > +            if ! pidfile_is_running $DB_IC_SB_PID; then
>     > > > +                log_failure_msg "OVN IC Southbound DB is not running"
>     > > > +                exit
>     > > > +            fi
>     > > > +        fi
>     > > > +
>     > > >          ovn_ic_params="--ovnnb-db=$OVN_NORTHD_NB_DB \
>     > > >                         --ovnsb-db=$OVN_NORTHD_SB_DB \
>     > > >                         --ic-nb-db=$OVN_IC_NB_DB \
>     > > > @@ -581,6 +594,9 @@ stop_northd () {
>     > > >  }
>     > > >
>     > > >  stop_ic () {
>     > > > +    if test X"$OVN_MANAGE_OVSDB" = Xyes; then
>     > > > +        stop_ic_ovsdb
>     > > > +    fi
>     > > >      OVS_RUNDIR=${OVS_RUNDIR} stop_ovn_daemon ovn-ic
>     > > >  }
>     > > >
>     > > > @@ -906,7 +922,7 @@ Options:
>     > > >    --ovn-northd-ssl-ca-cert=CERT OVN Northd SSL CA certificate file
>     > > >    --ovn-manage-ovsdb=yes|no        Whether or not the OVN NB/SB
>     > databases should be
>     > > >                                     automatically started and stopped
>     > along
>     > > > -                                   with ovn-northd. The default is
>     > "yes". If
>     > > > +                                   with ovn-northd and ovn-ic. The
>     > default is "yes". If
>     > > >                                     this is set to "no", the
>     > "start_ovsdb" and
>     > > >                                     "stop_ovsdb" commands must be used
>     > to start
>     > > >                                     and stop the OVN databases.
>     > > > --
>     > > > 2.29.2
>     > > >
>     > > > _______________________________________________
>     > > > dev mailing list
>     > > > dev at openvswitch.org<mailto:dev at openvswitch.org><mailto:dev at openvswitch.org<mailto:dev at openvswitch.org>>
>     > > > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>     > > >
>     > _______________________________________________
>     > dev mailing list
>     > dev at openvswitch.org<mailto:dev at openvswitch.org><mailto:dev at openvswitch.org<mailto:dev at openvswitch.org>>
>     > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>     >
>     _______________________________________________
>     dev mailing list
>     dev at openvswitch.org<mailto:dev at openvswitch.org><mailto:dev at openvswitch.org<mailto:dev at openvswitch.org>>
>     https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>
_______________________________________________
dev mailing list
dev at openvswitch.org<mailto:dev at openvswitch.org>
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


More information about the dev mailing list