[RFE] neutron ovs agent support baremetal port using smart nic
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Wishlist
|
Hamdy Khader |
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-
'external-
'external-
'external-
description: | updated |
Changed in neutron: | |
assignee: | Moshe Levi (moshele) → Hamdy Khader (hamdyk) |
status: | New → In Progress |
Changed in neutron: | |
assignee: | Hamdy Khader (hamdyk) → Moshe Levi (moshele) |
Changed in neutron: | |
assignee: | Moshe Levi (moshele) → Adrian Chiris (adrian.chiris) |
Changed in neutron: | |
assignee: | Adrian Chiris (adrian.chiris) → Moshe Levi (moshele) |
Changed in neutron: | |
assignee: | Moshe Levi (moshele) → Hamdy Khader (hamdyk) |
@Moshe,
Is this something you plan to help implementing?