Merge "Provide DPDK nic configs and add multiqueue config"

This commit is contained in:
Jenkins 2017-10-10 13:42:03 +00:00 committed by Gerrit Code Review
commit 25869578f8
3 changed files with 78 additions and 52 deletions

View File

@ -0,0 +1,15 @@
# This template configures each role to use a pair of bonded nics (nic2 and
# nic3) and configures an IP address on each relevant isolated network
# for each role. The nic4 and nic5 are configured for dpdkbond and a provider
# network shall be associated with it. This template assumes use of
# network-isolation.yaml.
#
# FIXME: if/when we add functionality to heatclient to include heat
# environment files we should think about using it here to automatically
# include network-isolation.yaml.
resource_registry:
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/cinder-storage.yaml
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute-dpdk.yaml
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller.yaml
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml

View File

@ -36,3 +36,4 @@ parameter_defaults:
# threads to be spawned, which may improve dataplane performance.
#NovaVcpuPinSet: "" # Cores to pin Nova instances to. For maximum performance, select cores
# on the same NUMA node(s) selected for previous settings.
#NumDpdkInterfaceRxQueues: 1

View File

@ -1,6 +1,6 @@
heat_template_version: pike
description: >
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for the compute role.
Software Config to drive os-net-config with OVS-DPDK bond in addition to the 2 bonded NICs with VLANs attached for the compute role.
parameters:
ControlPlaneIp:
default: ''
@ -32,9 +32,8 @@ parameters:
type: string
BondInterfaceOvsOptions:
default: ''
description: 'The ovs_options or bonding_options string for the bond
interface. Set things like lacp=active and/or bond_mode=balance-slb
for OVS bonds or like mode=4 for Linux bonds using this option.'
description: The bonding_options string for the bond interface. Set things like lacp=active and/or bond_mode=balance-slb using
this option. The default mode is active-backup.
type: string
ExternalNetworkVlanID:
default: 10
@ -82,6 +81,10 @@ parameters:
EC2MetadataIp: # Override this via parameter_defaults
description: The IP address of the EC2 metadata server.
type: string
NumDpdkInterfaceRxQueues:
description: Number of Rx Queues required for DPDK bond or DPDK ports
default: 1
type: number
resources:
OsNetConfigImpl:
type: OS::Heat::SoftwareConfig
@ -112,59 +115,66 @@ resources:
- default: true
next_hop:
get_param: ControlPlaneDefaultRoute
- type: ovs_bridge
name: bridge_name
- type: linux_bond
name: bond_api
bonding_options:
get_param: BondInterfaceOvsOptions
use_dhcp: false
dns_servers:
get_param: DnsServers
members:
- type: ovs_bond
name: bond1
ovs_options:
get_param: BondInterfaceOvsOptions
members:
- type: interface
name: nic2
primary: true
- type: interface
name: nic3
- type: vlan
device: bond1
vlan_id:
get_param: InternalApiNetworkVlanID
addresses:
- ip_netmask:
get_param: InternalApiIpSubnet
- type: vlan
device: bond1
vlan_id:
get_param: StorageNetworkVlanID
addresses:
- ip_netmask:
get_param: StorageIpSubnet
- type: vlan
device: bond1
vlan_id:
get_param: TenantNetworkVlanID
addresses:
- ip_netmask:
get_param: TenantIpSubnet
# Uncomment when including environments/network-management.yaml
# If setting default route on the Management interface, comment
# out the default route on the Control Plane.
#-
# type: vlan
# device: bond1
# vlan_id: {get_param: ManagementNetworkVlanID}
# addresses:
# -
# ip_netmask: {get_param: ManagementIpSubnet}
# routes:
# -
# default: true
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
- type: interface
name: nic2
primary: true
- type: interface
name: nic3
- type: vlan
device: bond_api
vlan_id:
get_param: InternalApiNetworkVlanID
addresses:
- ip_netmask:
get_param: InternalApiIpSubnet
- type: vlan
device: bond_api
vlan_id:
get_param: StorageNetworkVlanID
addresses:
- ip_netmask:
get_param: StorageIpSubnet
- type: vlan
device: bond_api
vlan_id:
get_param: TenantNetworkVlanID
addresses:
- ip_netmask:
get_param: TenantIpSubnet
# Uncomment when including environments/network-management.yaml
# If setting default route on the Management interface, comment
# out the default route on the Control Plane.
#-
# type: vlan
# device: bond_api
# vlan_id:
# get_param: ManagementNetworkVlanID
# addresses:
# -
# ip_netmask:
# get_param: ManagementIpSubnet
# routes:
# -
# default: true
# next_hop:
# get_param: ManagementInterfaceDefaultRoute
# Used as a provider network with external DHCP
- type: ovs_user_bridge
name: br-link
name: br-dpdk0
members:
- type: ovs_dpdk_bond
name: dpdkbond0
rx_queue:
get_param: NumDpdkInterfaceRxQueues
members:
- type: ovs_dpdk_port
name: dpdk0