tripleo-heat-templates/puppet/services/neutron-sriov-agent.yaml
Brent Eagles c4970316f7 Add base neutron service configuration
Include the neutron-base service definition to align pull in common
configurations. This might not be *absolutely* necessary as any required
common configuration would likely already be added by and OVS agent
service, etc. but it's better to be safe than sorry and it does keep
things consistent across the Neutron services.

Implements: blueprint tripleo-sriov
Change-Id: I10a9d9b29760475e6cd75e4057051c75a52ffbb7
2016-09-07 15:28:11 +05:30

70 lines
2.4 KiB
YAML

heat_template_version: 2016-04-08
description: >
OpenStack Neutron SR-IOV nic agent configured with Puppet
parameters:
ServiceNetMap:
default: {}
description: >
Mapping of service_name -> network name. Typically set via
parameter_defaults in the resource registry. This mapping overrides those
in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
NeutronPhysicalDevMappings:
description: >
List of <physical_network>:<physical device>
All physical networks listed in network_vlan_ranges
on the server should have mappings to appropriate
interfaces on each agent.
type: comma_delimited_list
default: ""
NeutronExcludeDevices:
description: >
List of <network_device>:<excluded_devices> mapping
network_device to the agent's node-specific list of virtual functions
that should not be used for virtual networking. excluded_devices is a
semicolon separated list of virtual functions to exclude from
network_device. The network_device in the mapping should appear in the
physical_device_mappings list.
type: comma_delimited_list
default: ""
NeutronSriovNumVFs:
description: >
Provide the list of VFs to be reserved for each SR-IOV interface.
Format "<interface_name1>:<numvfs1>","<interface_name2>:<numvfs2>"
Example "eth1:4096","eth2:128"
type: comma_delimited_list
default: ""
resources:
NeutronBase:
type: ./neutron-base.yaml
properties:
ServiceNetMap: {get_param: ServiceNetMap}
DefaultPasswords: {get_param: DefaultPasswords}
EndpointMap: {get_param: EndpointMap}
outputs:
role_data:
description: Role data for the Neutron SR-IOV nic agent service.
value:
service_name: neutron_sriov_agent
config_settings:
map_merge:
- get_attr: [NeutronBase, role_data, config_settings]
- neutron::agents::ml2::sriov::physical_device_mappings: {get_param: NeutronPhysicalDevMappings}
neutron::agents::ml2::sriov::exclude_devices: {get_param: NeutronExcludeDevices}
tripleo::host::sriov::number_of_vfs: {get_param: NeutronSriovNumVFs}
step_config: |
include ::tripleo::profile::base::neutron::sriov