[ovs-discuss] Best Practices for Configuring a Bonded Interface with Open vSwitch?

Eric epretorious at yahoo.com
Sat Jul 4 18:24:13 UTC 2015


Hello, All:

I've just installed OVS on my Xen host and I'm wondering if there's a recommended configuration for bonding [pysical] interfaces with OVS? e.g., My host system has six [physical] interfaces. I've combined those [physical] interfaces to create three bonded interfaces: 'bond0', 'bond1', and 'bond2'.

For the initial OVS implementation, I created three virtual bridges: 'EXT', 'MGT', and 'SAN':

> [root at xen-2 ~]# ovs-vsctl show
> 0dfeba4c-bcae-4773-8bd9-582a9ebbd01a
>     Bridge SAN
>         Port SAN
>             Interface SAN
>                 type: internal
>     Bridge EXT
>         Port EXT
>             Interface EXT
>                 type: internal
>     Bridge MGT
>         Port MGT
>             Interface MGT
>                 type: internal
>     ovs_version: "2.3.2"

Then I removed the IP address from the bonded interface 'bond2' (manually *and* via configuration files) and connected it to the virtual bridge 'EXT':

> [root at xen-2 ~]# ovs-vsctl show
> 0dfeba4c-bcae-4773-8bd9-582a9ebbd01a
>     Bridge SAN
>         Port SAN
>             Interface SAN
>                 type: internal
>     Bridge EXT
>         Port "bond2"
>             Interface "bond2"
>         Port EXT
>             Interface EXT
>                 type: internal
>     Bridge MGT
>         Port MGT
>             Interface MGT
>                 type: internal
>     ovs_version: "2.3.2"

This works well enough but, after a reboot, the 'bond2' interface refuses to pass any traffic to the [physical] gateway, XXX.YYY.237.1 until I disconnect the bond (i.e., 'bond2') from the virtual switch and re-attach it:

> [root at xen-2 ~]# ping -c3 XXX.YYY.237.1
> PING XXX.YYY.237.1 (XXX.YYY.237.1) 56(84) bytes of data.
> From XXX.YYY.237.65 icmp_seq=1 Destination Host Unreachable
> From XXX.YYY.237.65 icmp_seq=2 Destination Host Unreachable
> From XXX.YYY.237.65 icmp_seq=3 Destination Host Unreachable
>
> --- XXX.YYY.237.1 ping statistics ---
> 3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2937ms
> pipe 3
> 
> [root at xen-2 ~]# ovs-vsctl del-port EXT bond2 && ovs-vsctl --may-exist add-port EXT bond2
>
> [root at xen-2 ~]# ping -c3 XXX.YYY.237.1
> PING XXX.YYY.237.1 (XXX.YYY.237.1) 56(84) bytes of data.
> 64 bytes from XXX.YYY.237.1: icmp_seq=1 ttl=64 time=56.7 ms
> 64 bytes from XXX.YYY.237.1: icmp_seq=2 ttl=64 time=48.8 ms
> 64 bytes from XXX.YYY.237.1: icmp_seq=3 ttl=64 time=47.6 ms
>
> --- XXX.YYY.237.1 ping statistics ---
> 3 packets transmitted, 3 received, 0% packet loss, time 2049ms
> rtt min/avg/max/mdev = 47.650/51.073/56.724/4.033 ms

Should I destroy the 'bond2' interface and create the bond using OVS instead? Or is this configuration correct?

FWIW: I've provided a few more details and demonstrations here: https://www.centos.org/forums/viewtopic.php?f=50&t=53219
TIA,
Eric Pretorious
Portland, OR

REFERENCE:

[root at xen-2 ~]# cat /etc/sysconfig/network /etc/sysconfig/network-scripts/ifcfg-{bond2,EXT}
NETWORKING=yes
GATEWAY=XXX.YYY.237.1
HOSTNAME=xen-2
DNS1=208.67.220.220
DNS2=208.67.222.222
...
DEVICE=bond2
BOOTPROTO=none
ONBOOT=yes
NM_CONTOLLED=no
USERCTL=no
BONDING_OPTS='mode=1 miimon=100'
...
DEVICE=EXT
OVSBRIDGE=EXT
TYPE=ovs
DEVICETYPE=OVSPort
IPADDR=XXX.YYY.237.65
NETMASK=255.255.255.0
BOOTPROTO=static
ONBOOT=yes
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20150704/19185746/attachment-0002.html>


More information about the discuss mailing list