[ovs-dev] [PATCH ovn 0/3] Health check feature for Load balancer backends
Numan Siddique
nusiddiq at redhat.com
Mon Nov 4 19:29:26 UTC 2019
On Sat, Nov 2, 2019 at 1:23 AM Mark Michelson <mmichels at redhat.com> wrote:
>
> Hi Numan,
>
> I'm curious why this feature is IPv4-only. Based on patch 3, it looks
> like the way is paved for IPv6 support. I'm not sure why IPv6 isn't part
> of the initial changeset.
>
> Aside from a small nit in patch 1, this looks great!
Thanks for the reviews. I decided to drop IPv6 support in this series
mainly because
- There were no IPv6 load balancer tests.
- Since there were no IPv6 LB tests, I had to put in a lot more
effort to get the patches up for review
- And I thought we can add the support later once we have a use
case for IPv6 LB health checks.
Having said this, I will definitely try to add the IPv6 support when
ever I get a chance to look at it.
For now we can consider this as technical debt.
If some one wants to volunteer, that's great too :)
Thanks
Numan
>
> For the series,
> Acked-by: Mark Michelson <mmichels at redhat.com>
>
> On 10/31/19 9:42 AM, numans at ovn.org wrote:
> > From: Numan Siddique <numans at ovn.org>
> >
> > This series adds load balancer health check feature. With this
> > ovn-controllers will periodically check the status of the backend
> > services. Only those services which are online/active will be considered
> > for load balancing.
> >
> > Right now this feature is restricted to IPv4 Load balancers only.
> > CMS needs to enable this feature and the load balancer vips and backends
> > should have L4 port defined.
> >
> > For TCP backends, the local ovn-controller which binds that service's
> > VIF, will periodically send a SYN packet and would expect SYN-ACK
> > response to set the status of that service to online. If no response
> > is received within the timeout, then the service status is set to
> > offline.
> >
> > For UDP backends, the local ovn-controller which binds that service's
> > VIF, will periodically send an UDP packet and expects no reply. If no
> > reply is received within the timeout vallue, the service status is set
> > to online. In case the service is down, then ovn-controller expects
> > ICMP unreachable packet and upon receiving this ICMP packets, it sets
> > the status to offline.
> >
> > ovn-northd adds only those backends whose status is 'online' or empty to
> > the ct_lb action.
> >
> > Numan Siddique (3):
> > ovn-northd: Add support for Load Balancer health check
> > Add a new action - handle_svc_check
> > Send service monitor health checks
> >
> > controller/ovn-controller.c | 2 +
> > controller/pinctrl.c | 775 ++++++++++++++++++++++++++++++++--
> > controller/pinctrl.h | 2 +
> > include/ovn/actions.h | 17 +-
> > lib/actions.c | 42 ++
> > northd/ovn-northd.8.xml | 85 +++-
> > northd/ovn-northd.c | 512 ++++++++++++++++++++--
> > ovn-nb.ovsschema | 25 +-
> > ovn-nb.xml | 68 +++
> > ovn-sb.ovsschema | 33 +-
> > ovn-sb.xml | 102 +++++
> > tests/ovn-northd.at | 215 ++++++++++
> > tests/ovn.at | 133 ++++++
> > tests/system-common-macros.at | 1 +
> > tests/system-ovn.at | 180 ++++++++
> > utilities/ovn-trace.c | 3 +
> > 16 files changed, 2122 insertions(+), 73 deletions(-)
> >
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
More information about the dev
mailing list