diff options
author | Saravanan KR <skramaja@redhat.com> | 2016-07-18 14:38:40 +0530 |
---|---|---|
committer | Saravanan KR <skramaja@redhat.com> | 2016-08-25 12:10:18 +0530 |
commit | 301314e06c3f79cd8642cec8a904223236b8f7bc (patch) | |
tree | 5c70e1dc1022cebc35a7b2f229cc7f28320c1c64 /puppet | |
parent | 6c537d2005b8cb5b25f63722376fca08471987ac (diff) |
Added a new composable service for enabling DPDK on compute nodes.
ComputeNeutronOvsAgent should be overriden to neutron-ovs-dpdk-agent
service instead of neutron-ovs-agent (default) in order to enable
DPDK in OVS. This new service provides all the required parameters
for enabling DPDK with OVS (vswitch::dpdk).
Implements: blueprint tripleo-ovs-dpdk
Depends-On: I6cfd13d4979731696b09da52b2618fa33042403d
Change-Id: I538043b780a55006c54160cc7b33ddf52684ebf4
Diffstat (limited to 'puppet')
-rw-r--r-- | puppet/services/neutron-ovs-dpdk-agent.yaml | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/puppet/services/neutron-ovs-dpdk-agent.yaml b/puppet/services/neutron-ovs-dpdk-agent.yaml new file mode 100644 index 00000000..1f1e14ab --- /dev/null +++ b/puppet/services/neutron-ovs-dpdk-agent.yaml @@ -0,0 +1,73 @@ +heat_template_version: 2016-04-08 + +description: > + OpenStack Neutron OVS DPDK configured with Puppet for Compute Role + +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 + NeutronDpdkCoreList: + default: "" + description: List of cores to be used for DPDK Poll Mode Driver + type: string + NeutronDpdkMemoryChannels: + default: "" + description: Number of memory channels to be used for DPDK + type: string + NeutronDpdkSocketMemory: + default: "" + description: Memory allocated for each socket + type: string + NeutronDpdkDriverType: + default: "vfio-pci" + description: DPDK Driver type + type: string + # below parameters has to be set in neutron agent only for compute nodes. + # as of now there is no other usecase for these parameters except dpdk. + # should be moved to compute only ovs agent in case of any other usecases. + NeutronDatapathType: + default: "" + description: Datapath type for ovs bridges + type: string + NeutronVhostuserSocketDir: + default: "" + description: The vhost-user socket directory for OVS + type: string + +resources: + + NeutronOvsAgent: + type: ./neutron-ovs-agent.yaml + properties: + ServiceNetMap: {get_param: ServiceNetMap} + DefaultPasswords: {get_param: DefaultPasswords} + EndpointMap: {get_param: EndpointMap} + +outputs: + role_data: + description: Role data for the Neutron OVS DPDK Agent service. + value: + service_name: neutron_ovs_dpdk_agent + config_settings: + map_merge: + - get_attr: [NeutronOvsAgent, role_data, config_settings] + neutron::agents::ml2::ovs::enable_dpdk: true + neutron::agents::ml2::ovs::datapath_type: {get_param: NeutronDatapathType} + neutron::agents::ml2::ovs::vhostuser_socket_dir: {get_param: NeutronVhostuserSocketDir} + vswitch::dpdk::core_list: {get_param: NeutronDpdkCoreList} + vswitch::dpdk::memory_channels: {get_param: NeutronDpdkMemoryChannels} + vswitch::dpdk::socket_mem: {get_param: NeutronDpdkSocketMemory} + vswitch::dpdk::driver_type: {get_param: NeutronDpdkDriverType} + step_config: {get_attr: [NeutronOvsAgent, role_data, step_config]} |