← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1528894] [NEW] Native ovsdb implementation not working

 

Public bug reported:

When trying to use the new native OVSDB provider, the connectivity never
goes up due to the fact that what seems to be the db_set operation
failing to change the patch ports from "nonexistant-peer" to the correct
peer, therefore not linking the bridges together.

https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py#L1119

The system must be running the latest Liberty release, python-
openvswitch package installed and the following command executed:

# ovs-vsctl set-manager ptcp:6640:127.0.0.1

Once that's all done, the openvswitch agent configuration should be
changed to the following:

[OVS]
ovsdb_interface = ovsdb

Restarting the OVS agent will setup everything but leave your network in
a failed state because the correct patch ports aren't updated:

# ovs-vsctl show
    Bridge br-ex
        Port br-ex
            Interface br-ex
                type: internal
        Port "em1"
            Interface "em1"
        Port phy-br-ex
            Interface phy-br-ex
                type: patch
                options: {peer=nonexistent-peer}
    Bridge br-int
        fail_mode: secure
        Port "qvo25d28228-9c"
            tag: 1
            Interface "qvo25d28228-9c"
...
        Port int-br-ex
            Interface int-br-ex
                type: patch
                options: {peer=nonexistent-peer}

Reverting to the regular old forked implementation works with no
problems.

** Affects: neutron
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1528894

Title:
  Native ovsdb implementation not working

Status in neutron:
  New

Bug description:
  When trying to use the new native OVSDB provider, the connectivity
  never goes up due to the fact that what seems to be the db_set
  operation failing to change the patch ports from "nonexistant-peer" to
  the correct peer, therefore not linking the bridges together.

  https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/openvswitch/agent/ovs_neutron_agent.py#L1119

  The system must be running the latest Liberty release, python-
  openvswitch package installed and the following command executed:

  # ovs-vsctl set-manager ptcp:6640:127.0.0.1

  Once that's all done, the openvswitch agent configuration should be
  changed to the following:

  [OVS]
  ovsdb_interface = ovsdb

  Restarting the OVS agent will setup everything but leave your network
  in a failed state because the correct patch ports aren't updated:

  # ovs-vsctl show
      Bridge br-ex
          Port br-ex
              Interface br-ex
                  type: internal
          Port "em1"
              Interface "em1"
          Port phy-br-ex
              Interface phy-br-ex
                  type: patch
                  options: {peer=nonexistent-peer}
      Bridge br-int
          fail_mode: secure
          Port "qvo25d28228-9c"
              tag: 1
              Interface "qvo25d28228-9c"
  ...
          Port int-br-ex
              Interface int-br-ex
                  type: patch
                  options: {peer=nonexistent-peer}

  Reverting to the regular old forked implementation works with no
  problems.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1528894/+subscriptions


Follow ups