2016-12-23 11:43:39 +00:00
|
|
|
heat_template_version: ocata
|
2016-04-20 14:22:27 -04:00
|
|
|
|
|
|
|
description: >
|
|
|
|
OpenStack Neutron OVS agent configured with Puppet
|
|
|
|
|
|
|
|
parameters:
|
2016-08-11 23:07:46 +02:00
|
|
|
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
|
2016-08-17 09:26:05 -04:00
|
|
|
DefaultPasswords:
|
|
|
|
default: {}
|
|
|
|
type: json
|
2016-04-20 14:22:27 -04:00
|
|
|
EndpointMap:
|
|
|
|
default: {}
|
|
|
|
description: Mapping of service endpoint -> protocol. Typically set
|
|
|
|
via parameter_defaults in the resource registry.
|
|
|
|
type: json
|
|
|
|
NeutronEnableL2Pop:
|
|
|
|
type: string
|
|
|
|
description: >
|
|
|
|
Enable/disable the L2 population feature in the Neutron agents.
|
|
|
|
default: "False"
|
|
|
|
NeutronBridgeMappings:
|
|
|
|
description: >
|
|
|
|
The OVS logical->physical bridge mappings to use. See the Neutron
|
|
|
|
documentation for details. Defaults to mapping br-ex - the external
|
|
|
|
bridge on hosts - to a physical name 'datacentre' which can be used
|
|
|
|
to create provider networks (and we use this for the default floating
|
|
|
|
network) - if changing this either use different post-install network
|
|
|
|
scripts or be sure to keep 'datacentre' as a mapping network name.
|
|
|
|
type: comma_delimited_list
|
|
|
|
default: "datacentre:br-ex"
|
|
|
|
NeutronTunnelTypes:
|
|
|
|
default: 'vxlan'
|
|
|
|
description: |
|
|
|
|
The tunnel types for the Neutron tenant network.
|
|
|
|
type: comma_delimited_list
|
|
|
|
NeutronAgentExtensions:
|
|
|
|
default: "qos"
|
|
|
|
description: |
|
|
|
|
Comma-separated list of extensions enabled for the Neutron agents.
|
|
|
|
type: comma_delimited_list
|
2016-06-21 11:08:27 -02:30
|
|
|
NeutronEnableDVR:
|
|
|
|
default: False
|
|
|
|
description: |
|
|
|
|
Enable support for distributed routing in the OVS Agent.
|
|
|
|
type: boolean
|
2016-08-24 15:26:46 -02:30
|
|
|
NeutronEnableARPResponder:
|
|
|
|
default: false
|
|
|
|
description: |
|
|
|
|
Enable ARP responder feature in the OVS Agent.
|
|
|
|
type: boolean
|
2016-06-09 15:39:22 +02:00
|
|
|
MonitoringSubscriptionNeutronOvs:
|
|
|
|
default: 'overcloud-neutron-ovs-agent'
|
|
|
|
type: string
|
2016-08-18 19:03:30 -02:30
|
|
|
NeutronOVSFirewallDriver:
|
|
|
|
default: ''
|
|
|
|
description: |
|
|
|
|
Configure the classname of the firewall driver to use for implementing
|
|
|
|
security groups. Possible values depend on system configuration. Some
|
|
|
|
examples are: noop, openvswitch, iptables_hybrid. The default value of an
|
|
|
|
empty string will result in a default supported configuration.
|
|
|
|
type: string
|
2016-08-09 16:20:18 -04:00
|
|
|
NeutronOpenVswitchAgentLoggingSource:
|
|
|
|
type: json
|
|
|
|
default:
|
|
|
|
tag: openstack.neutron.agent.openvswitch
|
|
|
|
path: /var/log/neutron/openvswitch-agent.log
|
2016-04-20 14:22:27 -04:00
|
|
|
|
2017-01-16 17:12:54 -03:30
|
|
|
conditions:
|
|
|
|
no_firewall_driver: {equals : [{get_param: NeutronOVSFirewallDriver}, '']}
|
|
|
|
|
2016-04-20 14:22:27 -04:00
|
|
|
resources:
|
|
|
|
|
|
|
|
NeutronBase:
|
|
|
|
type: ./neutron-base.yaml
|
2016-08-11 23:07:46 +02:00
|
|
|
properties:
|
|
|
|
ServiceNetMap: {get_param: ServiceNetMap}
|
2016-08-17 09:26:05 -04:00
|
|
|
DefaultPasswords: {get_param: DefaultPasswords}
|
2016-08-11 23:07:46 +02:00
|
|
|
EndpointMap: {get_param: EndpointMap}
|
2016-04-20 14:22:27 -04:00
|
|
|
|
|
|
|
outputs:
|
|
|
|
role_data:
|
|
|
|
description: Role data for the Neutron OVS agent service.
|
|
|
|
value:
|
2016-07-28 10:30:10 +01:00
|
|
|
service_name: neutron_ovs_agent
|
2016-06-09 15:39:22 +02:00
|
|
|
monitoring_subscription: {get_param: MonitoringSubscriptionNeutronOvs}
|
2016-08-09 16:20:18 -04:00
|
|
|
logging_source: {get_param: NeutronOpenVswitchAgentLoggingSource}
|
|
|
|
logging_groups:
|
|
|
|
- neutron
|
2016-04-20 14:22:27 -04:00
|
|
|
config_settings:
|
|
|
|
map_merge:
|
|
|
|
- get_attr: [NeutronBase, role_data, config_settings]
|
2016-09-07 16:19:51 +05:30
|
|
|
- neutron::agents::ml2::ovs::l2_population: {get_param: NeutronEnableL2Pop}
|
2016-06-21 11:08:27 -02:30
|
|
|
neutron::agents::ml2::ovs::enable_distributed_routing: {get_param: NeutronEnableDVR}
|
2016-08-24 15:26:46 -02:30
|
|
|
neutron::agents::ml2::ovs::arp_responder: {get_param: NeutronEnableARPResponder}
|
2016-10-10 21:09:01 -04:00
|
|
|
neutron::agents::ml2::ovs::bridge_mappings: {get_param: NeutronBridgeMappings}
|
|
|
|
neutron::agents::ml2::ovs::tunnel_types: {get_param: NeutronTunnelTypes}
|
|
|
|
neutron::agents::ml2::ovs::extensions: {get_param: NeutronAgentExtensions}
|
2016-08-24 11:03:09 -04:00
|
|
|
# NOTE: bind IP is found in Heat replacing the network name with the
|
|
|
|
# local node IP for the given network; replacement examples
|
|
|
|
# (eg. for internal_api):
|
|
|
|
# internal_api -> IP
|
|
|
|
# internal_api_uri -> [IP]
|
|
|
|
# internal_api_subnet - > IP/CIDR
|
|
|
|
neutron::agents::ml2::ovs::local_ip: {get_param: [ServiceNetMap, NeutronTenantNetwork]}
|
2016-10-06 11:18:14 -04:00
|
|
|
tripleo.neutron_ovs_agent.firewall_rules:
|
|
|
|
'118 neutron vxlan networks':
|
|
|
|
proto: 'udp'
|
|
|
|
dport: 4789
|
|
|
|
'136 neutron gre networks':
|
|
|
|
proto: 'gre'
|
2017-01-16 17:12:54 -03:30
|
|
|
-
|
|
|
|
if:
|
|
|
|
- no_firewall_driver
|
|
|
|
- {}
|
|
|
|
- neutron::agents::ml2::ovs::firewall_driver: {get_param: NeutronOVSFirewallDriver}
|
2016-04-20 14:22:27 -04:00
|
|
|
step_config: |
|
|
|
|
include ::tripleo::profile::base::neutron::ovs
|
2016-12-01 10:03:30 +00:00
|
|
|
upgrade_tasks:
|
2017-02-27 13:04:08 -05:00
|
|
|
- name: Check if neutron_ovs_agent is deployed
|
|
|
|
command: systemctl is-enabled neutron-openvswitch-agent
|
|
|
|
tags: common
|
|
|
|
ignore_errors: True
|
|
|
|
register: neutron_ovs_agent_enabled
|
2016-12-23 16:07:44 +02:00
|
|
|
- name: "PreUpgrade step0,validation: Check service neutron-openvswitch-agent is running"
|
|
|
|
shell: /usr/bin/systemctl show 'neutron-openvswitch-agent' --property ActiveState | grep '\bactive\b'
|
2017-02-27 13:04:08 -05:00
|
|
|
when: neutron_ovs_agent_enabled.rc == 0
|
2016-12-23 16:07:44 +02:00
|
|
|
tags: step0,validation
|
2016-12-01 10:03:30 +00:00
|
|
|
- name: Stop neutron_ovs_agent service
|
2017-02-24 22:31:29 +01:00
|
|
|
tags: step1
|
2017-02-27 13:04:08 -05:00
|
|
|
when: neutron_ovs_agent_enabled.rc == 0
|
2016-12-01 10:03:30 +00:00
|
|
|
service: name=neutron-openvswitch-agent state=stopped
|