Thanks Ali for the quick patch. Please see my comments inline.

On Wed, May 9, 2018 at 9:30 AM, aginwala <aginw...@asu.edu> wrote:
>
> Thanks Han and Numan for the clarity to help sort it out.
>
> For making vip work with using LB in my two node setup, I had changed
below code to skip setting master IP  when creating pcs resource for ovndbs
and listen on 0.0.0.0 instead. Hence, the discussion seems inline with the
code change which is small for sure as below:
>
>
> diff --git a/ovn/utilities/ovndb-servers.ocf
b/ovn/utilities/ovndb-servers.ocf
> index 164b6bc..d4c9ad7 100755
> --- a/ovn/utilities/ovndb-servers.ocf
> +++ b/ovn/utilities/ovndb-servers.ocf
> @@ -295,8 +295,8 @@ ovsdb_server_start() {
>
>      set ${OVN_CTL}
>
> -    set $@ --db-nb-addr=${MASTER_IP} --db-nb-port=${NB_MASTER_PORT}
> -    set $@ --db-sb-addr=${MASTER_IP} --db-sb-port=${SB_MASTER_PORT}
> +    set $@ --db-nb-port=${NB_MASTER_PORT}
> +    set $@ --db-sb-port=${SB_MASTER_PORT}
>
>      if [ "x${NB_MASTER_PROTO}" = xtcp ]; then
>          set $@ --db-nb-create-insecure-remote=yes
>

This change solves the IP binding problem. It will just listen on 0.0.0.0.
However, another problem is that we should let LB to do health check with
TCP port, and point only to the master. This requires that standby NB/SBs
do not listen on the same TCP ports, so we can make one more change so that
if the NB/SB is on slave, they start with unix socket only.

>
> Results:
> # accessing via LB VIP
> ovn-nbctl --db=tcp:10.149.7.56:6641 show
> switch bb130c99-a00d-43cf-b40a-9c6fb1df5ed7 (ls666)
> ovn-nbctl --db=tcp:10.149.7.56:6641 ls-add ls55
> # accessing via active node pool member
> root@test-pace2-2365308:~# ovn-nbctl --db=tcp:10.169.129.33:6641 show
> switch bb130c99-a00d-43cf-b40a-9c6fb1df5ed7 (ls666)
> switch 41922d23-3430-436d-b67a-00422367a653 (ls55)
> # accessing using standby node pool member
> root@test-pace2-2365308:~# ovn-nbctl --db=tcp:10.169.129.33:6641 ls-add
lss2222
> ovn-nbctl: transaction error: {"details":"insert operation not allowed
when database serv
> # using connect string and skip using VIP resource just for reading db
and not for writing.
> ovn-nbctl --db=tcp:10.169.129.34:6641,tcp:10.169.129.33:6641 show
>
> I am pointing northd and ovn-controller to the db vip which works as
expected too.
>
> For northd, we can use local unix socket too which is valid as I have
tested both ways by keeping it running on both nodes. I think its just a
personal pref to use vip or unix socket as both are valid for northd. I
think that we might need to update the documentation too with above details.
>
> I will send a formal patch along with documentation update. Let me know
if there are other suggestions too in case anything is missed.
>
>
> Regards,
> Aliasgar
>
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to