| {%- 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 %} |