ml2 plugin ovs dvr external net binding br-ex to bond0.xxx tagged

asked 2016-02-14 12:02:43 -0500

Kernel_Panic gravatar image

updated 2016-02-14 12:22:40 -0500

My question is simple one. How do I bind my external net(s) br-x with a tagged bonded interface?

Quite a bit of confusion about this in this forum. The only way I have found is with ovs-vsctl

ovs-vsctl add-port br-ex bond.104

However, I think this should be an openstack ml2 plugin configuration option, it used to be handled with the linux bridge agent.

physical_interface_mappings = external:bond0.104,external1:bond0.251,external2:bond0.252,external4:bond0.254

Network Node ml2_conf.ini

    [ml2]
type_drivers = flat,vlan,vxlan,gre
tenant_network_types = vxlan,gre
mechanism_drivers = openvswitch,l2population
#extension_drivers = port_security

[ovs]
integration_bridge = br-int
tunnel_bridge = br-tun
local_ip = 10.0.101.11
enable_tunneling = True
bridge_mappings = external:br-ex,external1:br-ex1,external2:br-ex2,external4:br-ex4

[agent]
l2_population = True
tunnel_types = vxlan,gre
enable_distributed_routing = True
arp_responder = True

## Interfaces ##

My externals are in the 198.18.x.x and my tenant vxlan's are in 10.0.101.x. This is the same on each of my controller, network and compute nodes. I understand this cant be kept on the controller neutron-server api because physical interfaces are unique to each node in the cloud, but there should be an ml2_config.ini [ovs] option for making these br-ex to physical bindings.

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: em1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast master bond0 state UP qlen 1000
    link/ether 18:03:73:1c:3b:4d brd ff:ff:ff:ff:ff:ff
3: p1p1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast master bond0 state UP qlen 1000
    link/ether 18:03:73:1c:3b:4d brd ff:ff:ff:ff:ff:ff
11: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN 
    link/ether 62:8b:b1:fe:5e:48 brd ff:ff:ff:ff:ff:ff
14: br-int: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN 
    link/ether 3e:82:1f:26:ec:49 brd ff:ff:ff:ff:ff:ff
31: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP 
    link/ether 18:03:73:1c:3b:4d brd ff:ff:ff:ff:ff:ff
    inet6 fe80::40d:e7ff:feb4:c1d3/64 scope link 
       valid_lft forever preferred_lft forever
32: bond0.100@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP 
    link/ether 18:03:73:1c:3b:4d brd ff:ff:ff:ff:ff:ff
    inet 10.0.100.11/24 brd 10.0.100.255 scope global bond0.100
       valid_lft forever preferred_lft forever
    inet6 fe80::1a03:73ff:fe1c:3b4d/64 scope link 
       valid_lft forever preferred_lft forever
33: bond0.101@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc noqueue state UP 
    link/ether 18:03:73:1c:3b:4d brd ff:ff:ff:ff:ff:ff
    inet 10.0.101.11/24 brd 10 ...
(more)
edit retag flag offensive close merge delete

1 answer

Sort by ┬╗ oldest newest most voted
0

answered 2016-02-22 01:13:07 -0500

Kernel_Panic gravatar image

In testing on centos7 I found that this is not possible to connect an OVS bridge to a bond, tagged ir IP interface, because OVS needs sole control of the physical interface without OS interference.

edit flag offensive delete link more

Get to know Ask OpenStack

Resources for moderators

Question Tools

2 followers

Stats

Asked: 2016-02-14 12:02:43 -0500

Seen: 249 times

Last updated: Feb 22 '16