Browse Source

Add ovs hardware Offload support to ovs mechansim driver

Depends-On: I3c0d24a31f0a1cac2cb8c5da8125051d4348eed6
Depends-On  I578f956f2a8c6ee29a9d1ff38ee51765bcab05c1
Implements: blueprint tripleo-ovs-hw-offload

Change-Id: I7e20ab2111e7d71380da844a15835b5fac1125d9
changes/01/507401/19
Moshe Levi 4 years ago
committed by waleed mousa
parent
commit
f3f1437cb2
  1. 24
      environments/neutron-ovs-hw-offload.yaml
  2. 7
      puppet/services/neutron-ovs-agent.yaml
  3. 6
      releasenotes/notes/ovs-hw-offload-a6bf0fa9c39a8204.yaml

24
environments/neutron-ovs-hw-offload.yaml

@ -0,0 +1,24 @@
# A Heat environment file that enables OVS Hardware Offload in the overcloud.
# This works by configuring SR-IOV NIC with switchdev and OVS Hardware Offload on
# compute nodes. The feature supported in OVS 2.8.0
resource_registry:
OS::TripleO::Services::NeutronSriovHostConfig: ../puppet/services/neutron-sriov-host-config.yaml
parameter_defaults:
NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','RamFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter']
NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"]
# Kernel arguments for ComputeSriov node
ComputeSriovParameters:
KernelArgs: "intel_iommu=on iommu=pt"
OvsHwOffload: True
# Number of VFs that needs to be configured for a physical interface
#NeutronSriovNumVFs: ["ens3f0:4:switchdev"]
# Mapping of SR-IOV PF interface to neutron physical_network.
# In case of Vxlan/GRE physical_network should be null.
# In case of flat/vlan the physical_network should as configured in neutron.
#NovaPCIPassthrough:
# - devname: "ens3f0"
# physical_network: null

7
puppet/services/neutron-ovs-agent.yaml

@ -78,6 +78,11 @@ parameters:
default:
tag: openstack.neutron.agent.openvswitch
path: /var/log/neutron/openvswitch-agent.log
OvsHwOffload:
default: false
description: |
Enable OVS Hardware Offload. This feature supported from OVS 2.8.0
type: boolean
conditions:
no_firewall_driver: {equals : [{get_param: NeutronOVSFirewallDriver}, '']}
@ -111,9 +116,11 @@ resources:
map_replace:
- map_replace:
- neutron::agents::ml2::ovs::bridge_mappings: NeutronBridgeMappings
vswitch::ovs::enable_hw_offload: OvsHwOffload
- values: {get_param: [RoleParameters]}
- values:
NeutronBridgeMappings: {get_param: NeutronBridgeMappings}
OvsHwOffload: {get_param: OvsHwOffload}
outputs:
role_data:

6
releasenotes/notes/ovs-hw-offload-a6bf0fa9c39a8204.yaml

@ -0,0 +1,6 @@
---
features:
- Add support for OVS Hardware Offload.
This feature requires Linux Kernel >= 4.13
Open vSwitch >= 2.8 iproute >= 4.12.
Loading…
Cancel
Save