From patchwork Thu Jul 6 16:51:53 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Russell Bryant X-Patchwork-Id: 785228 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3x3P142Rjzz9s75 for ; Fri, 7 Jul 2017 02:52:24 +1000 (AEST) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id DB597AB9; Thu, 6 Jul 2017 16:52:21 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 12FC1A95 for ; Thu, 6 Jul 2017 16:52:20 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from relay2-d.mail.gandi.net (relay2-d.mail.gandi.net [217.70.183.194]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id BE17D12F for ; Thu, 6 Jul 2017 16:52:18 +0000 (UTC) Received: from mfilter13-d.gandi.net (mfilter13-d.gandi.net [217.70.178.141]) by relay2-d.mail.gandi.net (Postfix) with ESMTP id 862FEC5A73 for ; Thu, 6 Jul 2017 18:52:17 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mfilter13-d.gandi.net Received: from relay2-d.mail.gandi.net ([IPv6:::ffff:217.70.183.194]) by mfilter13-d.gandi.net (mfilter13-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id gR67rd6aP2Xd for ; Thu, 6 Jul 2017 18:52:15 +0200 (CEST) X-Originating-IP: 209.85.216.175 Received: from mail-qt0-f175.google.com (mail-qt0-f175.google.com [209.85.216.175]) (Authenticated sender: russell@ovn.org) by relay2-d.mail.gandi.net (Postfix) with ESMTPSA id 847AFC5A54 for ; Thu, 6 Jul 2017 18:52:15 +0200 (CEST) Received: by mail-qt0-f175.google.com with SMTP id r30so7331631qtc.0 for ; Thu, 06 Jul 2017 09:52:15 -0700 (PDT) X-Gm-Message-State: AIVw1130gWRDjZiyutYBLDBShAW53A5I/m99btbhczAJOW5z75Jv+hlU T2Su4CI55jSNu7byAARL3dv7a38+cw== X-Received: by 10.200.35.21 with SMTP id a21mr32059438qta.56.1499359934065; Thu, 06 Jul 2017 09:52:14 -0700 (PDT) MIME-Version: 1.0 Received: by 10.140.19.213 with HTTP; Thu, 6 Jul 2017 09:51:53 -0700 (PDT) In-Reply-To: <1499262318-17357-1-git-send-email-majopela@redhat.com> References: <1496930708-15441-1-git-send-email-majopela@redhat.com> <1499262318-17357-1-git-send-email-majopela@redhat.com> From: Russell Bryant Date: Thu, 6 Jul 2017 12:51:53 -0400 X-Gmail-Original-Message-ID: Message-ID: To: Miguel Angel Ajo X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_LOW, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: ovs dev Subject: Re: [ovs-dev] [PATCH v3 1/6] ovn: l3ha, NBDB and SBDB changes and documentation X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org On Wed, Jul 5, 2017 at 9:45 AM, Miguel Angel Ajo wrote: > This commit introduces the north and south db changes necessary for > the l3ha router implementation. > > It defines a new Table in both NBDB and SBDB. > > The Gateway_Chassis table is created, with a tiny difference between > NBDB and SBDB, NBDB references the chassis via it's name (chassis_name) > and SBDB references the chassis via reference (chassis) to the Chassis table. > > In NBDB a new column (gateway_chassis) is added to Logical_Router_Ports > with a list of Gateway_Chassis which can be empty. > > In SBDB a new column (gateway_chassis) is added to Port_Binding with > the same list, this column will be used for ports of type chassis-redirect. > > Signed-off-by: Miguel Angel Ajo > --- > ovn/ovn-nb.ovsschema | 28 +++++++++++++++++++++++++--- > ovn/ovn-nb.xml | 39 +++++++++++++++++++++++++++++++++++++++ > ovn/ovn-sb.ovsschema | 30 +++++++++++++++++++++++++++--- > ovn/ovn-sb.xml | 38 ++++++++++++++++++++++++++++++++++++++ > 4 files changed, 129 insertions(+), 6 deletions(-) > A couple of patches in this series introduce whitespace errors. I'll fix them as I go through, but FYI: Applying: ovn: l3ha, NBDB and SBDB changes and documentation Applying: ovn: l3ha, ovn-northd gateway chassis propagation .git/rebase-apply/patch:539: new blank line at EOF. + warning: 1 line adds whitespace errors. Applying: ovn: l3ha, handling of multiple gateway chassis Applying: ovn: l3ha, enable bfd between tunnel endpoints Applying: ovn: l3ha, make is_chassis_active aware of gateway_chassis Applying: ovn: l3ha, gratuitous ARP for HA router .git/rebase-apply/patch:311: new blank line at EOF. + warning: 1 line adds whitespace errors. Also, here's a patch you can squash into this one that adjusts the schema version numbers and adds a bit to the docs. I'll collect my suggestions in this branch for now: https://github.com/russellb/ovs/tree/l3ha commit 26c1347bfe8faa96a4218e363281ee7154e8d5f4 Author: Russell Bryant Date: Thu Jul 6 08:58:27 2017 -0400 ovn: Update schema versions and docs. Bump minor version since we've added new backwards compatible features. Also add some additional content and tweaks to schema documentation. Signed-off-by: Russell Bryant @@ -2891,14 +2896,22 @@ tcp.flags = RST; - Association of Port_Binding of type chassisredirect to - a Chassis. The traffic going out through an specific chassisredirect - port will be redirected to a chassis, or a set of them in high - availability configurations. +

+ Association of rows of + chassisredirect to + a . The traffic going out through a specific + chassisredirect port will be redirected to a chassis, + or a set of them in high availability configurations. +

- Name of the Gateway Chassis element, a recommendation - is using ${port_name}_${chassis_name} +

+ Name of the . +

+

+ A suggested, but not required naming convention is + ${port_name}_${chassis_name}. +

@@ -2907,7 +2920,7 @@ tcp.flags = RST; This is the priority the specific among all - Gateway_Chassis belonging to the same logical router port. + Gateway_Chassis belonging to the same . diff --git a/ovn/ovn-nb.ovsschema b/ovn/ovn-nb.ovsschema index 6a96704..d85a3fe 100644 --- a/ovn/ovn-nb.ovsschema +++ b/ovn/ovn-nb.ovsschema @@ -1,7 +1,7 @@ { "name": "OVN_Northbound", - "version": "5.6.2", - "cksum": "3482049799 16164", + "version": "5.7.0", + "cksum": "3754583060 16164", "tables": { "NB_Global": { "columns": { diff --git a/ovn/ovn-nb.xml b/ovn/ovn-nb.xml index 6061114..1e73465 100644 --- a/ovn/ovn-nb.xml +++ b/ovn/ovn-nb.xml @@ -179,7 +179,7 @@ Set this to an IPv4 subnet, e.g. 192.168.0.0/24, to enable ovn-northd to automatically assign IP addresses within - that subnet. + that subnet. @@ -1251,8 +1251,31 @@ - Several can be referenced for a given - logical router port. +

+ If set, this indicates that this logical router port represents + a distributed gateway port that connects this router to a logical + switch with a localnet port. There may be at most one such + logical router port on each logical router. +

+ +

+ Several can be referenced for a given + logical router port. A single is + functionally equivalent to setting + . Refer to the + description of + for additional details on gateway handling. +

+ +

+ Defining more than one will enable + gateway high availability. Only one gateway will be active at a + time. OVN chassis will use BFD to monitor connectivity to a + gateway. If connectivity to the active gateway is interrupted, + another gateway will become active. + The column + specifies the order that gateways will be chosen by OVN. +

@@ -1324,6 +1347,14 @@ table="Logical_Switch_Port"/> should be set to router.

+ +

+ While is still + supported for backwards compatibility, it is now preferred to + specify one or more instead. + It is functionally equivalent, but allows you to specify multiple + chassis to enable high availability. +

@@ -2117,26 +2148,42 @@
- Association of chassis to logical router port. The traffic - going out through an specific router port will be redirected to a - chassis, or a set of them in high availability configurations. - This is the equivalent of option:redirect-chassis for Logical - Router ports, but allowing the association and prioritize multiple - Chassis to a single port. +

+ Association of one or more chassis to a logical router port. The traffic + going out through an specific router port will be redirected to a + chassis, or a set of them in high availability configurations. + A single is equivalent to setting + . Using + allows associating multiple prioritized + chassis with a single logical router port. +

- Name of the Gateway Chassis element, a recommendation - is using ${port_name}_${chassis_name} +

+ Name of the . +

+

+ A suggested, but not required naming convention is + ${port_name}_${chassis_name}. +

- Name of the chassis that we want to use to traffic going - through an specific logical router port +

+ Name of the chassis that we want to redirect traffic through for the + associated logical router port. The value must match the + column + of the table in the + database. +

- This is the priority of a chassis among all Gateway_Chassis belonging - to the same logical router port. +

+ This is the priority of a chassis among all + belonging to the same logical router + port. +

@@ -2144,9 +2191,9 @@ - The overall purpose of these columns is described under Common - Columns at the beginning of this document. - + + See External IDs at the beginning of this document. +
diff --git a/ovn/ovn-sb.ovsschema b/ovn/ovn-sb.ovsschema index 5c7a001..2643640 100644 --- a/ovn/ovn-sb.ovsschema +++ b/ovn/ovn-sb.ovsschema @@ -1,7 +1,7 @@ { "name": "OVN_Southbound", - "version": "1.13.1", - "cksum": "1200651109 13275", + "version": "1.14.0", + "cksum": "3613553908 13275", "tables": { "SB_Global": { "columns": { diff --git a/ovn/ovn-sb.xml b/ovn/ovn-sb.xml index 04f3d76..d9b6e36 100644 --- a/ovn/ovn-sb.xml +++ b/ovn/ovn-sb.xml @@ -1838,10 +1838,15 @@ tcp.flags = RST; - The list of should only be populated for - ports of type chassisredirect. And defines the list - of chassis which outgoing traffic of the port will be redirected - through. +

+ A list of . +

+

+ This should only be populated for ports with + set to chassisredirect. + This column defines the list of chassis used as gateways where traffic + will be redirected through. +