← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1323259] [NEW] Open vSwitch Agent ID initalisation prevents reuse of agent with userspace only vSwitches

 

Public bug reported:

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

** Affects: neutron
     Importance: Undecided
     Assignee: sean mooney (sean-k-mooney)
         Status: New

** Changed in: neutron
     Assignee: (unassigned) => sean mooney (sean-k-mooney)

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

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

Status in OpenStack Neutron (virtual network service):
  New

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

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


Follow ups

References