blob: b93aaeb640e055cd01567e1f92316103bdb7aa60 [file] [log] [blame]
Jiri Broulik74f61112016-11-21 20:23:47 +01001{%- if pillar.neutron.gateway is defined %}
2{%- from "neutron/map.jinja" import gateway as neutron with context %}
3{%- else %}
4{%- from "neutron/map.jinja" import compute as neutron with context %}
5{%- endif %}
6
7[DEFAULT]
8
9#
10# From oslo.log
11#
12
13# If set to true, the logging level will be set to DEBUG instead of the default INFO level. (boolean value)
14#debug = false
15
16# If set to false, the logging level will be set to WARNING instead of the default INFO level. (boolean value)
17# This option is deprecated for removal.
18# Its value may be silently ignored in the future.
19#verbose = true
20
21# The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging
22# configuration files, see the Python logging module documentation. Note that when logging configuration files are used then all logging
23# configuration is set in the configuration file and other logging configuration options are ignored (for example,
24# logging_context_format_string). (string value)
25# Deprecated group/name - [DEFAULT]/log_config
26#log_config_append = <None>
27
28# Defines the format string for %%(asctime)s in log records. Default: %(default)s . This option is ignored if log_config_append is set.
29# (string value)
30#log_date_format = %Y-%m-%d %H:%M:%S
31
32# (Optional) Name of log file to send logging output to. If no default is set, logging will go to stderr as defined by use_stderr. This
33# option is ignored if log_config_append is set. (string value)
34# Deprecated group/name - [DEFAULT]/logfile
35#log_file = <None>
36
37# (Optional) The base directory used for relative log_file paths. This option is ignored if log_config_append is set. (string value)
38# Deprecated group/name - [DEFAULT]/logdir
39#log_dir = <None>
40
41# Uses logging handler designed to watch file system. When log file is moved or removed this handler will open a new log file with specified
42# path instantaneously. It makes sense only if log_file option is specified and Linux platform is used. This option is ignored if
43# log_config_append is set. (boolean value)
44#watch_log_file = false
45
46# Use syslog for logging. Existing syslog format is DEPRECATED and will be changed later to honor RFC5424. This option is ignored if
47# log_config_append is set. (boolean value)
48#use_syslog = false
49
50# Syslog facility to receive log lines. This option is ignored if log_config_append is set. (string value)
51#syslog_log_facility = LOG_USER
52
53# Log output to standard error. This option is ignored if log_config_append is set. (boolean value)
54#use_stderr = true
55
56# Format string to use for log messages with context. (string value)
57#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
58
59# Format string to use for log messages when context is undefined. (string value)
60#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
61
62# Additional data to append to log message when logging level for the message is DEBUG. (string value)
63#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
64
65# Prefix each line of exception output with this format. (string value)
66#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
67
68# Defines the format string for %(user_identity)s that is used in logging_context_format_string. (string value)
69#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
70
71# List of package logging levels in logger=LEVEL pairs. This option is ignored if log_config_append is set. (list value)
72#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO
73
74# Enables or disables publication of error events. (boolean value)
75#publish_errors = false
76
77# The format for an instance that is passed with the log message. (string value)
78#instance_format = "[instance: %(uuid)s] "
79
80# The format for an instance UUID that is passed with the log message. (string value)
81#instance_uuid_format = "[instance: %(uuid)s] "
82
83# Enables or disables fatal status of deprecations. (boolean value)
84#fatal_deprecations = false
85
86
87[agent]
88
89#
90# From neutron.ml2.ovs.agent
91#
92
93# The number of seconds the agent will wait between polling for local device changes. (integer value)
94#polling_interval = 2
95
96# Minimize polling by monitoring ovsdb for interface changes. (boolean value)
97#minimize_polling = true
98
99# The number of seconds to wait before respawning the ovsdb monitor after losing communication with it. (integer value)
100#ovsdb_monitor_respawn_interval = 30
101
102# Network types supported by the agent (gre and/or vxlan). (list value)
103#tunnel_types =
vmikes1b2ce532016-12-29 11:59:19 +0100104{%- if "vxlan" in neutron.backend.tenant_network_types %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100105tunnel_types =vxlan
106
107# The UDP port to use for VXLAN tunnels. (port value)
108# Minimum value: 0
109# Maximum value: 65535
110#vxlan_udp_port = 4789
111vxlan_udp_port = 4789
112
113# MTU size of veth interfaces (integer value)
114#veth_mtu = 9000
115
Jiri Broulik74f61112016-11-21 20:23:47 +0100116# Use ML2 l2population mechanism driver to learn remote MAC and IPs and improve tunnel scalability. (boolean value)
117#l2_population = false
118l2_population = True
119
120# Enable local ARP responder if it is supported. Requires OVS 2.1 and ML2 l2population driver. Allows the switch (when supporting an
121# overlay) to respond to an ARP request locally without performing a costly ARP broadcast into the overlay. (boolean value)
122#arp_responder = false
123arp_responder = True
124{%- endif %}
125
126# Enable suppression of ARP responses that don't match an IP address that belongs to the port from which they originate. Note: This prevents
127# the VMs attached to this agent from spoofing, it doesn't protect them from other devices which have the capability to spoof (e.g. bare
128# metal or VMs attached to agents without this flag set to True). Spoofing rules will not be added to any ports that have port security
129# disabled. For LinuxBridge, this requires ebtables. For OVS, it requires a version that supports matching ARP headers. This option will be
130# removed in Newton so the only way to disable protection will be via the port security extension. (boolean value)
131# This option is deprecated for removal.
132# Its value may be silently ignored in the future.
133#prevent_arp_spoofing = true
134
135# Set or un-set the don't fragment (DF) bit on outgoing IP packet carrying GRE/VXLAN tunnel. (boolean value)
136#dont_fragment = true
137
138# Make the l2 agent run in DVR mode. (boolean value)
139#enable_distributed_routing = false
140enable_distributed_routing = {{ neutron.get('dvr', 'False') }}
141
142# Set new timeout in seconds for new rpc calls after agent receives SIGTERM. If value is set to 0, rpc timeout won't be changed (integer
143# value)
144#quitting_rpc_timeout = 10
145
146# Reset flow table on start. Setting this to True will cause brief traffic interruption. (boolean value)
147#drop_flows_on_start = false
148drop_flows_on_start = False
149
150# Set or un-set the tunnel header checksum on outgoing IP packet carrying GRE/VXLAN tunnel. (boolean value)
151#tunnel_csum = false
152
153# Selects the Agent Type reported (string value)
154# This option is deprecated for removal.
155# Its value may be silently ignored in the future.
156#agent_type = Open vSwitch agent
157
158
159[ovs]
160
161#
162# From neutron.ml2.ovs.agent
163#
164
165# Integration bridge to use. Do not change this parameter unless you have a good reason to. This is the name of the OVS integration bridge.
166# There is one per hypervisor. The integration bridge acts as a virtual 'patch bay'. All VM VIFs are attached to this bridge and then
167# 'patched' according to their network connectivity. (string value)
168#integration_bridge = br-int
169integration_bridge = br-int
170
171# Tunnel bridge to use. (string value)
172#tunnel_bridge = br-tun
173tunnel_bridge = br-tun
174
175# Peer patch port in integration bridge for tunnel bridge. (string value)
176#int_peer_patch_port = patch-tun
177
178# Peer patch port in tunnel bridge for integration bridge. (string value)
179#tun_peer_patch_port = patch-int
180
181# Local IP address of tunnel endpoint. Can be either an IPv4 or IPv6 address. (IP address value)
182#local_ip = <None>
vmikes1b2ce532016-12-29 11:59:19 +0100183{%- if "vxlan" in neutron.backend.tenant_network_types %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100184local_ip = {{ neutron.local_ip }}
vmikes1b2ce532016-12-29 11:59:19 +0100185{%- endif %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100186
187# Comma-separated list of <physical_network>:<bridge> tuples mapping physical network names to the agent's node-specific Open vSwitch bridge
188# names to be used for flat and VLAN networks. The length of bridge names should be no more than 11. Each bridge must exist, and should have
189# a physical network interface configured as a port. All physical networks configured on the server should have mappings to appropriate
190# bridges on each agent. Note: If you remove a bridge from this mapping, make sure to disconnect it from the integration bridge as it won't
191# be managed by the agent anymore. Deprecated for ofagent. (list value)
192#bridge_mappings =
193{%- if "vlan" in neutron.backend.tenant_network_types %}
194bridge_mappings ={%- if neutron.get('external_access', True) %}physnet1:br-floating,{%- endif %}physnet2:br-prv
195{%- elif neutron.get('external_access', True) %}
196bridge_mappings =physnet1:br-floating
197{%- endif %}
198# Use veths instead of patch ports to interconnect the integration bridge to physical networks. Support kernel without Open vSwitch patch
199# port support so long as it is set to True. (boolean value)
200#use_veth_interconnection = false
201
202# OpenFlow interface to use. (string value)
203# Allowed values: ovs-ofctl, native
204#of_interface = ovs-ofctl
205
206# OVS datapath to use. 'system' is the default value and corresponds to the kernel datapath. To enable the userspace datapath set this value
207# to 'netdev'. (string value)
208# Allowed values: system, netdev
209#datapath_type = system
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100210{%- if neutron.dpdk %}
211datapath_type = netdev
212{%- endif %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100213
214# OVS vhost-user socket directory. (string value)
215#vhostuser_socket_dir = /var/run/openvswitch
216
217# Address to listen on for OpenFlow connections. Used only for 'native' driver. (IP address value)
218#of_listen_address = 127.0.0.1
219
220# Port to listen on for OpenFlow connections. Used only for 'native' driver. (port value)
221# Minimum value: 0
222# Maximum value: 65535
223#of_listen_port = 6633
224
225# Timeout in seconds to wait for the local switch connecting the controller. Used only for 'native' driver. (integer value)
226#of_connect_timeout = 30
227
228# Timeout in seconds to wait for a single OpenFlow request. Used only for 'native' driver. (integer value)
229#of_request_timeout = 10
230
231# The interface for interacting with the OVSDB (string value)
232# Allowed values: vsctl, native
233#ovsdb_interface = vsctl
234
235# The connection string for the native OVSDB backend. Requires the native ovsdb_interface to be enabled. (string value)
236#ovsdb_connection = tcp:127.0.0.1:6640
237
238[securitygroup]
239
240#
241# From neutron.ml2.ovs.agent
242#
243
244# Driver for security groups firewall in the L2 agent (string value)
245#firewall_driver = <None>
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100246{%- if neutron.dpdk %}
247firewall_driver = openvswitch
248{%- else %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100249firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver
Jakub Pavlik8f83ccc2017-02-27 11:15:39 +0100250{%- endif %}
Jiri Broulik74f61112016-11-21 20:23:47 +0100251
252# Controls whether the neutron security group API is enabled in the server. It should be false when using no security groups or using the
253# nova security group API. (boolean value)
254#enable_security_group = true
255enable_security_group = True
256
257# Use ipset to speed-up the iptables based security groups. Enabling ipset support requires that ipset is installed on L2 agent node.
258# (boolean value)
259#enable_ipset = true