network interconnection with routers doesn't work anymore when bgpvpn/bagpipe is enabled

Bug #1564400 reported by Mathieu Rohon
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
BaGPipe
Fix Released
Undecided
Thomas Morin
networking-bgpvpn
Fix Released
High
Thomas Morin

Bug Description

bgpvpn/bagpipe is enabled in the local.conf :

############"

[[local|localrc]]

#USE_CONSTRAINTS=True
ROOTSLEEP=0
DATA_DIR=$TOP_DIR/data
SCREEN_LOGDIR=/opt/stack/logs/screen
#VERBOSE=True
LOGFILE=/opt/stack/logs/stack.sh.log

ADMIN_PASSWORD=labo
MYSQL_PASSWORD=labo
RABBIT_PASSWORD=labo
SERVICE_PASSWORD=labo
SERVICE_TOKEN=token

ENABLED_SERVICES=q-svc,q-meta,q-agt,q-dhcp,q-l3,key,mysql,rabbit,heat,h-api,h-api-cfn,h-api-cw,h-eng,b-bgp
if [ ! -z $FAKERR ]; then ENABLED_SERVICES+=,b-fakerr; fi
#ENABLED_SERVICES+=,g-api,g-reg,n-api,n-crt,n-cpu,n-cond,n-sch,n-obj,horizon

### NEUTRON ###
### ML2 core plugin ###
NEUTRON_CREATE_INITIAL_NETWORKS=False

Q_PLUGIN=ml2
Q_ML2_PLUGIN_TYPE_DRIVERS=vxlan
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch,l2population

### BGPVPN Service Plugin ###
enable_plugin networking-bgpvpn git://git.openstack.org/openstack/networking-bgpvpn.git

### Activate bagpipe devstack plugins ###
enable_plugin networking-bagpipe git://git.openstack.org/openstack/networking-bagpipe.git

### Configure bagpipe ###
BAGPIPE_DATAPLANE_DRIVER_IPVPN=mpls_ovs_dataplane.MPLSOVSDataplaneDriver

### Set bagpipe as the bgpvpn driver ###
NETWORKING_BGPVPN_DRIVER=BGPVPN:BaGPipe:networking_bgpvpn.neutron.services.service_drivers.bagpipe.bagpipe.BaGPipeBGPVPNDriver:default

### ML2/ovs_agent config ###
[[post-config|/$Q_PLUGIN_CONF_FILE]]
[ml2]
tenant_network_types=vxlan

[openvswitch]
tunnel_types=vxlan

[ml2_type_vxlan]
vni_ranges = 1001:2000

[agent]
l2_population=True
arp_responder=True

###############

then I create two networks connected through a created router :

heat_template_version: '2013-05-23'

resources:
  Net1:
    type: OS::Neutron::Net

  SubNet1:
    type: OS::Neutron::Subnet
    properties:
      network: { get_resource: Net1 }
      cidr: 10.0.0.0/24

  Net2:
    type: OS::Neutron::Net

  SubNet2:
    type: OS::Neutron::Subnet
    properties:
      network: { get_resource: Net2 }
      cidr: 20.0.0.0/24

  router1:
    type: OS::Neutron::Router

  router1_interface1:
        type: OS::Neutron::RouterInterface
        properties:
          router_id: { get_resource: router1 }
          subnet_id: { get_resource: SubNet1 }
  router1_interface2:
        type: OS::Neutron::RouterInterface
        properties:
          router_id: { get_resource: router1 }
          subnet_id: { get_resource: SubNet2 }

######

then I create a probe in one of those net. From the qprobe namesapce, the router is not reachable.

Changed in bgpvpn:
importance: Undecided → High
milestone: none → next
status: New → Confirmed
Changed in bgpvpn:
assignee: nobody → Thomas Morin (tmmorin-orange)
description: updated
summary: - router networks doesn't work anymore when bgpvpn/bagpipe is enabled
+ network inteconnection with routers don't work anymore when
+ bgpvpn/bagpipe is enabled
Changed in networking-bagpipe:
assignee: nobody → Thomas Morin (tmmorin-orange)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to networking-bagpipe (master)

Fix proposed to branch: master
Review: https://review.openstack.org/299964

Changed in networking-bagpipe:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to networking-bagpipe (master)

Reviewed: https://review.openstack.org/299964
Committed: https://git.openstack.org/cgit/openstack/networking-bagpipe/commit/?id=31f572c3ff87f5f4799a3d2d64d999de7c14aed3
Submitter: Jenkins
Branch: master

commit 31f572c3ff87f5f4799a3d2d64d999de7c14aed3
Author: Thomas Morin <email address hidden>
Date: Thu Mar 31 15:36:12 2016 +0200

    BGPVPN OVS: defer gw ARP redirection until we really need it

    Doing this ARP redirection currently prevents sending traffic
    to a Neutron router connected to the network. We need to avoid
    that if there is no BGPVPN association.

    (we currently accept this drawback when there is a BGPVPN network
    association, since we don't see a use case where a VM would need,
    via a same network, to reach other VMs on other networks, and BGP
    VPN destinations)

    Change-Id: I6fd3b6bc5cb09f2d89c6241c39addd8247b6e19e
    Closes-Bug: 1564400

Changed in networking-bagpipe:
status: In Progress → Fix Released
Changed in bgpvpn:
status: Confirmed → Fix Released
summary: - network inteconnection with routers don't work anymore when
+ network interconnection with routers doesn't work anymore when
bgpvpn/bagpipe is enabled
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.