← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1785608] Re: [RFE] neutron ovs agent support baremetal port using smart nic

 

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

commit b4243ad3f72b3dc7ef5f291a85a3dd084d6c1c00
Author: Hamdy Khader <hamdyk@xxxxxxxxxxxx>
Date:   Thu Jul 26 17:40:53 2018 +0300

    Add Smart NIC representor port to integration bridge
    
    In case of Smart NIC vNIC type neutron should mimic nova-compute
    that plug the port to the ovs bridge.
    
    Extend the Neutron OVS mechanism driver and Neutron OVS Agent to bind
    the Neutron port for the baremetal host with Smart NIC. This will allow
    the Neutron OVS Agent to configure the pipeline of the OVS running on
    the Smart NIC and leverage the pipeline features such as: VXLAN,
    Security Groups and ARP Responder.
    
    Story: #2003346
    Closes-Bug: #1785608
    Change-Id: I6d520d3bac2e9ceb30b5b6197c6eb0f958cc3659


** Changed in: neutron
       Status: In Progress => Fix Released

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

Title:
  [RFE] neutron ovs agent support baremetal port using smart nic

Status in neutron:
  Fix Released

Bug description:
  Problem description
  ===================

  While Ironic today supports Neutron provisioned network connectivity for
  Bare-Metal servers through ML2 mechanism driver, the existing support
  is based largely on configuration of TORs through vendor-specific mechanism
  drivers, with limited capabilities.

  Proposed change
  ===============

  There is a wide range of smart/intelligent NICs emerging on the market.
  These NICs generally incorporate one or more general purpose CPU cores along
  with data-plane packet processing accelerations, and can efficiently run
  virtual switches such as OVS, while maintaining the existing interfaces to the
  SDN layer.

  The goal is to enable
  running the standard Neutron Open vSwitch L2 agent, providing a generic,
  vendor-agnostic bare metal networking service with feature parity compared
  to the virtualization use-case.

  * Neutron ml2 ovs changes:
    Update the neuton ml2 ovs to bind bare metal port with smartNIC flag in the
    binding profile.

  * Neutron ovs agent changes:

  Example of SmartNIC model::

    +---------------+
    |    Server     |
    |               |
    |      +A       |
    +------|--------+
           |
           |
    +------|--------+
    |    SmartNIC   |
    |    +-+B-+     |
    |    |OVS |     |
    |    +-+C-+     |
    +------|--------+
           |

    A - port on the baremetal
    B - port that represent the baremetal port in the SmartNIC
    C - port to the wire

    Add/Remove Port B to the ovs br-int with external-ids
    This part is mimc the nova-compute that plug the port to the ovs bridge.
    The external-ids information is:

      'external-ids:iface-id=%s' % port_id
      'external-ids:iface-status=active'
      'external-ids:attached-mac=%s' % ironic_port.address
      'external-ids:node-uuid=%s' % node_uuid

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


References