diff --git a/packstack/plugins/neutron_350.py b/packstack/plugins/neutron_350.py index 15a6d5871..55ca653db 100644 --- a/packstack/plugins/neutron_350.py +++ b/packstack/plugins/neutron_350.py @@ -845,7 +845,10 @@ def create_dhcp_manifests(config, messages): for host in network_hosts: config["CONFIG_NEUTRON_DHCP_HOST"] = host config['CONFIG_NEUTRON_DHCP_INTERFACE_DRIVER'] = get_if_driver(config) - manifest_data = getManifestTemplate("neutron_dhcp.pp") + if use_openvswitch_vxlan(config) or use_openvswitch_gre(config): + manifest_data = getManifestTemplate("neutron_dhcp_mtu.pp") + else: + manifest_data = getManifestTemplate("neutron_dhcp.pp") manifest_file = "%s_neutron.pp" % (host,) # Firewall Rules for dhcp in fw_details = dict() diff --git a/packstack/puppet/templates/neutron_dhcp_mtu.pp b/packstack/puppet/templates/neutron_dhcp_mtu.pp new file mode 100644 index 000000000..c89313fe8 --- /dev/null +++ b/packstack/puppet/templates/neutron_dhcp_mtu.pp @@ -0,0 +1,14 @@ +class { 'neutron::agents::dhcp': + interface_driver => hiera('CONFIG_NEUTRON_DHCP_INTERFACE_DRIVER'), + debug => hiera('CONFIG_DEBUG_MODE'), + dnsmasq_config_file => '/etc/neutron/dnsmasq-neutron.conf', + require => File['/etc/neutron/dnsmasq-neutron.conf'], +} + +file { '/etc/neutron/dnsmasq-neutron.conf': + content => 'dhcp-option-force=26,1400', + owner => 'root', + group => 'neutron', + mode => '0640', +} +