[ovs-discuss] Including bfd status for tunnel endpoints on ovs-vsctl show

Miguel Angel Ajo Pelayo majopela at redhat.com
Thu Mar 8 16:43:50 UTC 2018


Ok, looking at the code, it seems like we may only need to do this?

diff --git a/utilities/ovs-vsctl.c b/utilities/ovs-vsctl.c
index 21fa18d..2ac60bf 100644
--- a/utilities/ovs-vsctl.c
+++ b/utilities/ovs-vsctl.c
@@ -1018,7 +1018,9 @@ static struct cmd_show_table cmd_show_tables[] = {
      &ovsrec_interface_col_name,
      {&ovsrec_interface_col_type,
       &ovsrec_interface_col_options,
-      &ovsrec_interface_col_error},
+      &ovsrec_interface_col_error,
+      &ovsrec_interface_col_bfd,
+      &ovsrec_interface_col_bfd_status},
      {NULL, NULL, NULL}
     },


But that would render something like:


[heat-admin at overcloud-novacompute-0 ~]$ sudo ovs-vsctl show
5f35518a-ab34-49a4-a227-e487e251b7e3
    Manager "ptcp:6640:127.0.0.1"
        is_connected: true
    Bridge br-int
        fail_mode: secure
        Port "ovn-14d60a-0"
            Interface "ovn-14d60a-0"
                type: geneve
                options: {csum="true", key=flow, remote_ip="172.16.0.12"}
                bfd: {enable="true"}
                bfd_status: {diagnostic="No Diagnostic", flap_count="1",
forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up,
state=up}


I'm partly guessing here based on what I see around lib/db-ctl-base.c and
doing a little bit of debugging.

@Ben is there any way of filtering out those columns when
bfd:enabled="false" or not set ?

Thanks in advance,
Miguel Ángel.

On Wed, Mar 7, 2018 at 10:04 PM Anil Venkata <anilvenkata at redhat.com> wrote:

> This is nice option to have.
>
> On 07-Mar-2018 6:27 PM, "Miguel Angel Ajo Pelayo" <majopela at redhat.com>
> wrote:
>
>>
>> As OVN started implementing L3HA with the use of BFD monitoring, after
>> discussing with the people who is doing QA and thinking about future
>> troubleshooting of the feature, they proposed something the thing on
>> $subject.
>>
>> What do you think?
>>
>> For example, in this case:
>>
>> [heat-admin at overcloud-novacompute-0 ~]$ sudo ovs-vsctl list Interface |
>> grep -E "bfd |name |bfd_status"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "tapc6eed125-08"
>> bfd                 : {enable="true"}
>> bfd_status          : {diagnostic="No Diagnostic", flap_count="1",
>> forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up,
>> state=up}
>> name                : "ovn-e4dd7a-0"
>> bfd                 : {enable="true"}
>> bfd_status          : {diagnostic="No Diagnostic", flap_count="1",
>> forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up,
>> state=up}
>> name                : "ovn-14d60a-0"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : br-ex
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "vlan30"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : br-int
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "vlan20"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "tapd09b3382-50"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "vlan50"
>> bfd                 : {}
>> bfd_status          : {}
>> name                : "eth0"
>> bfd                 : {enable="true"}
>> bfd_status          : {diagnostic="No Diagnostic", flap_count="1",
>> forwarding="true", remote_diagnostic="No Diagnostic", remote_state=up,
>> state=up}
>> name                : "ovn-c8b85a-0"
>>
>>
>> It could look like:
>>
>> [heat-admin at overcloud-novacompute-0 ~]$ sudo ovs-vsctl show
>> 5f35518a-ab34-49a4-a227-e487e251b7e3
>>     Manager "ptcp:6640:127.0.0.1"
>>         is_connected: true
>>     Bridge br-int
>>         fail_mode: secure
>>         Port "ovn-14d60a-0"
>>             Interface "ovn-14d60a-0"
>>                 type: geneve
>>                 options: {csum="true", key=flow, remote_ip="172.16.0.12"}
>>               *  bfd: {remote_state="up", state="up", flap_count="1"}*
>>         Port "ovn-e4dd7a-0"
>>             Interface "ovn-e4dd7a-0"
>>                 type: geneve
>>                 options: {csum="true", key=flow, remote_ip="172.16.0.22"}
>>                * bfd: {remote_state="up", state="up", flap_count="1"}*
>>         Port br-int
>>             Interface br-int
>>                 type: internal
>>         Port "tapd09b3382-50"
>>             Interface "tapd09b3382-50"
>>         Port "tapc6eed125-08"
>>             Interface "tapc6eed125-08"
>>         Port "ovn-c8b85a-0"
>>             Interface "ovn-c8b85a-0"
>>                 type: geneve
>>                 options: {csum="true", key=flow, remote_ip="172.16.0.17"}
>>                 *bfd: {remote_state="up", state="up", flap_count="1"}*
>>     Bridge br-ex
>>         fail_mode: standalone
>>         Port "vlan30"
>>             tag: 30
>>             Interface "vlan30"
>>                 type: internal
>>         Port br-ex
>>             Interface br-ex
>>                 type: internal
>>         Port "eth0"
>>             Interface "eth0"
>>         Port "vlan50"
>>             tag: 50
>>             Interface "vlan50"
>>                 type: internal
>>         Port "vlan20"
>>             tag: 20
>>             Interface "vlan20"
>>                 type: internal
>>     ovs_version: "2.8.1"
>>
>> _______________________________________________
>> discuss mailing list
>> discuss at openvswitch.org
>> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20180308/ff0fad34/attachment.html>


More information about the discuss mailing list