Open vSwitch Agent ID initalisation prevents reuse of agent with userspace only vSwitches

Bug #1323259 reported by sean mooney
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Low
sean mooney

Bug Description

Problem description
===================
In the Open vSwitch agent, the Agent id is currently based off the mac address of the br-int.
Userspace Open vSwitch derivatives such as the Intel® DPDK Accelerated Open vSwitch do not currently create a tap device in the kernel to back the ovs bridges local port.
This limitation prevents reuse of the OpenVSwitch agent between both switches.
By allowing integration of high throughput vSwitch implementations via existing agents, NFV workloads can be enabled in OpenStack without significant extension of the current codebase.

Proposed change
===============
To enable reuse of the ovs agent with the Intel® DPDK Accelerated Open vSwitch the proposal is to change the generation of the agent_id to use the hostname instead of the mac address of the br-int.

- mac = self.int_br.get_local_port_mac()
- self.agent_id = '%s%s' % ('ovs', (mac.replace(":", "")))
+ self.agent_id = 'ovs-agent-%s' % socket.gethostname()

For several plugins such as the nec,mlnx,hyperv and onconvergence agents the hostname is used to create the agent id.
Using the hostname will normalise the agent_id between these 5 neutron agents.

at present the Agent_id is only used in log messages. by using the hostname instead of mac of br-int log readability will also be improved as it will be easier to identify which node the log is from if log aggregation is preformed across a cluster.

Patch
===============
initial patch submitted for review
https://review.openstack.org/#/c/95138/1

Tags: ovs
Changed in neutron:
assignee: nobody → sean mooney (sean-k-mooney)
tags: added: ovs
Changed in neutron:
importance: Undecided → Wishlist
status: New → Confirmed
Changed in neutron:
status: Confirmed → In Progress
Kyle Mestery (mestery)
Changed in neutron:
milestone: none → juno-2
importance: Wishlist → Low
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/95138
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=744c1bd2f1ae1caf3cd6d0c07d61b034a21204bc
Submitter: Jenkins
Branch: master

commit 744c1bd2f1ae1caf3cd6d0c07d61b034a21204bc
Author: Sean Mooney <email address hidden>
Date: Tue Jun 10 11:41:49 2014 +0100

    changes ovs agent_id init to use hostname instead of mac

    In the Open vSwitch agent,
    the Agent id is currently based off the mac address of the br-int.
    Userspace only Open vSwitch derivatives such as Intel's DPDK
    Accelerated Open vSwitch do not currently create a tap device in the kernel
    to back the ovs bridges local port.
    This limitation prevents reuse of the OpenVSwitch agent between both switches.

    To enable reuse of the ovs agent with Intel's DPDK Accelerated Open vSwitch,
    the proposal is to change the generation of the agent_id to use the hostname,
    instead of the mac address of the br-int.

    For several plugins such as the nec,mlnx,hyperv and onconvergence agents
    the hostname is used to create the agent id.
    Using the hostname will normalise the agent_id between these 5 neutron agents,
    additionally log readability will also be improved,
    if log aggregation is preformed across a cluster
    as it will be easier to identify which node the log is from.

    the hostname is retrived from cfg.CONF.host

    Closes-Bug: #1323259
    Change-Id: I9abfac17a74d298f1a17a0931fc98ac00234ac0b

Changed in neutron:
status: In Progress → Fix Committed
Changed in neutron:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in neutron:
milestone: juno-2 → 2014.2
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.