tripleo-heat-templates/puppet/services/neutron-dhcp.yaml

54 lines
1.9 KiB
YAML

heat_template_version: 2016-04-08
description: >
OpenStack Neutron DHCP agent configured with Puppet
parameters:
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
NeutronEnableIsolatedMetadata:
default: 'False'
description: If True, DHCP provide metadata route to VM.
type: string
NeutronDnsmasqOptions:
default: 'dhcp-option-force=26,%MTU%'
description: >
Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU
to be set to the value of NeutronTenantMtu, which should be set to account
for tunnel overhead.
type: string
NeutronTenantMtu:
description: >
The default MTU for tenant networks. For VXLAN/GRE tunneling, this should
be at least 50 bytes smaller than the MTU on the physical network. This
value will be used to set the MTU on the virtual Ethernet device.
This value will be used to construct the NeutronDnsmasqOptions, since that
will determine the MTU that is assigned to the VM host through DHCP.
default: "1400"
type: string
resources:
NeutronBase:
type: ./neutron-base.yaml
outputs:
role_data:
description: Role data for the Neutron DHCP agent service.
value:
config_settings:
map_merge:
- get_attr: [NeutronBase, role_data, config_settings]
- neutron::agents::dhcp::dnsmasq_config_file: /etc/neutron/dnsmasq-neutron.conf
tripleo::profile::base::neutron::dhcp:
str_replace:
template: {get_param: NeutronDnsmasqOptions}
params:
'%MTU%': {get_param: NeutronTenantMtu}
neutron::agents::dhcp::enable_isolated_metadata: {get_param: NeutronEnableIsolatedMetadata}
step_config: |
include tripleo::profile::base::neutron::dhcp