Browse Source

Add networking-sfc support

Enables deployment of service function chaining via the networking-sfc
project.

Implements: blueprint networking-sfc-support

Co-Authored-By: Bernard Cafarelli <bcafarel@redhat.com>
Change-Id: I230b31dc9ed0ecc5046064628ba2f2505e589522
Depends-On: Icd433ddc6ae7de19a09f9e33b410a362c317138a
changes/49/489749/7
Bernard Cafarelli 5 years ago committed by Tim Rozet
parent
commit
7059ca1316
  1. 5
      capabilities-map.yaml
  2. 18
      environments/neutron-sfc-opendaylight.yaml
  3. 6
      environments/neutron-sfc.yaml
  4. 1
      overcloud-resource-registry-puppet.j2.yaml
  5. 51
      puppet/services/neutron-sfc-api.yaml
  6. 4
      releasenotes/notes/add-networking-sfc-72cd16bb34075150.yaml
  7. 1
      roles/Controller.yaml
  8. 1
      roles/ControllerOpenstack.yaml
  9. 1
      roles_data.yaml

5
capabilities-map.yaml

@ -211,6 +211,11 @@ topics:
description: >
Enable various Neutron plugins and backends
environments:
- file: environments/neutron-sfc.yaml
title: Neutron SFC Service Plugin
description: Enables Neutron SFC Service Plugin
requires:
- overcloud-resource-registry-puppet.yaml
- file: environments/neutron-bgpvpn.yaml
title: Neutron BGPVPN Service Plugin
description: Enables Neutron BGPVPN Service Plugin

18
environments/neutron-sfc-opendaylight.yaml

@ -0,0 +1,18 @@
# A Heat environment file that can be used to deploy Neutron SFC service with OpenDaylight
resource_registry:
OS::TripleO::Services::NeutronSfcApi: ../puppet/services/neutron-sfc-api.yaml
OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None
OS::TripleO::Services::NeutronCorePlugin: ../puppet/services/neutron-plugin-ml2-odl.yaml
OS::TripleO::Services::OpenDaylightApi: ../puppet/services/opendaylight-api.yaml
OS::TripleO::Services::OpenDaylightOvs: ../puppet/services/opendaylight-ovs.yaml
OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
parameter_defaults:
NeutronEnableForceMetadata: true
NeutronMechanismDrivers: 'opendaylight_v2'
NeutronServicePlugins: 'odl-router_v2,trunk,flow_classifier,sfc'
OpenDaylightFeatures: ["odl-netvirt-sfc","odl-jolokia"]
NeutronSfcDriver: 'odl_v2'
NeutronFcDriver: 'odl_v2'

6
environments/neutron-sfc.yaml

@ -0,0 +1,6 @@
# A Heat environment file that can be used to deploy Neutron SFC service
resource_registry:
OS::TripleO::Services::NeutronSfcApi: ../puppet/services/neutron-sfc-api.yaml
parameter_defaults:
NeutronServicePlugins: 'flow_classifier,sfc'

1
overcloud-resource-registry-puppet.j2.yaml

@ -139,6 +139,7 @@ resource_registry:
OS::TripleO::Services::MySQL: puppet/services/database/mysql.yaml
OS::TripleO::Services::NeutronBgpVpnApi: OS::Heat::None
OS::TripleO::Services::NeutronBgpVpnBagpipe: OS::Heat::None
OS::TripleO::Services::NeutronSfcApi: OS::Heat::None
OS::TripleO::Services::NeutronDhcpAgent: puppet/services/neutron-dhcp.yaml
OS::TripleO::Services::NeutronL2gwApi: OS::Heat::None
OS::TripleO::Services::NeutronL3Agent: puppet/services/neutron-l3.yaml

51
puppet/services/neutron-sfc-api.yaml

@ -0,0 +1,51 @@
heat_template_version: pike
description: >
SFC API service configured with Puppet
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
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
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
NeutronSfcDriver:
default: 'dummy'
description: Default driver for Service Function Chaining
type: string
NeutronFcDriver:
default: 'dummy'
description: Default driver for Flow Classifier
type: string
outputs:
role_data:
description: Role data for the SFC role.
value:
service_name: neutron_sfc_api
config_settings:
neutron::services::sfc::sfc_driver: {get_param: NeutronSfcDriver}
neutron::services::sfc::fc_driver: {get_param: NeutronFcDriver}
step_config: |
include ::tripleo::profile::base::neutron::sfc

4
releasenotes/notes/add-networking-sfc-72cd16bb34075150.yaml

@ -0,0 +1,4 @@
---
features:
- Add support for deploying Service Function
Chaining api service with neutron networking-sfc.

1
roles/Controller.yaml

@ -96,6 +96,7 @@
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronApi
- OS::TripleO::Services::NeutronBgpVpnApi
- OS::TripleO::Services::NeutronSfcApi
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL2gwAgent

1
roles/ControllerOpenstack.yaml

@ -78,6 +78,7 @@
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronApi
- OS::TripleO::Services::NeutronBgpVpnApi
- OS::TripleO::Services::NeutronSfcApi
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronL2gwApi
- OS::TripleO::Services::NovaApi

1
roles_data.yaml

@ -99,6 +99,7 @@
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronApi
- OS::TripleO::Services::NeutronBgpVpnApi
- OS::TripleO::Services::NeutronSfcApi
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL2gwAgent

Loading…
Cancel
Save