Add networking-vpp ML2 mechanism driver support

Implements: blueprint fdio-integration-tripleo

Change-Id: I412f7a887ca4b95bcf1314e8c54cb1e7d03b1e41
Signed-off-by: Feng Pan <fpan@redhat.com>
This commit is contained in:
Feng Pan 2017-04-09 22:17:58 -04:00
parent 2bc62ed305
commit 59fedd3d53
6 changed files with 77 additions and 0 deletions

View File

@ -32,5 +32,6 @@ parameter_defaults:
- OS::TripleO::Services::Collectd
- OS::TripleO::Services::CephOSD
- OS::TripleO::Services::Vpp
- OS::TripleO::Services::NeutronVppAgent
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::Docker

View File

@ -0,0 +1,22 @@
# Environment file used to enable networking-vpp ML2 mechanism driver
resource_registry:
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::NeutronVppAgent: ../puppet/services/neutron-vpp-agent.yaml
OS::TripleO::Services::Etcd: ../puppet/services/etcd.yaml
OS::TripleO::Services::Vpp: ../puppet/services/vpp.yaml
parameter_defaults:
#Comma delimited list of <physical_network>:<VPP Interface>.
#Example: "datacentre:GigabitEthernet2/2/0"
#NeutronVPPAgentPhysnets: ""
NeutronMechanismDrivers: vpp
NeutronNetworkType: vlan
NeutronServicePlugins: router
NeutronTypeDrivers: vlan,flat
ExtraConfig:
# Use Linux Bridge driver for DHCP and L3 agent.
neutron::agents::dhcp::interface_driver: "neutron.agent.linux.interface.BridgeInterfaceDriver"
neutron::agents::l3::interface_driver: "neutron.agent.linux.interface.BridgeInterfaceDriver"

View File

@ -252,6 +252,7 @@ resource_registry:
OS::TripleO::Services::OctaviaWorker: OS::Heat::None
OS::TripleO::Services::MySQLClient: puppet/services/database/mysql-client.yaml
OS::TripleO::Services::Vpp: OS::Heat::None
OS::TripleO::Services::NeutronVppAgent: OS::Heat::None
OS::TripleO::Services::Docker: OS::Heat::None
OS::TripleO::Services::CertmongerUser: OS::Heat::None

View File

@ -0,0 +1,48 @@
heat_template_version: ocata
description: >
OpenStack Neutron ML2/VPP 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
NeutronVPPAgentPhysnets:
description: >
List of <physical_network>:<VPP Interface>
Example: "physnet1:GigabitEthernet2/2/0,physnet2:GigabitEthernet2/3/0"
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 ML2/VPP agent service.
value:
service_name: neutron_vpp_agent
config_settings:
map_merge:
- get_attr: [NeutronBase, role_data, config_settings]
- tripleo::profile::base::neutron::agents::vpp::physnet_mapping: {get_param: NeutronVPPAgentPhysnets}
step_config: |
include ::tripleo::profile::base::neutron::agents::vpp

View File

@ -0,0 +1,3 @@
---
features:
- Adds support for networking-vpp ML2 mechanism driver and agent.

View File

@ -129,6 +129,7 @@
- OS::TripleO::Services::OctaviaHousekeeping
- OS::TripleO::Services::OctaviaWorker
- OS::TripleO::Services::Vpp
- OS::TripleO::Services::NeutronVppAgent
- OS::TripleO::Services::Docker
- name: Compute
@ -162,6 +163,7 @@
- OS::TripleO::Services::AuditD
- OS::TripleO::Services::Collectd
- OS::TripleO::Services::Vpp
- OS::TripleO::Services::NeutronVppAgent
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::Docker