blob: 24886b10ec525461cfa3c231261c7c78c604d933 [file] [log] [blame]
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001{%- from "neutron/map.jinja" import server with context %}
2[DEFAULT]
3
4#
5# From neutron
6#
7
8# Where to store Neutron state files. This directory must be writable by the
9# agent. (string value)
10#state_path = /var/lib/neutron
11state_path = /var/lib/neutron
12
13# The host IP to bind to (string value)
14#bind_host = 0.0.0.0
15bind_host = {{ server.bind.address }}
16
17# The port to bind to (port value)
18# Minimum value: 0
19# Maximum value: 65535
20#bind_port = 9696
21bind_port = {{ server.bind.port }}
22
23# The path for API extensions. Note that this can be a colon-separated list of
24# paths. For example: api_extensions_path =
25# extensions:/path/to/more/exts:/even/more/exts. The __path__ of
26# neutron.extensions is appended to this, so if your extensions are in there
27# you don't need to specify them here. (string value)
Jiri Broulik74f61112016-11-21 20:23:47 +010028
29{% if server.backend.engine == "contrail" %}
30
Petr Jediný1f37f542017-05-15 15:15:24 +020031api_extensions_path = extensions:/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/extensions:/usr/lib/python2.7/dist-packages/neutron_lbaas/extensions
Jiri Broulik74f61112016-11-21 20:23:47 +010032# The core plugin Neutron will use (string value)
33core_plugin = neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2
34
Petr Jediný1f37f542017-05-15 15:15:24 +020035service_plugins = neutron_plugin_contrail.plugins.opencontrail.loadbalancer.v2.plugin.LoadBalancerPluginV2
Jiri Broulik74f61112016-11-21 20:23:47 +010036{% elif server.backend.engine == "ml2" %}
37
38core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
39
Ondrej Smola314eee22017-03-08 21:21:16 +010040service_plugins =neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,neutron.services.metering.metering_plugin.MeteringPlugin{%- if server.lbaas is defined -%}
41,neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPluginv2
42{%- endif -%}
Jiri Broulik74f61112016-11-21 20:23:47 +010043
44{% endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020045
46# The type of authentication to use (string value)
47#auth_strategy = keystone
48auth_strategy = keystone
49
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020050# The service plugins Neutron will use (list value)
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020051# The base MAC address Neutron will use for VIFs. The first 3 octets will
52# remain unchanged. If the 4th octet is not 00, it will also be used. The
53# others will be randomly generated. (string value)
54#base_mac = fa:16:3e:00:00:00
55
56# How many times Neutron will retry MAC generation (integer value)
57#mac_generation_retries = 16
Jiri Broulik74f61112016-11-21 20:23:47 +010058mac_generation_retries = 32
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020059
60# Allow the usage of the bulk API (boolean value)
61#allow_bulk = true
62
63# Allow the usage of the pagination (boolean value)
Swann Croiset9407daf2017-02-02 15:27:56 +010064{% if server.get('allow_pagination', false) %}
65allow_pagination = True
66{% else %}
67allow_pagination = False
68{% endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020069
70# Allow the usage of the sorting (boolean value)
71#allow_sorting = false
72
73# The maximum number of items returned in a single response, value was
74# 'infinite' or negative integer means no limit (string value)
Swann Croiset9407daf2017-02-02 15:27:56 +010075pagination_max_limit = {{ server.pagination_max_limit|default('-1') }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +020076
77# Default value of availability zone hints. The availability zone aware
78# schedulers use this when the resources availability_zone_hints is empty.
79# Multiple availability zones can be specified by a comma separated string.
80# This value can be empty. In this case, even if availability_zone_hints for a
81# resource is empty, availability zone is considered for high availability
82# while scheduling the resource. (list value)
83#default_availability_zones =
84
85# Maximum number of DNS nameservers per subnet (integer value)
86#max_dns_nameservers = 5
87
88# Maximum number of host routes per subnet (integer value)
89#max_subnet_host_routes = 20
90
91# Maximum number of fixed ips per port. This option is deprecated and will be
92# removed in the N release. (integer value)
93# This option is deprecated for removal.
94# Its value may be silently ignored in the future.
95#max_fixed_ips_per_port = 5
96
97# Default IPv4 subnet pool to be used for automatic subnet CIDR allocation.
98# Specifies by UUID the pool to be used in case where creation of a subnet is
99# being called without a subnet pool ID. If not set then no pool will be used
100# unless passed explicitly to the subnet create. If no pool is used, then a
101# CIDR must be passed to create a subnet and that subnet will not be allocated
102# from any pool; it will be considered part of the tenant's private address
103# space. This option is deprecated for removal in the N release. (string value)
104# This option is deprecated for removal.
105# Its value may be silently ignored in the future.
106#default_ipv4_subnet_pool = <None>
107
108# Default IPv6 subnet pool to be used for automatic subnet CIDR allocation.
109# Specifies by UUID the pool to be used in case where creation of a subnet is
110# being called without a subnet pool ID. See the description for
111# default_ipv4_subnet_pool for more information. This option is deprecated for
112# removal in the N release. (string value)
113# This option is deprecated for removal.
114# Its value may be silently ignored in the future.
115#default_ipv6_subnet_pool = <None>
116
117# Enables IPv6 Prefix Delegation for automatic subnet CIDR allocation. Set to
118# True to enable IPv6 Prefix Delegation for subnet allocation in a PD-capable
119# environment. Users making subnet creation requests for IPv6 subnets without
120# providing a CIDR or subnetpool ID will be given a CIDR via the Prefix
121# Delegation mechanism. Note that enabling PD will override the behavior of the
122# default IPv6 subnetpool. (boolean value)
123#ipv6_pd_enabled = false
124
125# DHCP lease duration (in seconds). Use -1 to tell dnsmasq to use infinite
126# lease times. (integer value)
127# Deprecated group/name - [DEFAULT]/dhcp_lease_time
128#dhcp_lease_duration = 86400
Jiri Broulik74f61112016-11-21 20:23:47 +0100129dhcp_lease_duration = 600
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200130
131# Domain to use for building the hostnames (string value)
132#dns_domain = openstacklocal
133dns_domain = {{ server.dns_domain }}
134
135# Driver for external DNS integration. (string value)
136#external_dns_driver = <None>
137
138# Allow sending resource operation notification to DHCP agent (boolean value)
139#dhcp_agent_notification = true
140
141# Allow overlapping IP support in Neutron. Attention: the following parameter
142# MUST be set to False if Neutron is being used in conjunction with Nova
143# security groups. (boolean value)
144#allow_overlapping_ips = false
145allow_overlapping_ips = True
146
147# Hostname to be used by the Neutron server, agents and services running on
148# this machine. All the agents and services running on this machine must use
149# the same host value. (string value)
150#host = example.domain
151
152# Ensure that configured gateway is on subnet. For IPv6, validate only if
153# gateway is not a link local address. Deprecated, to be removed during the
154# Newton release, at which point the gateway will not be forced on to subnet.
155# (boolean value)
156# This option is deprecated for removal.
157# Its value may be silently ignored in the future.
158#force_gateway_on_subnet = true
159
160# Send notification to nova when port status changes (boolean value)
161#notify_nova_on_port_status_changes = true
162notify_nova_on_port_status_changes = True
163
164# Send notification to nova when port data (fixed_ips/floatingip) changes so
165# nova can update its cache. (boolean value)
166#notify_nova_on_port_data_changes = true
Jakub Pavlik85ae6882016-10-19 15:10:20 +0200167notify_nova_on_port_data_changes = True
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200168
169# Number of seconds between sending events to nova if there are any events to
170# send. (integer value)
171#send_events_interval = 2
172
173# If True, advertise network MTU values if core plugin calculates them. MTU is
174# advertised to running instances via DHCP and RA MTU options. (boolean value)
175#advertise_mtu = true
Jiri Broulik74f61112016-11-21 20:23:47 +0100176advertise_mtu = True
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200177
178# Neutron IPAM (IP address management) driver to use. If ipam_driver is not set
179# (default behavior), no IPAM driver is used. In order to use the reference
180# implementation of Neutron IPAM driver, use 'internal'. (string value)
181#ipam_driver = <None>
182
183# If True, then allow plugins that support it to create VLAN transparent
184# networks. (boolean value)
185#vlan_transparent = false
186
187# This will choose the web framework in which to run the Neutron API server.
188# 'pecan' is a new experiemental rewrite of the API server. (string value)
189# Allowed values: legacy, pecan
190#web_framework = legacy
191
192# MTU of the underlying physical network. Neutron uses this value to calculate
193# MTU for all virtual network components. For flat and VLAN networks, neutron
194# uses this value without modification. For overlay networks such as VXLAN,
195# neutron automatically subtracts the overlay protocol overhead from this
196# value. Defaults to 1500, the standard value for Ethernet. (integer value)
197# Deprecated group/name - [ml2]/segment_mtu
198#global_physnet_mtu = 1500
Jiri Broulik74f61112016-11-21 20:23:47 +0100199global_physnet_mtu = {{ server.get('global_physnet_mtu', '1500') }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200200
201# Number of backlog requests to configure the socket with (integer value)
202#backlog = 4096
203
204# Number of seconds to keep retrying to listen (integer value)
205#retry_until_window = 30
206
207# Enable SSL on the API server (boolean value)
208#use_ssl = false
209
210# Seconds between running periodic tasks (integer value)
211#periodic_interval = 40
212
213# Number of separate API worker processes for service. If not specified, the
214# default is equal to the number of CPUs available for best performance.
215# (integer value)
216#api_workers = <None>
217
218# Number of RPC worker processes for service (integer value)
219#rpc_workers = 1
220
221# Number of RPC worker processes dedicated to state reports queue (integer
222# value)
223#rpc_state_report_workers = 1
Oleg Bondarevb0caba82017-07-17 16:28:20 +0400224rpc_state_report_workers = 4
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200225
226# Range of seconds to randomly delay when starting the periodic task scheduler
227# to reduce stampeding. (Disable by setting to 0) (integer value)
228#periodic_fuzzy_delay = 5
229
230#
231# From neutron.agent
232#
233
234# The driver used to manage the virtual interface. (string value)
235#interface_driver = <None>
236
237# Location for Metadata Proxy UNIX domain socket. (string value)
238#metadata_proxy_socket = $state_path/metadata_proxy
239
240# User (uid or name) running metadata proxy after its initialization (if empty:
241# agent effective user). (string value)
242#metadata_proxy_user =
243
244# Group (gid or name) running metadata proxy after its initialization (if
245# empty: agent effective group). (string value)
246#metadata_proxy_group =
247
248# Enable/Disable log watch by metadata proxy. It should be disabled when
249# metadata_proxy_user/group is not allowed to read/write its log file and
250# copytruncate logrotate option must be used if logrotate is enabled on
251# metadata proxy log files. Option default value is deduced from
252# metadata_proxy_user: watch log is enabled if metadata_proxy_user is agent
253# effective user id/name. (boolean value)
254#metadata_proxy_watch_log = <None>
255
256#
257# From neutron.db
258#
259
260# Seconds to regard the agent is down; should be at least twice
261# report_interval, to be sure the agent is down for good. (integer value)
262#agent_down_time = 75
Jiri Broulik74f61112016-11-21 20:23:47 +0100263agent_down_time = 30
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200264
265# Representing the resource type whose load is being reported by the agent.
266# This can be "networks", "subnets" or "ports". When specified (Default is
267# networks), the server will extract particular load sent as part of its agent
268# configuration object from the agent report state, which is the number of
269# resources being consumed, at every report_interval.dhcp_load_type can be used
270# in combination with network_scheduler_driver =
271# neutron.scheduler.dhcp_agent_scheduler.WeightScheduler When the
272# network_scheduler_driver is WeightScheduler, dhcp_load_type can be configured
273# to represent the choice for the resource being balanced. Example:
274# dhcp_load_type=networks (string value)
275# Allowed values: networks, subnets, ports
276#dhcp_load_type = networks
277
278# Agent starts with admin_state_up=False when enable_new_agents=False. In the
279# case, user's resources will not be scheduled automatically to the agent until
280# admin changes admin_state_up to True. (boolean value)
281#enable_new_agents = true
282
283# Maximum number of routes per router (integer value)
284#max_routes = 30
285
286# Define the default value of enable_snat if not provided in
287# external_gateway_info. (boolean value)
288#enable_snat_by_default = true
289
290# Driver to use for scheduling network to DHCP agent (string value)
291#network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.WeightScheduler
292
293# Allow auto scheduling networks to DHCP agent. (boolean value)
294#network_auto_schedule = true
295
296# Automatically remove networks from offline DHCP agents. (boolean value)
297#allow_automatic_dhcp_failover = true
298
299# Number of DHCP agents scheduled to host a tenant network. If this number is
300# greater than 1, the scheduler automatically assigns multiple DHCP agents for
301# a given tenant network, providing high availability for DHCP service.
302# (integer value)
303#dhcp_agents_per_network = 1
Jiri Broulik74f61112016-11-21 20:23:47 +0100304dhcp_agents_per_network = 2
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200305
306# Enable services on an agent with admin_state_up False. If this option is
307# False, when admin_state_up of an agent is turned False, services on it will
308# be disabled. Agents with admin_state_up False are not selected for automatic
309# scheduling regardless of this option. But manual scheduling to such agents is
310# available if this option is True. (boolean value)
311#enable_services_on_agents_with_admin_state_down = false
312
313# The base mac address used for unique DVR instances by Neutron. The first 3
314# octets will remain unchanged. If the 4th octet is not 00, it will also be
315# used. The others will be randomly generated. The 'dvr_base_mac' *must* be
316# different from 'base_mac' to avoid mixing them up with MAC's allocated for
317# tenant ports. A 4 octet example would be dvr_base_mac = fa:16:3f:4f:00:00.
318# The default is 3 octet (string value)
319#dvr_base_mac = fa:16:3f:00:00:00
320
321# System-wide flag to determine the type of router that tenants can create.
322# Only admin can override. (boolean value)
323#router_distributed = false
Jiri Broulik74f61112016-11-21 20:23:47 +0100324router_distributed = {{ server.get('dvr', 'False') }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200325
326# Driver to use for scheduling router to a default L3 agent (string value)
327#router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.LeastRoutersScheduler
Jiri Broulik74f61112016-11-21 20:23:47 +0100328router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.ChanceScheduler
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200329
330# Allow auto scheduling of routers to L3 agent. (boolean value)
331#router_auto_schedule = true
332
333# Automatically reschedule routers from offline L3 agents to online L3 agents.
334# (boolean value)
335#allow_automatic_l3agent_failover = false
Oleg Bondarevb0caba82017-07-17 16:28:20 +0400336allow_automatic_l3agent_failover = true
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200337
338# Enable HA mode for virtual routers. (boolean value)
339#l3_ha = false
Jiri Broulik74f61112016-11-21 20:23:47 +0100340l3_ha = {{ server.get('l3_ha', 'False') }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200341
342# Maximum number of L3 agents which a HA router will be scheduled on. If it is
343# set to 0 then the router will be scheduled on every agent. (integer value)
344#max_l3_agents_per_router = 3
Oleg Bondarevb0caba82017-07-17 16:28:20 +0400345max_l3_agents_per_router = 0
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200346
347# Minimum number of L3 agents which a HA router will be scheduled on. If it is
348# set to 0 then the router will be scheduled on every agent. (integer value)
349#min_l3_agents_per_router = 2
350
351# Subnet used for the l3 HA admin network. (string value)
352#l3_ha_net_cidr = 169.254.192.0/18
353
354# The network type to use when creating the HA network for an HA router. By
355# default or if empty, the first 'tenant_network_types' is used. This is
356# helpful when the VRRP traffic should use a specific network which is not the
357# default one. (string value)
358#l3_ha_network_type =
359
360# The physical network name with which the HA network can be created. (string
361# value)
362#l3_ha_network_physical_name =
363
364#
365# From neutron.extensions
366#
367
368# Maximum number of allowed address pairs (integer value)
369#max_allowed_address_pair = 10
370
371#
372# From neutron.qos
373#
374
375# Drivers list to use to send the update notification (list value)
376#notification_drivers = m,e,s,s,a,g,e,_,q,u,e,u,e
377
378#
379# From oslo.log
380#
381
382# If set to true, the logging level will be set to DEBUG instead of the default
383# INFO level. (boolean value)
384#debug = false
385
386# If set to false, the logging level will be set to WARNING instead of the
387# default INFO level. (boolean value)
388# This option is deprecated for removal.
389# Its value may be silently ignored in the future.
390#verbose = true
391verbose = true
392
393# The name of a logging configuration file. This file is appended to any
394# existing logging configuration files. For details about logging configuration
395# files, see the Python logging module documentation. Note that when logging
396# configuration files are used then all logging configuration is set in the
397# configuration file and other logging configuration options are ignored (for
398# example, logging_context_format_string). (string value)
399# Deprecated group/name - [DEFAULT]/log_config
400#log_config_append = <None>
401
402# Defines the format string for %%(asctime)s in log records. Default:
403# %(default)s . This option is ignored if log_config_append is set. (string
404# value)
405#log_date_format = %Y-%m-%d %H:%M:%S
406
407# (Optional) Name of log file to send logging output to. If no default is set,
408# logging will go to stderr as defined by use_stderr. This option is ignored if
409# log_config_append is set. (string value)
410# Deprecated group/name - [DEFAULT]/logfile
411#log_file = <None>
412
413# (Optional) The base directory used for relative log_file paths. This option
414# is ignored if log_config_append is set. (string value)
415# Deprecated group/name - [DEFAULT]/logdir
416#log_dir = <None>
417
418# Uses logging handler designed to watch file system. When log file is moved or
419# removed this handler will open a new log file with specified path
420# instantaneously. It makes sense only if log_file option is specified and
421# Linux platform is used. This option is ignored if log_config_append is set.
422# (boolean value)
423#watch_log_file = false
424
425# Use syslog for logging. Existing syslog format is DEPRECATED and will be
426# changed later to honor RFC5424. This option is ignored if log_config_append
427# is set. (boolean value)
428#use_syslog = false
429
430# Syslog facility to receive log lines. This option is ignored if
431# log_config_append is set. (string value)
432#syslog_log_facility = LOG_USER
433
434# Log output to standard error. This option is ignored if log_config_append is
435# set. (boolean value)
436#use_stderr = true
437
438# Format string to use for log messages with context. (string value)
439#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
440
441# Format string to use for log messages when context is undefined. (string
442# value)
443#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
444
445# Additional data to append to log message when logging level for the message
446# is DEBUG. (string value)
447#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
448
449# Prefix each line of exception output with this format. (string value)
450#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
451
452# Defines the format string for %(user_identity)s that is used in
453# logging_context_format_string. (string value)
454#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
455
456# List of package logging levels in logger=LEVEL pairs. This option is ignored
457# if log_config_append is set. (list value)
458#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
459
460# Enables or disables publication of error events. (boolean value)
461#publish_errors = false
462
463# The format for an instance that is passed with the log message. (string
464# value)
465#instance_format = "[instance: %(uuid)s] "
466
467# The format for an instance UUID that is passed with the log message. (string
468# value)
469#instance_uuid_format = "[instance: %(uuid)s] "
470
471# Enables or disables fatal status of deprecations. (boolean value)
472#fatal_deprecations = false
473
474#
475# From oslo.messaging
476#
477
478# Size of RPC connection pool. (integer value)
479# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size
480#rpc_conn_pool_size = 30
481
482# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP.
483# The "host" option should point or resolve to this address. (string value)
484#rpc_zmq_bind_address = *
485
486# MatchMaker driver. (string value)
487# Allowed values: redis, dummy
488#rpc_zmq_matchmaker = redis
489
490# Type of concurrency used. Either "native" or "eventlet" (string value)
491#rpc_zmq_concurrency = eventlet
492
493# Number of ZeroMQ contexts, defaults to 1. (integer value)
494#rpc_zmq_contexts = 1
495
496# Maximum number of ingress messages to locally buffer per topic. Default is
497# unlimited. (integer value)
498#rpc_zmq_topic_backlog = <None>
499
500# Directory for holding IPC sockets. (string value)
501#rpc_zmq_ipc_dir = /var/run/openstack
502
503# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match
504# "host" option, if running Nova. (string value)
505#rpc_zmq_host = localhost
506
507# Seconds to wait before a cast expires (TTL). The default value of -1
508# specifies an infinite linger period. The value of 0 specifies no linger
509# period. Pending messages shall be discarded immediately when the socket is
510# closed. Only supported by impl_zmq. (integer value)
511#rpc_cast_timeout = -1
512rpc_cast_timeout=30
513
514# The default number of seconds that poll should wait. Poll raises timeout
515# exception when timeout expired. (integer value)
516#rpc_poll_timeout = 1
517
518# Expiration timeout in seconds of a name service record about existing target
519# ( < 0 means no timeout). (integer value)
520#zmq_target_expire = 120
521
522# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean
523# value)
524#use_pub_sub = true
525
526# Minimal port number for random ports range. (port value)
527# Minimum value: 0
528# Maximum value: 65535
529#rpc_zmq_min_port = 49152
530
531# Maximal port number for random ports range. (integer value)
532# Minimum value: 1
533# Maximum value: 65536
534#rpc_zmq_max_port = 65536
535
536# Number of retries to find free port number before fail with ZMQBindError.
537# (integer value)
538#rpc_zmq_bind_port_retries = 100
539
540# Size of executor thread pool. (integer value)
541# Deprecated group/name - [DEFAULT]/rpc_thread_pool_size
542#executor_thread_pool_size = 64
543executor_thread_pool_size = 70
544
545# Seconds to wait for a response from a call. (integer value)
546#rpc_response_timeout = 60
Oleg Bondarevb0caba82017-07-17 16:28:20 +0400547rpc_response_timeout=120
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200548
549# A URL representing the messaging driver to use and its full configuration. If
550# not set, we fall back to the rpc_backend option and driver specific
551# configuration. (string value)
552#transport_url = <None>
553
554# The messaging driver to use, defaults to rabbit. Other drivers include amqp
555# and zmq. (string value)
556#rpc_backend = rabbit
557rpc_backend = rabbit
558
559# The default exchange under which topics are scoped. May be overridden by an
560# exchange name specified in the transport_url option. (string value)
561#control_exchange = neutron
562
563#
564# From oslo.service.wsgi
565#
566
567# File name for the paste.deploy config for api service (string value)
568#api_paste_config = api-paste.ini
569
570# A python format string that is used as the template to generate log lines.
571# The following values can beformatted into it: client_ip, date_time,
572# request_line, status_code, body_length, wall_seconds. (string value)
573#wsgi_log_format = %(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f
574
575# Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not
576# supported on OS X. (integer value)
577#tcp_keepidle = 600
578
579# Size of the pool of greenthreads used by wsgi (integer value)
580#wsgi_default_pool_size = 1000
581
582# Maximum line size of message headers to be accepted. max_header_line may need
583# to be increased when using large tokens (typically those generated by the
584# Keystone v3 API with big service catalogs). (integer value)
585#max_header_line = 16384
586
587# If False, closes the client socket connection explicitly. (boolean value)
588#wsgi_keep_alive = true
589
590# Timeout for client connections' socket operations. If an incoming connection
591# is idle for this number of seconds it will be closed. A value of '0' means
592# wait forever. (integer value)
593#client_socket_timeout = 900
594
Jiri Broulik74f61112016-11-21 20:23:47 +0100595nova_url = http://{{ server.compute.host }}:8774/v2
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200596
597[agent]
598
599#
600# From neutron.agent
601#
602
603# Root helper application. Use 'sudo neutron-rootwrap
604# /etc/neutron/rootwrap.conf' to use the real root filter facility. Change to
605# 'sudo' to skip the filtering and just run the command directly. (string
606# value)
607root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf
608
609# Use the root helper when listing the namespaces on a system. This may not be
610# required depending on the security configuration. If the root helper is not
611# required, set this to False for a performance improvement. (boolean value)
612#use_helper_for_ns_read = true
613
614# Root helper daemon application to use when possible. (string value)
Oleg Bondarev61a63db2017-07-12 12:31:23 +0400615root_helper_daemon = sudo neutron-rootwrap-daemon /etc/neutron/rootwrap.conf
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200616
617# Seconds between nodes reporting state to server; should be less than
618# agent_down_time, best if it is half or less than agent_down_time. (floating
619# point value)
620#report_interval = 30
Jiri Broulik74f61112016-11-21 20:23:47 +0100621report_interval = 10
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200622
623# Log agent heartbeats (boolean value)
624#log_agent_heartbeats = false
625
626# Add comments to iptables rules. Set to false to disallow the addition of
627# comments to generated iptables rules that describe each rule's purpose.
628# System must support the iptables comments module for addition of comments.
629# (boolean value)
630#comment_iptables_rules = true
631
632# Action to be executed when a child process dies (string value)
633# Allowed values: respawn, exit
634#check_child_processes_action = respawn
635
636# Interval between checks of child process liveness (seconds), use 0 to disable
637# (integer value)
638#check_child_processes_interval = 60
639
640# Availability zone of this node (string value)
641#availability_zone = nova
642
643
644[cors]
645
646#
647# From oslo.middleware.cors
648#
649
650# Indicate whether this resource may be shared with the domain received in the
651# requests "origin" header. (list value)
652#allowed_origin = <None>
Ondrej Smola12ff8192017-04-28 12:39:11 +0200653{%- if server.cors.allowed_origin is defined %}
654allowed_origin = {{ server.cors.allowed_origin }}
655{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200656
657# Indicate that the actual request can include user credentials (boolean value)
658#allow_credentials = true
Ondrej Smola12ff8192017-04-28 12:39:11 +0200659{%- if server.cors.allow_credentials is defined %}
660allow_credentials = {{ server.cors.allow_credentials }}
661{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200662
663# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple
664# Headers. (list value)
665#expose_headers = X-Auth-Token,X-Subject-Token,X-Service-Token,X-OpenStack-Request-ID,OpenStack-Volume-microversion
Ondrej Smola12ff8192017-04-28 12:39:11 +0200666{%- if server.cors.expose_headers is defined %}
667expose_headers = {{ server.cors.expose_headers }}
668{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200669
670# Maximum cache age of CORS preflight requests. (integer value)
671#max_age = 3600
Ondrej Smola12ff8192017-04-28 12:39:11 +0200672{%- if server.cors.max_age is defined %}
673max_age = {{ server.cors.max_age }}
674{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200675
676# Indicate which methods can be used during the actual request. (list value)
677#allow_methods = GET,PUT,POST,DELETE,PATCH
Ondrej Smola12ff8192017-04-28 12:39:11 +0200678{%- if server.cors.allow_methods is defined %}
679allow_methods = {{ server.cors.allow_methods }}
680{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200681
682# Indicate which header field names may be used during the actual request.
683# (list value)
684#allow_headers = X-Auth-Token,X-Identity-Status,X-Roles,X-Service-Catalog,X-User-Id,X-Tenant-Id,X-OpenStack-Request-ID
Ondrej Smola12ff8192017-04-28 12:39:11 +0200685{%- if server.cors.allow_headers is defined %}
686allow_headers = {{ server.cors.allow_headers }}
687{%- endif %}
688
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200689
690
691[cors.subdomain]
692
693#
694# From oslo.middleware.cors
695#
696
697# Indicate whether this resource may be shared with the domain received in the
698# requests "origin" header. (list value)
699#allowed_origin = <None>
700
701# Indicate that the actual request can include user credentials (boolean value)
702#allow_credentials = true
703
704# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple
705# Headers. (list value)
706#expose_headers = X-Auth-Token,X-Subject-Token,X-Service-Token,X-OpenStack-Request-ID,OpenStack-Volume-microversion
707
708# Maximum cache age of CORS preflight requests. (integer value)
709#max_age = 3600
710
711# Indicate which methods can be used during the actual request. (list value)
712#allow_methods = GET,PUT,POST,DELETE,PATCH
713
714# Indicate which header field names may be used during the actual request.
715# (list value)
716#allow_headers = X-Auth-Token,X-Identity-Status,X-Roles,X-Service-Catalog,X-User-Id,X-Tenant-Id,X-OpenStack-Request-ID
717
718
719[database]
720
721#
722# From neutron.db
723#
724
725# Database engine for which script will be generated when using offline
726# migration. (string value)
727#engine =
728
729#
730# From oslo.db
731#
732
733# The file name to use with SQLite. (string value)
734# Deprecated group/name - [DEFAULT]/sqlite_db
735#sqlite_db = oslo.sqlite
736
737# If True, SQLite uses synchronous mode. (boolean value)
738# Deprecated group/name - [DEFAULT]/sqlite_synchronous
739#sqlite_synchronous = true
740
741# The back end to use for the database. (string value)
742# Deprecated group/name - [DEFAULT]/db_backend
743#backend = sqlalchemy
744
745# The SQLAlchemy connection string to use to connect to the database. (string
746# value)
747# Deprecated group/name - [DEFAULT]/sql_connection
748# Deprecated group/name - [DATABASE]/sql_connection
749# Deprecated group/name - [sql]/connection
Jiri Broulik74f61112016-11-21 20:23:47 +0100750{% if server.backend.engine == "ml2" %}
751connection = {{ server.database.engine }}+pymysql://{{ server.database.user }}:{{ server.database.password }}@{{ server.database.host }}/{{ server.database.name }}
752{% else %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200753connection = sqlite:////var/lib/neutron/neutron.sqlite
Jiri Broulik74f61112016-11-21 20:23:47 +0100754{% endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200755# The SQLAlchemy connection string to use to connect to the slave database.
756# (string value)
757#slave_connection = <None>
758
759# The SQL mode to be used for MySQL sessions. This option, including the
760# default, overrides any server-set SQL mode. To use whatever SQL mode is set
761# by the server configuration, set this to no value. Example: mysql_sql_mode=
762# (string value)
763#mysql_sql_mode = TRADITIONAL
764
765# Timeout before idle SQL connections are reaped. (integer value)
766# Deprecated group/name - [DEFAULT]/sql_idle_timeout
767# Deprecated group/name - [DATABASE]/sql_idle_timeout
768# Deprecated group/name - [sql]/idle_timeout
769#idle_timeout = 3600
Jiri Broulik74f61112016-11-21 20:23:47 +0100770idle_timeout = 3600
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200771
772# Minimum number of SQL connections to keep open in a pool. (integer value)
773# Deprecated group/name - [DEFAULT]/sql_min_pool_size
774# Deprecated group/name - [DATABASE]/sql_min_pool_size
775#min_pool_size = 1
776
777# Maximum number of SQL connections to keep open in a pool. (integer value)
778# Deprecated group/name - [DEFAULT]/sql_max_pool_size
779# Deprecated group/name - [DATABASE]/sql_max_pool_size
780#max_pool_size = <None>
Oleg Bondarevb0caba82017-07-17 16:28:20 +0400781max_pool_size = {{ [grains.num_cpus * 5, 30] | sort | first }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200782
783# Maximum number of database connection retries during startup. Set to -1 to
784# specify an infinite retry count. (integer value)
785# Deprecated group/name - [DEFAULT]/sql_max_retries
786# Deprecated group/name - [DATABASE]/sql_max_retries
787#max_retries = 10
Jiri Broulik74f61112016-11-21 20:23:47 +0100788max_retries = -1
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200789
790# Interval between retries of opening a SQL connection. (integer value)
791# Deprecated group/name - [DEFAULT]/sql_retry_interval
792# Deprecated group/name - [DATABASE]/reconnect_interval
793#retry_interval = 10
Jiri Broulik74f61112016-11-21 20:23:47 +0100794retry_interval = 2
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200795
796# If set, use this value for max_overflow with SQLAlchemy. (integer value)
797# Deprecated group/name - [DEFAULT]/sql_max_overflow
798# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
799#max_overflow = 50
Jiri Broulik74f61112016-11-21 20:23:47 +0100800max_overflow = 20
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200801
802# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer
803# value)
804# Deprecated group/name - [DEFAULT]/sql_connection_debug
805#connection_debug = 0
806
807# Add Python stack traces to SQL as comment strings. (boolean value)
808# Deprecated group/name - [DEFAULT]/sql_connection_trace
809#connection_trace = false
810
811# If set, use this value for pool_timeout with SQLAlchemy. (integer value)
812# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout
813#pool_timeout = <None>
814
815# Enable the experimental use of database reconnect on connection lost.
816# (boolean value)
817#use_db_reconnect = false
818
819# Seconds between retries of a database transaction. (integer value)
820#db_retry_interval = 1
821
822# If True, increases the interval between retries of a database operation up to
823# db_max_retry_interval. (boolean value)
824#db_inc_retry_interval = true
825
826# If db_inc_retry_interval is set, the maximum seconds between retries of a
827# database operation. (integer value)
828#db_max_retry_interval = 10
829
830# Maximum retries in case of connection error or deadlock error before error is
831# raised. Set to -1 to specify an infinite retry count. (integer value)
832#db_max_retries = 20
833
834
835[keystone_authtoken]
Jiri Broulik74f61112016-11-21 20:23:47 +0100836{% if server.backend.engine == "contrail" %}
837admin_token = {{ server.backend.token }}
838admin_user={{ server.backend.user }}
839admin_password={{ server.backend.password }}
840admin_tenant_name={{ server.backend.tenant }}
841{%- endif %}
Jakub Pavlik7985ec92016-05-06 07:35:25 -0700842auth_region={{ server.identity.region }}
Jakub Pavlik85ae6882016-10-19 15:10:20 +0200843auth_protocol=http
Jakub Pavlik7985ec92016-05-06 07:35:25 -0700844revocation_cache_time = 10
Petr Jediný1f37f542017-05-15 15:15:24 +0200845{% if server.backend.engine == "contrail" %}
846# LBaaS contrail neutron plugin for versions 3.x expects auth_type to be
847# 'keystone' or 'noauth'
848# This behaviour is fixed after the release MCP1.0 by using auth_strategy
849# instead of auth_type, until this is backported to MCP1.0 auth_type must be
850# set to keystone, noauth or commented out.
851#
852# When not defined, contrail defaults to 'keystone'
853#
854#auth_type=keystone
855{% else %}
Jakub Pavlik7985ec92016-05-06 07:35:25 -0700856auth_type = password
Petr Jediný1f37f542017-05-15 15:15:24 +0200857{% endif %}
Jakub Pavlik85ae6882016-10-19 15:10:20 +0200858auth_host = {{ server.identity.host }}
859auth_port = 35357
Jakub Pavlik7985ec92016-05-06 07:35:25 -0700860user_domain_id = {{ server.identity.get('domain', 'default') }}
861project_domain_id = {{ server.identity.get('domain', 'default') }}
862project_name = {{ server.identity.tenant }}
863username = {{ server.identity.user }}
864password = {{ server.identity.password }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200865auth_uri=http://{{ server.identity.host }}:5000
866auth_url=http://{{ server.identity.host }}:35357
Jakub Pavlik7985ec92016-05-06 07:35:25 -0700867{%- if server.cache is defined %}
868memcached_servers={%- for member in server.cache.members %}{{ member.host }}:11211{% if not loop.last %},{% endif %}{%- endfor %}
869{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +0200870#
871# From keystonemiddleware.auth_token
872#
873
874# Complete public Identity API endpoint. (string value)
875#auth_uri = <None>
876
877# API version of the admin Identity API endpoint. (string value)
878#auth_version = <None>
879
880# Do not handle authorization requests within the middleware, but delegate the
881# authorization decision to downstream WSGI components. (boolean value)
882#delay_auth_decision = false
883
884# Request timeout value for communicating with Identity API server. (integer
885# value)
886#http_connect_timeout = <None>
887
888# How many times are we trying to reconnect when communicating with Identity
889# API Server. (integer value)
890#http_request_max_retries = 3
891
892# Env key for the swift cache. (string value)
893#cache = <None>
894
895# Required if identity server requires client certificate (string value)
896#certfile = <None>
897
898# Required if identity server requires client certificate (string value)
899#keyfile = <None>
900
901# A PEM encoded Certificate Authority to use when verifying HTTPs connections.
902# Defaults to system CAs. (string value)
903#cafile = <None>
904
905# Verify HTTPS connections. (boolean value)
906#insecure = false
907
908# The region in which the identity server can be found. (string value)
909#region_name = <None>
910
911# Directory used to cache files related to PKI tokens. (string value)
912#signing_dir = <None>
913
914# Optionally specify a list of memcached server(s) to use for caching. If left
915# undefined, tokens will instead be cached in-process. (list value)
916# Deprecated group/name - [DEFAULT]/memcache_servers
917#memcached_servers = <None>
918
919# In order to prevent excessive effort spent validating tokens, the middleware
920# caches previously-seen tokens for a configurable duration (in seconds). Set
921# to -1 to disable caching completely. (integer value)
922#token_cache_time = 300
923
924# Determines the frequency at which the list of revoked tokens is retrieved
925# from the Identity service (in seconds). A high number of revocation events
926# combined with a low cache duration may significantly reduce performance.
927# (integer value)
928#revocation_cache_time = 10
929
930# (Optional) If defined, indicate whether token data should be authenticated or
931# authenticated and encrypted. If MAC, token data is authenticated (with HMAC)
932# in the cache. If ENCRYPT, token data is encrypted and authenticated in the
933# cache. If the value is not one of these options or empty, auth_token will
934# raise an exception on initialization. (string value)
935# Allowed values: None, MAC, ENCRYPT
936#memcache_security_strategy = None
937
938# (Optional, mandatory if memcache_security_strategy is defined) This string is
939# used for key derivation. (string value)
940#memcache_secret_key = <None>
941
942# (Optional) Number of seconds memcached server is considered dead before it is
943# tried again. (integer value)
944#memcache_pool_dead_retry = 300
945
946# (Optional) Maximum total number of open connections to every memcached
947# server. (integer value)
948#memcache_pool_maxsize = 10
949
950# (Optional) Socket timeout in seconds for communicating with a memcached
951# server. (integer value)
952#memcache_pool_socket_timeout = 3
953
954# (Optional) Number of seconds a connection to memcached is held unused in the
955# pool before it is closed. (integer value)
956#memcache_pool_unused_timeout = 60
957
958# (Optional) Number of seconds that an operation will wait to get a memcached
959# client connection from the pool. (integer value)
960#memcache_pool_conn_get_timeout = 10
961
962# (Optional) Use the advanced (eventlet safe) memcached client pool. The
963# advanced pool will only work under python 2.x. (boolean value)
964#memcache_use_advanced_pool = false
965
966# (Optional) Indicate whether to set the X-Service-Catalog header. If False,
967# middleware will not ask for service catalog on token validation and will not
968# set the X-Service-Catalog header. (boolean value)
969#include_service_catalog = true
970
971# Used to control the use and type of token binding. Can be set to: "disabled"
972# to not check token binding. "permissive" (default) to validate binding
973# information if the bind type is of a form known to the server and ignore it
974# if not. "strict" like "permissive" but if the bind type is unknown the token
975# will be rejected. "required" any form of token binding is needed to be
976# allowed. Finally the name of a binding method that must be present in tokens.
977# (string value)
978#enforce_token_bind = permissive
979
980# If true, the revocation list will be checked for cached tokens. This requires
981# that PKI tokens are configured on the identity server. (boolean value)
982#check_revocations_for_cached = false
983
984# Hash algorithms to use for hashing PKI tokens. This may be a single algorithm
985# or multiple. The algorithms are those supported by Python standard
986# hashlib.new(). The hashes will be tried in the order given, so put the
987# preferred one first for performance. The result of the first hash will be
988# stored in the cache. This will typically be set to multiple values only while
989# migrating from a less secure algorithm to a more secure one. Once all the old
990# tokens are expired this option should be set to a single value for better
991# performance. (list value)
992#hash_algorithms = md5
993
994# Prefix to prepend at the beginning of the path. Deprecated, use identity_uri.
995# (string value)
996#auth_admin_prefix =
997
998# Host providing the admin Identity API endpoint. Deprecated, use identity_uri.
999# (string value)
1000#auth_host = 127.0.0.1
1001
1002# Port of the admin Identity API endpoint. Deprecated, use identity_uri.
1003# (integer value)
1004#auth_port = 35357
1005
1006# Protocol of the admin Identity API endpoint. Deprecated, use identity_uri.
1007# (string value)
1008# Allowed values: http, https
1009#auth_protocol = https
1010
1011# Complete admin Identity API endpoint. This should specify the unversioned
1012# root endpoint e.g. https://localhost:35357/ (string value)
1013#identity_uri = <None>
1014
1015# This option is deprecated and may be removed in a future release. Single
1016# shared secret with the Keystone configuration used for bootstrapping a
1017# Keystone installation, or otherwise bypassing the normal authentication
1018# process. This option should not be used, use `admin_user` and
1019# `admin_password` instead. (string value)
1020#admin_token = <None>
1021
1022# Service username. (string value)
1023#admin_user = <None>
1024
1025# Service user password. (string value)
1026#admin_password = <None>
1027
1028# Service tenant name. (string value)
1029#admin_tenant_name = admin
1030
1031# Authentication type to load (unknown value)
1032# Deprecated group/name - [DEFAULT]/auth_plugin
1033#auth_type = <None>
1034
1035# Config Section from which to load plugin specific options (unknown value)
1036#auth_section = <None>
1037
1038
1039[matchmaker_redis]
1040
1041#
1042# From oslo.messaging
1043#
1044
1045# Host to locate redis. (string value)
1046#host = 127.0.0.1
1047
1048# Use this port to connect to redis host. (port value)
1049# Minimum value: 0
1050# Maximum value: 65535
1051#port = 6379
1052
1053# Password for Redis server (optional). (string value)
1054#password =
1055
1056# List of Redis Sentinel hosts (fault tolerance mode) e.g.
1057# [host:port, host1:port ... ] (list value)
1058#sentinel_hosts =
1059
1060# Redis replica set name. (string value)
1061#sentinel_group_name = oslo-messaging-zeromq
1062
1063# Time in ms to wait between connection attempts. (integer value)
1064#wait_timeout = 500
1065
1066# Time in ms to wait before the transaction is killed. (integer value)
1067#check_timeout = 20000
1068
1069# Timeout in ms on blocking socket operations (integer value)
1070#socket_timeout = 1000
1071
1072
1073[nova]
1074
1075#
1076# From neutron
1077#
1078
1079# Name of nova region to use. Useful if keystone manages more than one region.
1080# (string value)
1081#region_name = <None>
1082region_name = {{ server.compute.region }}
1083
1084# Type of the nova endpoint to use. This endpoint will be looked up in the
1085# keystone catalog and should be one of public, internal or admin. (string
1086# value)
1087# Allowed values: public, admin, internal
Dennis Dmitriev37114722017-03-06 16:52:26 +02001088endpoint_type = {{ server.identity.get('endpoint_type', 'public') }}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001089
1090#
1091# From nova.auth
1092#
1093
1094# Authentication URL (unknown value)
1095#auth_url = <None>
1096user_domain_id = {{ server.identity.get('domain', 'default') }}
1097project_domain_id = {{ server.identity.get('domain', 'default') }}
1098project_name = {{ server.identity.tenant }}
1099password = {{ server.compute.password }}
1100username = {{ server.compute.user }}
1101auth_type = password
1102auth_url = http://{{ server.identity.host }}:35357
1103
1104# Authentication type to load (unknown value)
1105# Deprecated group/name - [DEFAULT]/auth_plugin
1106#auth_type = <None>
1107
1108# PEM encoded Certificate Authority to use when verifying HTTPs connections.
1109# (string value)
1110#cafile = <None>
1111
1112# PEM encoded client certificate cert file (string value)
1113#certfile = <None>
1114
1115# Optional domain ID to use with v3 and v2 parameters. It will be used for both
1116# the user and project domain in v3 and ignored in v2 authentication. (unknown
1117# value)
1118#default_domain_id = <None>
1119
1120# Optional domain name to use with v3 API and v2 parameters. It will be used
1121# for both the user and project domain in v3 and ignored in v2 authentication.
1122# (unknown value)
1123#default_domain_name = <None>
1124
1125# Domain ID to scope to (unknown value)
1126#domain_id = <None>
1127
1128# Domain name to scope to (unknown value)
1129#domain_name = <None>
1130
1131# Verify HTTPS connections. (boolean value)
1132#insecure = false
1133
1134# PEM encoded client certificate key file (string value)
1135#keyfile = <None>
1136
1137# User's password (unknown value)
1138#password = <None>
1139
1140# Domain ID containing project (unknown value)
1141#project_domain_id = <None>
1142
1143# Domain name containing project (unknown value)
1144#project_domain_name = <None>
1145
1146# Project ID to scope to (unknown value)
1147# Deprecated group/name - [DEFAULT]/tenant-id
1148#project_id = <None>
1149
1150# Project name to scope to (unknown value)
1151# Deprecated group/name - [DEFAULT]/tenant-name
1152#project_name = <None>
1153
1154# Tenant ID (unknown value)
1155#tenant_id = <None>
1156
1157# Tenant Name (unknown value)
1158#tenant_name = <None>
1159
1160# Timeout value for http requests (integer value)
1161#timeout = <None>
1162
1163# Trust ID (unknown value)
1164#trust_id = <None>
1165
1166# User's domain id (unknown value)
1167#user_domain_id = <None>
1168
1169# User's domain name (unknown value)
1170#user_domain_name = <None>
1171
1172# User id (unknown value)
1173#user_id = <None>
1174
1175# Username (unknown value)
1176# Deprecated group/name - [DEFAULT]/username
1177#username = <None>
1178
1179
1180[oslo_concurrency]
1181
1182#
1183# From oslo.concurrency
1184#
1185
1186# Enables or disables inter-process locks. (boolean value)
1187# Deprecated group/name - [DEFAULT]/disable_process_locking
1188#disable_process_locking = false
1189
1190# Directory to use for lock files. For security, the specified directory
1191# should only be writable by the user running the processes that need locking.
1192# Defaults to environment variable OSLO_LOCK_PATH. If OSLO_LOCK_PATH is not set
1193# in the environment, use the Python tempfile.gettempdir function to find a
1194# suitable location. If external locks are used, a lock path must be set.
1195# (string value)
1196# Deprecated group/name - [DEFAULT]/lock_path
1197#lock_path = /tmp
1198lock_path = $state_path/lock
1199
1200[oslo_messaging_amqp]
1201
1202#
1203# From oslo.messaging
1204#
1205
1206# address prefix used when sending to a specific server (string value)
1207# Deprecated group/name - [amqp1]/server_request_prefix
1208#server_request_prefix = exclusive
1209
1210# address prefix used when broadcasting to all servers (string value)
1211# Deprecated group/name - [amqp1]/broadcast_prefix
1212#broadcast_prefix = broadcast
1213
1214# address prefix when sending to any server in group (string value)
1215# Deprecated group/name - [amqp1]/group_request_prefix
1216#group_request_prefix = unicast
1217
1218# Name for the AMQP container (string value)
1219# Deprecated group/name - [amqp1]/container_name
1220#container_name = <None>
1221
1222# Timeout for inactive connections (in seconds) (integer value)
1223# Deprecated group/name - [amqp1]/idle_timeout
1224#idle_timeout = 0
1225
1226# Debug: dump AMQP frames to stdout (boolean value)
1227# Deprecated group/name - [amqp1]/trace
1228#trace = false
1229
1230# CA certificate PEM file to verify server certificate (string value)
1231# Deprecated group/name - [amqp1]/ssl_ca_file
1232#ssl_ca_file =
1233
1234# Identifying certificate PEM file to present to clients (string value)
1235# Deprecated group/name - [amqp1]/ssl_cert_file
1236#ssl_cert_file =
1237
1238# Private key PEM file used to sign cert_file certificate (string value)
1239# Deprecated group/name - [amqp1]/ssl_key_file
1240#ssl_key_file =
1241
1242# Password for decrypting ssl_key_file (if encrypted) (string value)
1243# Deprecated group/name - [amqp1]/ssl_key_password
1244#ssl_key_password = <None>
1245
1246# Accept clients using either SSL or plain TCP (boolean value)
1247# Deprecated group/name - [amqp1]/allow_insecure_clients
1248#allow_insecure_clients = false
1249
1250# Space separated list of acceptable SASL mechanisms (string value)
1251# Deprecated group/name - [amqp1]/sasl_mechanisms
1252#sasl_mechanisms =
1253
1254# Path to directory that contains the SASL configuration (string value)
1255# Deprecated group/name - [amqp1]/sasl_config_dir
1256#sasl_config_dir =
1257
1258# Name of configuration file (without .conf suffix) (string value)
1259# Deprecated group/name - [amqp1]/sasl_config_name
1260#sasl_config_name =
1261
1262# User name for message broker authentication (string value)
1263# Deprecated group/name - [amqp1]/username
1264#username =
1265
1266# Password for message broker authentication (string value)
1267# Deprecated group/name - [amqp1]/password
1268#password =
1269
1270
1271[oslo_messaging_notifications]
1272
1273#
1274# From oslo.messaging
1275#
1276
1277# The Drivers(s) to handle sending notifications. Possible values are
1278# messaging, messagingv2, routing, log, test, noop (multi valued)
1279# Deprecated group/name - [DEFAULT]/notification_driver
1280#driver =
Simon Pasquier1c6a0d52016-12-01 15:16:06 +01001281{%- if server.notification is mapping %}
1282driver = {{ server.notification.get('driver', 'messagingv2') }}
1283{%- if server.notification.topics is defined %}
1284topics = {{ server.notification.topics }}
1285{%- endif %}
1286{%- elif server.notification %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001287driver = messagingv2
1288{%- endif %}
1289# A URL representing the messaging driver to use for notifications. If not set,
1290# we fall back to the same configuration used for RPC. (string value)
1291# Deprecated group/name - [DEFAULT]/notification_transport_url
1292#transport_url = <None>
1293
1294# AMQP topic used for OpenStack notifications. (list value)
1295# Deprecated group/name - [rpc_notifier2]/topics
1296# Deprecated group/name - [DEFAULT]/notification_topics
1297#topics = notifications
1298
1299
1300[oslo_messaging_rabbit]
1301
1302#
1303# From oslo.messaging
1304#
1305
1306# Use durable queues in AMQP. (boolean value)
1307# Deprecated group/name - [DEFAULT]/amqp_durable_queues
1308# Deprecated group/name - [DEFAULT]/rabbit_durable_queues
1309#amqp_durable_queues = false
1310
1311# Auto-delete queues in AMQP. (boolean value)
1312# Deprecated group/name - [DEFAULT]/amqp_auto_delete
1313#amqp_auto_delete = false
1314
1315# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and
1316# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some
1317# distributions. (string value)
1318# Deprecated group/name - [DEFAULT]/kombu_ssl_version
1319#kombu_ssl_version =
1320
1321# SSL key file (valid only if SSL enabled). (string value)
1322# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile
1323#kombu_ssl_keyfile =
1324
1325# SSL cert file (valid only if SSL enabled). (string value)
1326# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile
1327#kombu_ssl_certfile =
1328
1329# SSL certification authority file (valid only if SSL enabled). (string value)
1330# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs
1331#kombu_ssl_ca_certs =
1332
1333# How long to wait before reconnecting in response to an AMQP consumer cancel
1334# notification. (floating point value)
1335# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay
1336#kombu_reconnect_delay = 1.0
1337
1338# EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not
1339# be used. This option may notbe available in future versions. (string value)
1340#kombu_compression = <None>
1341
1342# How long to wait a missing client beforce abandoning to send it its replies.
1343# This value should not be longer than rpc_response_timeout. (integer value)
1344# Deprecated group/name - [DEFAULT]/kombu_reconnect_timeout
1345#kombu_missing_consumer_retry_timeout = 60
1346
1347# Determines how the next RabbitMQ node is chosen in case the one we are
1348# currently connected to becomes unavailable. Takes effect only if more than
1349# one RabbitMQ node is provided in config. (string value)
1350# Allowed values: round-robin, shuffle
1351#kombu_failover_strategy = round-robin
1352
1353# The RabbitMQ broker address where a single node is used. (string value)
1354# Deprecated group/name - [DEFAULT]/rabbit_host
1355#rabbit_host = localhost
1356
1357# The RabbitMQ broker port where a single node is used. (port value)
1358# Minimum value: 0
1359# Maximum value: 65535
1360# Deprecated group/name - [DEFAULT]/rabbit_port
1361#rabbit_port = 5672
1362
1363# RabbitMQ HA cluster host:port pairs. (list value)
1364# Deprecated group/name - [DEFAULT]/rabbit_hosts
1365#rabbit_hosts = $rabbit_host:$rabbit_port
Jiri Konecny93b19992016-04-12 11:15:39 +02001366#
1367{%- if server.message_queue.members is defined %}
1368rabbit_hosts = {% for member in server.message_queue.members -%}
1369 {{ member.host }}:{{ member.get('port', 5672) }}
1370 {%- if not loop.last -%},{%- endif -%}
1371 {%- endfor -%}
1372{%- else %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001373rabbit_host = {{ server.message_queue.host }}
1374rabbit_port = {{ server.message_queue.port }}
Jiri Konecny93b19992016-04-12 11:15:39 +02001375{%- endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001376
1377rabbit_userid = {{ server.message_queue.user }}
1378rabbit_password = {{ server.message_queue.password }}
1379rabbit_virtual_host = {{ server.message_queue.virtual_host }}
1380# Connect over SSL for RabbitMQ. (boolean value)
1381# Deprecated group/name - [DEFAULT]/rabbit_use_ssl
1382#rabbit_use_ssl = false
1383
1384# The RabbitMQ userid. (string value)
1385# Deprecated group/name - [DEFAULT]/rabbit_userid
1386#rabbit_userid = guest
1387
1388# The RabbitMQ password. (string value)
1389# Deprecated group/name - [DEFAULT]/rabbit_password
1390#rabbit_password = guest
1391
1392# The RabbitMQ login method. (string value)
1393# Deprecated group/name - [DEFAULT]/rabbit_login_method
1394#rabbit_login_method = AMQPLAIN
1395
1396# The RabbitMQ virtual host. (string value)
1397# Deprecated group/name - [DEFAULT]/rabbit_virtual_host
1398#rabbit_virtual_host = /
1399
1400# How frequently to retry connecting with RabbitMQ. (integer value)
1401#rabbit_retry_interval = 1
1402rabbit_retry_interval = 1
1403
1404# How long to backoff for between retries when connecting to RabbitMQ. (integer
1405# value)
1406# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff
1407#rabbit_retry_backoff = 2
1408rabbit_retry_backoff = 2
1409
1410# Maximum interval of RabbitMQ connection retries. Default is 30 seconds.
1411# (integer value)
1412#rabbit_interval_max = 30
1413
1414# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry
1415# count). (integer value)
1416# Deprecated group/name - [DEFAULT]/rabbit_max_retries
1417#rabbit_max_retries = 0
1418rabbit_max_retries = 0
1419
1420# Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this
1421# option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring
1422# is no longer controlled by the x-ha-policy argument when declaring a queue.
1423# If you just want to make sure that all queues (except those with auto-
1424# generated names) are mirrored across all nodes, run: "rabbitmqctl set_policy
1425# HA '^(?!amq\.).*' '{"ha-mode": "all"}' " (boolean value)
1426# Deprecated group/name - [DEFAULT]/rabbit_ha_queues
1427#rabbit_ha_queues = false
1428
1429# Positive integer representing duration in seconds for queue TTL (x-expires).
1430# Queues which are unused for the duration of the TTL are automatically
1431# deleted. The parameter affects only reply and fanout queues. (integer value)
1432# Minimum value: 1
1433#rabbit_transient_queues_ttl = 1800
1434
1435# Specifies the number of messages to prefetch. Setting to zero allows
1436# unlimited messages. (integer value)
1437#rabbit_qos_prefetch_count = 0
1438
1439# Number of seconds after which the Rabbit broker is considered down if
1440# heartbeat's keep-alive fails (0 disable the heartbeat). EXPERIMENTAL (integer
1441# value)
1442#heartbeat_timeout_threshold = 60
Jiri Broulik74f61112016-11-21 20:23:47 +01001443heartbeat_timeout_threshold = 0
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001444
1445# How often times during the heartbeat_timeout_threshold we check the
1446# heartbeat. (integer value)
1447#heartbeat_rate = 2
Jiri Broulik74f61112016-11-21 20:23:47 +01001448heartbeat_rate = 2
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001449
1450# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value)
1451# Deprecated group/name - [DEFAULT]/fake_rabbit
1452#fake_rabbit = false
1453
1454# Maximum number of channels to allow (integer value)
1455#channel_max = <None>
1456
1457# The maximum byte size for an AMQP frame (integer value)
1458#frame_max = <None>
1459
1460# How often to send heartbeats for consumer's connections (integer value)
1461#heartbeat_interval = 1
1462
1463# Enable SSL (boolean value)
1464#ssl = <None>
1465
1466# Arguments passed to ssl.wrap_socket (dict value)
1467#ssl_options = <None>
1468
1469# Set socket timeout in seconds for connection's socket (floating point value)
1470#socket_timeout = 0.25
1471
1472# Set TCP_USER_TIMEOUT in seconds for connection's socket (floating point
1473# value)
1474#tcp_user_timeout = 0.25
1475
1476# Set delay for reconnection to some host which has connection error (floating
1477# point value)
1478#host_connection_reconnect_delay = 0.25
1479
1480# Maximum number of connections to keep queued. (integer value)
1481#pool_max_size = 10
1482
1483# Maximum number of connections to create above `pool_max_size`. (integer
1484# value)
1485#pool_max_overflow = 0
1486
1487# Default number of seconds to wait for a connections to available (integer
1488# value)
1489#pool_timeout = 30
1490
1491# Lifetime of a connection (since creation) in seconds or None for no
1492# recycling. Expired connections are closed on acquire. (integer value)
1493#pool_recycle = 600
1494
1495# Threshold at which inactive (since release) connections are considered stale
1496# in seconds or None for no staleness. Stale connections are closed on acquire.
1497# (integer value)
1498#pool_stale = 60
1499
1500# Persist notification messages. (boolean value)
1501#notification_persistence = false
1502
1503# Exchange name for for sending notifications (string value)
1504#default_notification_exchange = ${control_exchange}_notification
1505
1506# Max number of not acknowledged message which RabbitMQ can send to
1507# notification listener. (integer value)
1508#notification_listener_prefetch_count = 100
1509
1510# Reconnecting retry count in case of connectivity problem during sending
1511# notification, -1 means infinite retry. (integer value)
1512#default_notification_retry_attempts = -1
1513
1514# Reconnecting retry delay in case of connectivity problem during sending
1515# notification message (floating point value)
1516#notification_retry_delay = 0.25
1517
1518# Time to live for rpc queues without consumers in seconds. (integer value)
1519#rpc_queue_expiration = 60
1520
1521# Exchange name for sending RPC messages (string value)
1522#default_rpc_exchange = ${control_exchange}_rpc
1523
1524# Exchange name for receiving RPC replies (string value)
1525#rpc_reply_exchange = ${control_exchange}_rpc_reply
1526
1527# Max number of not acknowledged message which RabbitMQ can send to rpc
1528# listener. (integer value)
1529#rpc_listener_prefetch_count = 100
1530
1531# Max number of not acknowledged message which RabbitMQ can send to rpc reply
1532# listener. (integer value)
1533#rpc_reply_listener_prefetch_count = 100
1534
1535# Reconnecting retry count in case of connectivity problem during sending
1536# reply. -1 means infinite retry during rpc_timeout (integer value)
1537#rpc_reply_retry_attempts = -1
1538
1539# Reconnecting retry delay in case of connectivity problem during sending
1540# reply. (floating point value)
1541#rpc_reply_retry_delay = 0.25
1542
1543# Reconnecting retry count in case of connectivity problem during sending RPC
1544# message, -1 means infinite retry. If actual retry attempts in not 0 the rpc
1545# request could be processed more then one time (integer value)
1546#default_rpc_retry_attempts = -1
1547
1548# Reconnecting retry delay in case of connectivity problem during sending RPC
1549# message (floating point value)
1550#rpc_retry_delay = 0.25
1551
1552
1553[oslo_policy]
1554
1555#
1556# From oslo.policy
1557#
1558
1559# The JSON file that defines policies. (string value)
1560# Deprecated group/name - [DEFAULT]/policy_file
1561#policy_file = policy.json
1562
1563# Default rule. Enforced when a requested rule is not found. (string value)
1564# Deprecated group/name - [DEFAULT]/policy_default_rule
1565#policy_default_rule = default
1566
1567# Directories where policy configuration files are stored. They can be relative
1568# to any directory in the search path defined by the config_dir option, or
1569# absolute paths. The file defined by policy_file must exist for these
1570# directories to be searched. Missing or empty directories are ignored. (multi
1571# valued)
1572# Deprecated group/name - [DEFAULT]/policy_dirs
1573#policy_dirs = policy.d
1574
1575
1576[quotas]
1577
1578#
1579# From neutron
1580#
1581
1582# Resource name(s) that are supported in quota features. This option is now
1583# deprecated for removal. (list value)
1584# This option is deprecated for removal.
1585# Its value may be silently ignored in the future.
1586#quota_items = network,subnet,port
1587
1588# Default number of resource allowed per tenant. A negative value means
1589# unlimited. (integer value)
1590#default_quota = -1
1591
1592# Number of networks allowed per tenant. A negative value means unlimited.
1593# (integer value)
1594#quota_network = 10
1595
1596# Number of subnets allowed per tenant, A negative value means unlimited.
1597# (integer value)
1598#quota_subnet = 10
1599
1600# Number of ports allowed per tenant. A negative value means unlimited.
1601# (integer value)
1602#quota_port = 50
1603
1604# Default driver to use for quota checks (string value)
1605#quota_driver = neutron.db.quota.driver.DbQuotaDriver
Jiri Broulik74f61112016-11-21 20:23:47 +01001606{% if server.backend.engine == "contrail" %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001607quota_driver = neutron_plugin_contrail.plugins.opencontrail.quota.driver.QuotaDriver
Jiri Broulik74f61112016-11-21 20:23:47 +01001608{% endif %}
Jakub Pavlik21f60ae2016-04-13 11:07:53 +02001609
1610# Keep in track in the database of current resourcequota usage. Plugins which
1611# do not leverage the neutron database should set this flag to False (boolean
1612# value)
1613#track_quota_usage = true
1614
1615#
1616# From neutron.extensions
1617#
1618
1619# Number of routers allowed per tenant. A negative value means unlimited.
1620# (integer value)
1621#quota_router = 10
1622
1623# Number of floating IPs allowed per tenant. A negative value means unlimited.
1624# (integer value)
1625#quota_floatingip = 50
1626
1627# Number of security groups allowed per tenant. A negative value means
1628# unlimited. (integer value)
1629#quota_security_group = 10
1630
1631# Number of security rules allowed per tenant. A negative value means
1632# unlimited. (integer value)
1633#quota_security_group_rule = 100
1634
1635
1636[ssl]
1637
1638#
1639# From oslo.service.sslutils
1640#
1641
1642# CA certificate file to use to verify connecting clients. (string value)
1643# Deprecated group/name - [DEFAULT]/ssl_ca_file
1644#ca_file = <None>
1645
1646# Certificate file to use when starting the server securely. (string value)
1647# Deprecated group/name - [DEFAULT]/ssl_cert_file
1648#cert_file = <None>
1649
1650# Private key file to use when starting the server securely. (string value)
1651# Deprecated group/name - [DEFAULT]/ssl_key_file
1652#key_file = <None>
1653
1654# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and
1655# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some
1656# distributions. (string value)
1657#version = <None>
1658
1659# Sets the list of available ciphers. value should be a string in the OpenSSL
1660# cipher list format. (string value)
1661#ciphers = <None>
1662[service_providers]
Ondrej Smola314eee22017-03-08 21:21:16 +01001663
1664{% if server.lbaas is defined -%}
1665
1666{%- if server.lbaas.enabled -%}
1667
1668{%- for lbaas_name, lbaas in server.lbaas.providers.iteritems() %}
1669
1670{%- if lbaas.engine == "avinetworks" -%}
Ondrej Smolab0208422017-06-01 23:24:44 +02001671service_provider=LOADBALANCERV2:{{ lbaas_name }}:{{ lbaas.get('driver_path', 'avi_lbaasv2.avi_driver.AviDriver') }}:default
Ondrej Smola314eee22017-03-08 21:21:16 +01001672
1673[{{ lbaas_name }}]
1674address={{ lbaas.controller_address }}
1675user={{ lbaas.controller_user }}
1676password={{ lbaas.controller_password }}
1677cloud={{ lbaas.controller_cloud_name }}
1678{%- endif -%}
1679
1680{%- endfor -%}
1681
1682{% endif %}
1683
1684{% elif server.backend.engine == "contrail" %}
1685
Petr Jediný1f37f542017-05-15 15:15:24 +02001686service_provider = LOADBALANCERV2:Opencontrail:neutron_plugin_contrail.plugins.opencontrail.loadbalancer.driver.OpencontrailLoadbalancerDummyDriver:default
Ondrej Smola314eee22017-03-08 21:21:16 +01001687
Jakub Pavlika8d9f562016-10-18 11:57:31 +02001688{% include "neutron/files/"+server.version+"/ContrailPlugin.ini" %}
Ondrej Smola314eee22017-03-08 21:21:16 +01001689
Jakub Pavlika8d9f562016-10-18 11:57:31 +02001690{% endif %}