Tunnel is not getting formed between Network and Compute node in non DVR mode for KVM hypervisors with l2pop enabled

Bug #1461486 reported by Jatin Mehta
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Romil Gupta

Bug Description

[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00mTraceback (most recent call last):
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/opt/stack/neutron/neutron/plugins/openvswitch/agent/ovs_neutron_agent.py", line 445, in fdb_add
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m agent_ports, self._tunnel_port_lookup)
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/usr/local/lib/python2.7/dist-packages/oslo_log/helpers.py", line 46, in wrapper
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m return method(*args, **kwargs)
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/opt/stack/neutron/neutron/agent/l2population_rpc.py", line 234, in fdb_add_tun
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m lvm.network_type)
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/opt/stack/neutron/neutron/plugins/openvswitch/agent/ovs_neutron_agent.py", line 1166, in setup_tunnel_port
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m network_type)
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/opt/stack/neutron/neutron/plugins/openvswitch/agent/ovs_neutron_agent.py", line 1132, in _setup_tunnel_port
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m ofport = br.add_tunnel_port(port_name,
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m File "/opt/stack/neutron/neutron/plugins/openvswitch/agent/openflow/ovs_ofctl/br_tun.py", line 246, in __getattr__
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m raise AttributeError(name)
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00mAttributeError: add_tunnel_port
^[[01;31m2015-06-03 02:05:31.053 TRACE neutron.agent.common.ovs_lib ^[[01;35m^[[00m
2015-06-03 02:05:31.088 ^[[01;31mERROR oslo_messaging.rpc.dispatcher [^[[01;36mreq-74dfb9f4-b9b0-4541-bd2d-115f0a92de14 ^[[00;36mNone None^[[01;31m] ^[[01;35m^[[01;31mException during message handling: add_tunnel_port^[[00m

Romil Gupta (romilg)
Changed in neutron:
assignee: nobody → Romil Gupta (romilg)
Romil Gupta (romilg)
Changed in neutron:
status: New → Confirmed
Revision history for this message
yalei wang (yalei-wang) wrote :

how to reproduce this bug?

Revision history for this message
Romil Gupta (romilg) wrote :

It's very simply, fetch the latest code of neutron in devstack, boot a VM and then would see that the tunnels are not getting established between CN and NN and will throws expection mentioned in the bug description.
BTW, I am working on it :)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

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

Changed in neutron:
status: Confirmed → In Progress
Revision history for this message
Assaf Muller (amuller) wrote :

This is a l2pop-only bug.

summary: Tunnel is not getting formed between Network and Compute node in non DVR
- mode for KVM hypervisors
+ mode for KVM hypervisors with l2pop enabled
Changed in neutron:
importance: Undecided → High
tags: added: l2-pop
Changed in neutron:
assignee: Romil Gupta (romilg) → YAMAMOTO Takashi (yamamoto)
Changed in neutron:
assignee: YAMAMOTO Takashi (yamamoto) → Romil Gupta (romilg)
Akihiro Motoki (amotoki)
tags: added: ml2
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/188350
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=53ec63c430d123cd1ed4acd3b94537e9cb380bcd
Submitter: Jenkins
Branch: master

commit 53ec63c430d123cd1ed4acd3b94537e9cb380bcd
Author: Romil Gupta <email address hidden>
Date: Thu Jun 4 04:21:14 2015 -0700

    Fix a regression in "Separate ovs-ofctl using code as a driver" change

    The tunnels are not getting established between Network Node and
    Compute Nodes in non DVR mode with l2pop enabled and throws
    the AttributeError: add_tunnel_port.

    This fixes a regression in change Ie1224f8a1c17268cd7d1c474ed82fdfb8852eaa8.

    Co-Authored-By: YAMAMOTO Takashi <email address hidden>
    Closes-Bug: #1461486
    Change-Id: I1106fd3dd32f6f827eb25dec4815ff1120af96f0

Changed in neutron:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in neutron:
milestone: none → liberty-1
status: Fix Committed → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (feature/qos)

Fix proposed to branch: feature/qos
Review: https://review.openstack.org/196097

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (feature/qos)
Download full text (93.9 KiB)

Reviewed: https://review.openstack.org/196097
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=1cfed745d54a6ce9cb3dd4e6f454666d9e6676c2
Submitter: Jenkins
Branch: feature/qos

commit ba7d673d1ddd5bfa5aa1be5b26a59e9a8cd78a9f
Author: Kevin Benton <email address hidden>
Date: Thu Jun 25 18:31:38 2015 -0700

    Remove duplicated call to setup_coreplugin

    The test case for vlan_transparent was calling setup_coreplugin
    before calling the super setUp method which already calls
    setup_coreplugin. This was causing duplicate core plugin fixtures
    which resulted in patching the dhcp periodic check twice.

    Change-Id: Ide4efad42748e799d8e9c815480c8ffa94b27b38
    Partial-Bug: #1468998

commit e64062efa3b793f7c4ce4ab9e62918af4f1bfcc9
Author: Kevin Benton <email address hidden>
Date: Thu Jun 25 18:29:37 2015 -0700

    Remove double mock of dhcp agent periodic check

    The test case for the periodic check was patching a target
    that the core plugin fixture already patched out. This removes
    that and exposes the mock from the fixture so the test case
    can reference it.

    Change-Id: I3adee6a875c497e070db4198567b52aa16b81ce8
    Partial-Bug: #1468998

commit 25ae0429a713143d42f626dd59ed4514ba25820c
Author: Kevin Benton <email address hidden>
Date: Thu Jun 25 18:24:10 2015 -0700

    Remove double fanout mock

    The test_mech_driver was duplicating a fanout mock already setup
    in the setUp routine.

    Change-Id: I5b88dff13113d55c72241d3d5025791a76672ac2
    Partial-Bug: #1468998

commit 993771556332d9b6bbf7eb3f0300cf9d8a2cb464
Author: Kevin Benton <email address hidden>
Date: Thu Jun 25 17:55:16 2015 -0700

    Remove double callback manager mocks

    setup_test_registry_instance() in the base test case class gives
    each test its own registry by mocking out the get_callback_manager.
    The L3 agent test cases were duplicating this.

    Partial-Bug: #1468998
    Change-Id: I7356daa846524611e9f92365939e8ad15d1e1cd8

commit 0be1efad93734f11cd63fb3b7bd2983442ce1268
Author: Kevin Benton <email address hidden>
Date: Thu Jun 25 16:57:30 2015 -0700

    Remove ensure_dirs double-patch

    test_spawn_radvd called mock.patch on ensure_dirs after the
    setup method already patched it out. This causes issues when
    mock.patch.stopall() is called because the mocks are stored
    as a set and are unwound in a non-deterministic fashion.[1]
    So some of the time they will be undone correctly, but others
    will leave a monkey-patched in mock, causing the ensure_dir
    test to fail.

    1. http://bugs.python.org/issue21239

    Closes-Bug: #1467908
    Change-Id: I321b5fed71dc73bd19b5099311c6f43640726cd4

commit 0a2238e34e72c17ca8a75e36b1f56e41a3ece74e
Author: Sukhdev Kapur <email address hidden>
Date: Thu Jun 25 15:11:28 2015 -0700

    Fix tenant-id in Arista ML2 driver to support HA router

    When HA router is created, the framework creates a network and does
    not specify the tenant-id. This casuse Arista ML2 driver to fail.
    This patch sets the tenant-id when it is not passed explicitly by
    by the network_create() call from the HA r...

tags: added: in-feature-qos
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (feature/pecan)

Fix proposed to branch: feature/pecan
Review: https://review.openstack.org/196701

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on neutron (feature/pecan)

Change abandoned by Kyle Mestery (<email address hidden>) on branch: feature/pecan
Review: https://review.openstack.org/196701
Reason: This is lacking the functional fix [1], so I'll propose a new merge commit which includes that one.

[1] https://review.openstack.org/#/c/196711/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (feature/pecan)

Fix proposed to branch: feature/pecan
Review: https://review.openstack.org/196920

Thierry Carrez (ttx)
Changed in neutron:
milestone: liberty-1 → 7.0.0
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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