blob: dab89add562b976bf3aa05364fc055888b916b2a [file] [log] [blame]
{%- if pillar.neutron.gateway is defined %}
{%- from "neutron/map.jinja" import gateway as neutron with context %}
{%- else %}
{%- from "neutron/map.jinja" import compute as neutron with context %}
{%- endif %}
[DEFAULT]
#
# From neutron.base.agent
#
# Name of Open vSwitch bridge to use (string value)
#ovs_integration_bridge = br-int
{%- if neutron.get('agents', {}).get('dhcp', {}).ovs_integration_bridge is defined %}
ovs_integration_bridge = {{ neutron.agents.dhcp.ovs_integration_bridge }}
{%- endif %}
# Uses veth for an OVS interface or not. Support kernels with limited namespace
# support (e.g. RHEL 6.5) and rate limiting on router's gateway port so long as
# ovs_use_veth is set to True. (boolean value)
#ovs_use_veth = false
{%- if neutron.get('agents', {}).get('dhcp', {}).ovs_use_veth is defined %}
ovs_use_veth = {{ neutron.agents.dhcp.ovs_use_veth }}
{%- endif %}
# The driver used to manage the virtual interface. (string value)
#interface_driver = <None>
{%- if neutron.get('agents', {}).get('dhcp', {}).interface_driver is defined %}
interface_driver = {{ neutron.agents.dhcp.interface_driver }}
{%- else %}
interface_driver = openvswitch
{%- endif %}
#
# From neutron.dhcp.agent
#
# The DHCP agent will resync its state with Neutron to recover from any
# transient notification or RPC errors. The interval is number of seconds
# between attempts. (integer value)
#resync_interval = 5
{%- if neutron.get('agents', {}).get('dhcp', {}).resync_interval is defined %}
resync_interval = {{ neutron.agents.dhcp.resync_interval }}
{%- else %}
resync_interval = 30
{%- endif %}
# The driver used to manage the DHCP server. (string value)
#dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
{%- if neutron.get('agents', {}).get('dhcp', {}).dhcp_driver is defined %}
dhcp_driver = {{ neutron.agents.dhcp.dhcp_driver }}
{%- endif %}
# The DHCP server can assist with providing metadata support on isolated
# networks. Setting this value to True will cause the DHCP server to append
# specific host routes to the DHCP request. The metadata service will only be
# activated when the subnet does not contain any router port. The guest
# instance must be configured to request host routes via DHCP (Option 121).
# This option doesn't have any effect when force_metadata is set to True.
# (boolean value)
#enable_isolated_metadata = false
{%- if neutron.get('agents', {}).get('dhcp', {}).enable_isolated_metadata is defined %}
enable_isolated_metadata = {{ neutron.agents.dhcp.enable_isolated_metadata }}
{%- else %}
enable_isolated_metadata = True
{%- endif %}
# In some cases the Neutron router is not present to provide the metadata IP
# but the DHCP server can be used to provide this info. Setting this value will
# force the DHCP server to append specific host routes to the DHCP request. If
# this option is set, then the metadata service will be activated for all the
# networks. (boolean value)
#force_metadata = false
{%- if neutron.get('agents', {}).get('dhcp', {}).force_metadata is defined %}
force_metadata = {{ neutron.agents.dhcp.force_metadata }}
{%- elif neutron.backend.router is defined %}
force_metadata = True
{%- endif %}
# Allows for serving metadata requests coming from a dedicated metadata access
# network whose CIDR is 169.254.169.254/16 (or larger prefix), and is connected
# to a Neutron router from which the VMs send metadata:1 request. In this case
# DHCP Option 121 will not be injected in VMs, as they will be able to reach
# 169.254.169.254 through a router. This option requires
# enable_isolated_metadata = True. (boolean value)
#enable_metadata_network = false
{%- if neutron.get('agents', {}).get('dhcp', {}).enable_metadata_network is defined %}
enable_metadata_network = {{ neutron.agents.dhcp.enable_metadata_network }}
{%- else %}
enable_metadata_network = False
{%- endif %}
# Number of threads to use during sync process. Should not exceed connection
# pool size configured on server. (integer value)
#num_sync_threads = 4
{%- if neutron.get('agents', {}).get('dhcp', {}).num_sync_threads is defined %}
num_sync_threads = {{ neutron.agents.dhcp.num_sync_threads }}
{%- endif %}
# Location to store DHCP server config files. (string value)
#dhcp_confs = $state_path/dhcp
{%- if neutron.get('agents', {}).get('dhcp', {}).dhcp_confs is defined %}
dhcp_confs = {{ neutron.agents.dhcp.dhcp_confs }}
{%- endif %}
# Override the default dnsmasq settings with this file. (string value)
#dnsmasq_config_file =
{%- if neutron.get('agents', {}).get('dhcp', {}).dnsmasq_config_file is defined %}
dnsmasq_config_file = {{ neutron.agents.dhcp.dnsmasq_config_file }}
{%- endif %}
# Comma-separated list of the DNS servers which will be used as forwarders.
# (list value)
#dnsmasq_dns_servers =
# Base log dir for dnsmasq logging. The log contains DHCP and DNS log
# information and is useful for debugging issues with either DHCP or DNS. If
# this section is null, disable dnsmasq log. (string value)
#dnsmasq_base_log_dir = <None>
{%- if neutron.get('agents', {}).get('dhcp', {}).dnsmasq_base_log_dir is defined %}
dnsmasq_base_log_dir = {{ neutron.agents.dhcp.dnsmasq_base_log_dir }}
{%- endif %}
# Enables the dnsmasq service to provide name resolution for instances via DNS
# resolvers on the host running the DHCP agent. Effectively removes the '--no-
# resolv' option from the dnsmasq process arguments. Adding custom DNS
# resolvers to the 'dnsmasq_dns_servers' option disables this feature. (boolean
# value)
#dnsmasq_local_resolv = false
{%- if neutron.get('agents', {}).get('dhcp', {}).dnsmasq_local_resolv is defined %}
dnsmasq_local_resolv = {{ neutron.agents.dhcp.dnsmasq_local_resolv }}
{%- endif %}
# Limit number of leases to prevent a denial-of-service. (integer value)
#dnsmasq_lease_max = 16777216
{%- if neutron.get('agents', {}).get('dhcp', {}).dnsmasq_lease_max is defined %}
dnsmasq_lease_max = {{ neutron.agents.dhcp.dnsmasq_lease_max }}
{%- endif %}
# Use broadcast in DHCP replies. (boolean value)
#dhcp_broadcast_reply = false
{%- if neutron.get('agents', {}).get('dhcp', {}).dhcp_broadcast_reply is defined %}
dhcp_broadcast_reply = {{ neutron.agents.dhcp.dhcp_broadcast_reply }}
{%- endif %}
{%- if neutron.logging is defined %}
{%- set _data = neutron.logging %}
{%- include "oslo_templates/files/queens/oslo/_log.conf" %}
{%- endif %}
[agent]
#
# From neutron.az.agent
#
# Availability zone of this node (string value)
#availability_zone = nova
{%- if neutron.get('agents', {}).get('dhcp', {}).get('agent', {}).availability_zone is defined %}
availability_zone = {{ neutron.agents.dhcp.agent.availability_zone }}
{%- endif %}
#
# From neutron.base.agent
#
# Seconds between nodes reporting state to server; should be less than
# agent_down_time, best if it is half or less than agent_down_time. (floating
# point value)
#report_interval = 30
{%- if neutron.get('agents', {}).get('dhcp', {}).get('agent', {}).report_interval is defined %}
report_interval = {{ neutron.agents.dhcp.agent.report_interval }}
{%- endif %}
# Log agent heartbeats (boolean value)
#log_agent_heartbeats = false
{%- if neutron.get('agents', {}).get('dhcp', {}).get('agent', {}).log_agent_heartbeats is defined %}
log_agent_heartbeats = {{ neutron.agents.dhcp.agent.log_agent_heartbeats }}
{%- endif %}
[ovs]
#
# From neutron.base.agent
#
# DEPRECATED: The interface for interacting with the OVSDB (string value)
# Possible values:
# native - <No description provided>
# vsctl - <No description provided>
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
#ovsdb_interface = native
# The connection string for the OVSDB backend. Will be used by ovsdb-client
# when monitoring and used for the all ovsdb commands when native
# ovsdb_interface is enabled (string value)
#ovsdb_connection = tcp:127.0.0.1:6640
# The SSL private key file to use when interacting with OVSDB. Required when
# using an "ssl:" prefixed ovsdb_connection (string value)
#ssl_key_file = <None>
# The SSL certificate file to use when interacting with OVSDB. Required when
# using an "ssl:" prefixed ovsdb_connection (string value)
#ssl_cert_file = <None>
# The Certificate Authority (CA) certificate to use when interacting with
# OVSDB. Required when using an "ssl:" prefixed ovsdb_connection (string
# value)
#ssl_ca_cert_file = <None>
# Timeout in seconds for ovsdb commands. If the timeout expires, ovsdb commands
# will fail with ALARMCLOCK error. (integer value)
# Deprecated group/name - [DEFAULT]/ovs_vsctl_timeout
#ovsdb_timeout = 10
{%- if neutron.get('configmap', {}).dhcp_agent is defined %}
{%- set _data = neutron.configmap.dhcp_agent %}
{%- include "oslo_templates/files/configmap/configmap.conf" %}
{%- endif %}