Vm`s tap bound to br-int,When cfg.CONF.OVS.integration_bridge is configured as another bridge

Bug #1856152 reported by zhangyuhe
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Low
Rodolfo Alonso

Bug Description

When cfg.CONF.OVS.integration_bridge is configured as another bridge, the virtual machine tap port is still bound to the br-int bridge when the VM is created

Changed in neutron:
assignee: nobody → Rodolfo Alonso (rodolfo-alonso-hernandez)
Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Hello:

Can you provide some error logs? Or the configuration you have. What configuration option did you change?

I've seen a problem we could possible have in our configuration options: there are two config options to define the integration bridge:
- OVS plugin opts: https://github.com/openstack/neutron/blob/4051e0b19dc9f318c2e0dd7c60eaa2c46536ad03/neutron/conf/plugins/ml2/drivers/ovs_conf.py#L27
- Agent interface opts: https://github.com/openstack/neutron/blob/4051e0b19dc9f318c2e0dd7c60eaa2c46536ad03/neutron/conf/agent/common.py#L52

The last one, IMO, should be deprecated immediately and only the OVS plugin one should be used.

Regards.

tags: added: ovs
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/698783

Revision history for this message
zhangyuhe (ikukaku) wrote :

In nova.conf, The CONF.neutron.ovs_bridge configuration item is not configured.
But in neutron.conf, The cfg.CONF.OVS.integration_bridge configuration item is configured to `br-int-ovs`
Error handling will occur here:
https://github.com/openstack/nova/blob/b6e353a2c84d87bbb1353ff6602f9f13dc62a2fd/nova/network/neutronv2/api.py#L2921

So,i think,we shuold put "portbindings.VIF_DETAILS_BRIDGE_NAME: cfg.CONF.OVS.integration_bridge" to vif_details
https://github.com/openstack/neutron/blob/e04e1d80e465a04b831047ac0ffb566c80cdd029/neutron/plugins/ml2/drivers/openvswitch/mech_driver/mech_openvswitch.py#L64

Revision history for this message
YAMAMOTO Takashi (yamamoto) wrote :

zhangyuhe,

ovs mechanism driver uses the name reported from the ovs agent.

https://github.com/openstack/neutron/blob/e04e1d80e465a04b831047ac0ffb566c80cdd029/neutron/plugins/ml2/drivers/openvswitch/mech_driver/mech_openvswitch.py#L177

maybe you can check if the agent is reporting the expected value.

Revision history for this message
zhangyuhe (ikukaku) wrote :
Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Hello zhangyuhe:

The problem is not exactly in this method but in in the upper one [1]. You stated that you are using Pike, quite old version. But this method is missing [2]; this patch is adding the integration bridge name configured in OVS.integration_bridge (default value "br-int") in the vif details.

There is the problem you are facing: the vif details passed to Nova do not have the overwritten value you manually defined.

Please, try to import to your code this patch or update to a newer version. [2] is present in master, Train and Stein.

Regards.

[1]https://github.com/openstack/neutron/blob/6b524de73aa1738ca888b10a5e1411b307a3a485/neutron/plugins/ml2/drivers/openvswitch/mech_driver/mech_openvswitch.py#L117
[2]https://review.opendev.org/#/c/596896/

tags: added: pike-backport-potential
Changed in neutron:
status: New → Confirmed
importance: Undecided → Low
tags: added: queens-backport-potential rocky-backport-potential
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to neutron-vpnaas (master)

Related fix proposed to branch: master
Review: https://review.opendev.org/699233

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

Fix proposed to branch: stable/queens
Review: https://review.opendev.org/700878

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

Fix proposed to branch: stable/rocky
Review: https://review.opendev.org/700883

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/rocky)

Reviewed: https://review.opendev.org/700883
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=d286f9ea1ed4f6ed90e557f9584b553ef4272e96
Submitter: Zuul
Branch: stable/rocky

commit d286f9ea1ed4f6ed90e557f9584b553ef4272e96
Author: zhangyuhe <email address hidden>
Date: Tue Aug 28 01:30:53 2018 +0800

    Always set ovs bridge name in vif:binding-details

    - This change updates _set_bridge_name to set
      the bridge name field in the vif binding details.
    - This change adds the integration_bridge name
      to the agent configuration report.

    Closes-Bug: #1788009
    Closes-Bug: #1856152

    (cherry picked from commit 995744c576503b1de90c922dbecf690ad49f244f)
    Change-Id: I454efcb226745c585935d5bd1b3d378f69a55ca2

tags: added: in-stable-rocky
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/queens)

Reviewed: https://review.opendev.org/700878
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=f95b473a9c90244e21bc86ef6af70f4fe8dbda5e
Submitter: Zuul
Branch: stable/queens

commit f95b473a9c90244e21bc86ef6af70f4fe8dbda5e
Author: zhangyuhe <email address hidden>
Date: Tue Aug 28 01:30:53 2018 +0800

    Always set ovs bridge name in vif:binding-details

    - This change updates _set_bridge_name to set
      the bridge name field in the vif binding details.
    - This change adds the integration_bridge name
      to the agent configuration report.

    Closes-Bug: #1788009
    Closes-Bug: #1856152

    (cherry picked from commit 995744c576503b1de90c922dbecf690ad49f244f)
    Change-Id: I454efcb226745c585935d5bd1b3d378f69a55ca2

tags: added: in-stable-queens
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron (master)

Reviewed: https://review.opendev.org/698783
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=33fb446add87a3427a246444b03befc46adb385d
Submitter: Zuul
Branch: master

commit 33fb446add87a3427a246444b03befc46adb385d
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Thu Dec 12 17:39:24 2019 +0000

    Deprecate config option "ovs_integration_bridge"

    Remove this duplicated option and rely only in OVS.integration_bridge.

    NOTE: other projects are still using it; first we need to deprecate it
          in those projects.

    Change-Id: I4e826c8b9fa764b1820adacc3427934dc393c0bc
    Related-Bug: #1856152

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to neutron-vpnaas (master)

Reviewed: https://review.opendev.org/699233
Committed: https://git.openstack.org/cgit/openstack/neutron-vpnaas/commit/?id=15c58acf0c1bf2d6db5d8d6b498da5a5387f879a
Submitter: Zuul
Branch: master

commit 15c58acf0c1bf2d6db5d8d6b498da5a5387f879a
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Mon Dec 16 16:16:35 2019 +0000

    Deprecate ``ovs_integration_bridge``

    Deprecated ``ovs_integration_bridge`` to avoid configuration redundancies.
    Use ``neutron::agents::ml2::ovs::integration_bridge`` instead.

    Change-Id: I0e6c06c1f283df2092dd08efb64da9f28423e2b8
    Related-Bug: #1856152

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 13.0.7

This issue was fixed in the openstack/neutron 13.0.7 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron queens-eol

This issue was fixed in the openstack/neutron queens-eol release.

Changed in neutron:
status: Confirmed → Fix Released
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.