15 changed files with 159 additions and 30 deletions
@ -0,0 +1,66 @@
|
||||
heat_template_version: queens |
||||
|
||||
description: > |
||||
Containerized LBaaS Service Plugin |
||||
|
||||
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 |
||||
DockerNeutronConfigImage: |
||||
description: The container image to use for the neutron config_volume |
||||
type: string |
||||
|
||||
resources: |
||||
|
||||
ContainersCommon: |
||||
type: ./containers-common.yaml |
||||
|
||||
NeutronLbaasBase: |
||||
type: ../../puppet/services/neutron-lbaas-api.yaml |
||||
properties: |
||||
EndpointMap: {get_param: EndpointMap} |
||||
ServiceData: {get_param: ServiceData} |
||||
ServiceNetMap: {get_param: ServiceNetMap} |
||||
DefaultPasswords: {get_param: DefaultPasswords} |
||||
RoleName: {get_param: RoleName} |
||||
RoleParameters: {get_param: RoleParameters} |
||||
|
||||
outputs: |
||||
role_data: |
||||
description: Role data for the LBaaS role. |
||||
value: |
||||
service_name: {get_attr: [NeutronLbaasBase, role_data, service_name]} |
||||
config_settings: {get_attr: [NeutronLbaasBase, role_data, config_settings]} |
||||
service_config_settings: {get_attr: [NeutronLbaasBase, role_data, service_config_settings]} |
||||
puppet_config: |
||||
config_volume: 'neutron' |
||||
puppet_tags: neutron_lbaas_service_config |
||||
step_config: |
||||
get_attr: [NeutronLbaasBase, role_data, step_config] |
||||
config_image: {get_param: DockerNeutronConfigImage} |
||||
kolla_config: {} |
||||
docker_config: {} |
@ -0,0 +1,19 @@
|
||||
# A Heat environment file that can be used to deploy Neutron LBaaSv2 service |
||||
# |
||||
# Currently there are only two interface drivers for Neutron LBaaSv2 |
||||
# The default option is the standard OVS driver the other option is to be used |
||||
# when linux bridges are used instead of OVS |
||||
# In order to enable other backend, replace the content of NeutronLbaasInterfaceDriver |
||||
# |
||||
# - OVS: neutron.agent.linux.interface.OVSInterfaceDriver |
||||
# - LinuxBridges: neutron.agent.linux.interface.BridgeInterfaceDriver |
||||
resource_registry: |
||||
OS::TripleO::Services::NeutronLbaasv2Agent: ../../puppet/services/neutron-lbaas-agent.yaml |
||||
OS::TripleO::Services::NeutronLbaasv2Api: ../../puppet/services/neutron-lbaas-api.yaml |
||||
|
||||
parameter_defaults: |
||||
NeutronLbaasInterfaceDriver: "neutron.agent.linux.interface.OVSInterfaceDriver" |
||||
NeutronLbaasDeviceDriver: "neutron_lbaas.drivers.haproxy.namespace_driver.HaproxyNSDriver" |
||||
NeutronServiceProviders: ['LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default'] |
||||
NeutronServicePlugins: "qos,router,trunk,lbaasv2" |
||||
NeutronLbaasOvsUseVeth: false |
@ -0,0 +1,56 @@
|
||||
heat_template_version: queens |
||||
|
||||
description: > |
||||
Neutron LBaaS service plugin 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 |
||||
NeutronServiceProviders: |
||||
default: 'LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default' |
||||
description: Global list of service providers used by neutron. This |
||||
list should be passed in to ensure all service |
||||
providers desired by the user are included. The |
||||
provided default value only set the provider for the LBaaSv2 |
||||
subsystem.This is currently incompatible with enabling |
||||
octavia-api as one service or the other will break because the defaults are different. |
||||
type: comma_delimited_list |
||||
|
||||
|
||||
outputs: |
||||
role_data: |
||||
description: Role data for the Neutron LBaaS role. |
||||
value: |
||||
service_name: neutron_lbaas_api |
||||
step_config: | |
||||
include ::tripleo::profile::base::neutron::lbaas |
||||
service_config_settings: |
||||
neutron_api: |
||||
neutron::server::service_providers: {get_param: NeutronServiceProviders} |
||||
horizon: |
||||
horizon::neutron_options: |
||||
enable_lb: True |
@ -0,0 +1,5 @@
|
||||
--- |
||||
features: |
||||
- | |
||||
Add support for Neutron LBaaSV2 service plugin in a containerized |
||||
deployment. |
Loading…
Reference in new issue