blob: 349270e3c8862221410c0c02482b7e2003eab297 [file] [log] [blame]
Ann Taraday1570aa72018-09-07 16:11:00 +04001{%- from "octavia/map.jinja" import api with context %}
2{%- from "octavia/map.jinja" import manager with context %}
3[DEFAULT]
4
5#
6# From octavia
7#
8
9# The hostname Octavia is running on (string value)
10#host = example.domain
11
12# Name of the controller plugin to use (string value)
13#octavia_plugins = hot_plug_plugin
14
15#
16# From oslo.log
17#
18
19# If set to true, the logging level will be set to DEBUG instead of the default
20# INFO level. (boolean value)
21# Note: This option can be changed without restarting.
22#debug = false
23debug = {{ manager.get('debug', 'False') }}
24
25# DEPRECATED: If set to false, the logging level will be set to WARNING instead
26# of the default INFO level. (boolean value)
27# This option is deprecated for removal.
28# Its value may be silently ignored in the future.
29#verbose = true
30verbose = True
31
32# The name of a logging configuration file. This file is appended to any
33# existing logging configuration files. For details about logging configuration
34# files, see the Python logging module documentation. Note that when logging
35# configuration files are used then all logging configuration is set in the
36# configuration file and other logging configuration options are ignored (for
37# example, logging_context_format_string). (string value)
38# Note: This option can be changed without restarting.
39# Deprecated group/name - [DEFAULT]/log_config
40#log_config_append = <None>
41
42# Defines the format string for %%(asctime)s in log records. Default:
43# %(default)s . This option is ignored if log_config_append is set. (string
44# value)
45#log_date_format = %Y-%m-%d %H:%M:%S
46
47# (Optional) Name of log file to send logging output to. If no default is set,
48# logging will go to stderr as defined by use_stderr. This option is ignored if
49# log_config_append is set. (string value)
50# Deprecated group/name - [DEFAULT]/logfile
51#log_file = <None>
52
53# (Optional) The base directory used for relative log_file paths. This option
54# is ignored if log_config_append is set. (string value)
55# Deprecated group/name - [DEFAULT]/logdir
56#log_dir = <None>
57
58# Uses logging handler designed to watch file system. When log file is moved or
59# removed this handler will open a new log file with specified path
60# instantaneously. It makes sense only if log_file option is specified and
61# Linux platform is used. This option is ignored if log_config_append is set.
62# (boolean value)
63#watch_log_file = false
64
65# Use syslog for logging. Existing syslog format is DEPRECATED and will be
66# changed later to honor RFC5424. This option is ignored if log_config_append
67# is set. (boolean value)
68#use_syslog = false
69
70# Syslog facility to receive log lines. This option is ignored if
71# log_config_append is set. (string value)
72#syslog_log_facility = LOG_USER
73
74# Log output to standard error. This option is ignored if log_config_append is
75# set. (boolean value)
76#use_stderr = false
77
78# Format string to use for log messages with context. (string value)
79#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s
80
81# Format string to use for log messages when context is undefined. (string
82# value)
83#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s
84
85# Additional data to append to log message when logging level for the message
86# is DEBUG. (string value)
87#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d
88
89# Prefix each line of exception output with this format. (string value)
90#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s
91
92# Defines the format string for %(user_identity)s that is used in
93# logging_context_format_string. (string value)
94#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s
95
96# List of package logging levels in logger=LEVEL pairs. This option is ignored
97# if log_config_append is set. (list value)
98#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
99
100# Enables or disables publication of error events. (boolean value)
101#publish_errors = false
102
103# The format for an instance that is passed with the log message. (string
104# value)
105#instance_format = "[instance: %(uuid)s] "
106
107# The format for an instance UUID that is passed with the log message. (string
108# value)
109#instance_uuid_format = "[instance: %(uuid)s] "
110
111# Interval, number of seconds, of log rate limiting. (integer value)
112#rate_limit_interval = 0
113
114# Maximum number of logged messages per rate_limit_interval. (integer value)
115#rate_limit_burst = 0
116
117# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG
118# or empty string. Logs with level greater or equal to rate_limit_except_level
119# are not filtered. An empty string means that all levels are filtered. (string
120# value)
121#rate_limit_except_level = CRITICAL
122
123# Enables or disables fatal status of deprecations. (boolean value)
124#fatal_deprecations = false
125
126#
127# From oslo.messaging
128#
129
130# Size of RPC connection pool. (integer value)
131# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size
132#rpc_conn_pool_size = 30
133
134# The pool size limit for connections expiration policy (integer value)
135#conn_pool_min_size = 2
136
137# The time-to-live in sec of idle connections in the pool (integer value)
138#conn_pool_ttl = 1200
139
140# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP.
141# The "host" option should point or resolve to this address. (string value)
142# Deprecated group/name - [DEFAULT]/rpc_zmq_bind_address
143#rpc_zmq_bind_address = *
144
145# MatchMaker driver. (string value)
146# Allowed values: redis, sentinel, dummy
147# Deprecated group/name - [DEFAULT]/rpc_zmq_matchmaker
148#rpc_zmq_matchmaker = redis
149
150# Number of ZeroMQ contexts, defaults to 1. (integer value)
151# Deprecated group/name - [DEFAULT]/rpc_zmq_contexts
152#rpc_zmq_contexts = 1
153
154# Maximum number of ingress messages to locally buffer per topic. Default is
155# unlimited. (integer value)
156# Deprecated group/name - [DEFAULT]/rpc_zmq_topic_backlog
157#rpc_zmq_topic_backlog = <None>
158
159# Directory for holding IPC sockets. (string value)
160# Deprecated group/name - [DEFAULT]/rpc_zmq_ipc_dir
161#rpc_zmq_ipc_dir = /var/run/openstack
162
163# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match
164# "host" option, if running Nova. (string value)
165# Deprecated group/name - [DEFAULT]/rpc_zmq_host
166#rpc_zmq_host = localhost
167
168# Number of seconds to wait before all pending messages will be sent after
169# closing a socket. The default value of -1 specifies an infinite linger
170# period. The value of 0 specifies no linger period. Pending messages shall be
171# discarded immediately when the socket is closed. Positive values specify an
172# upper bound for the linger period. (integer value)
173# Deprecated group/name - [DEFAULT]/rpc_cast_timeout
174#zmq_linger = -1
175
176# The default number of seconds that poll should wait. Poll raises timeout
177# exception when timeout expired. (integer value)
178# Deprecated group/name - [DEFAULT]/rpc_poll_timeout
179#rpc_poll_timeout = 1
180
181# Expiration timeout in seconds of a name service record about existing target
182# ( < 0 means no timeout). (integer value)
183# Deprecated group/name - [DEFAULT]/zmq_target_expire
184#zmq_target_expire = 300
185
186# Update period in seconds of a name service record about existing target.
187# (integer value)
188# Deprecated group/name - [DEFAULT]/zmq_target_update
189#zmq_target_update = 180
190
191# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean
192# value)
193# Deprecated group/name - [DEFAULT]/use_pub_sub
194#use_pub_sub = false
195
196# Use ROUTER remote proxy. (boolean value)
197# Deprecated group/name - [DEFAULT]/use_router_proxy
198#use_router_proxy = false
199
200# This option makes direct connections dynamic or static. It makes sense only
201# with use_router_proxy=False which means to use direct connections for direct
202# message types (ignored otherwise). (boolean value)
203#use_dynamic_connections = false
204
205# How many additional connections to a host will be made for failover reasons.
206# This option is actual only in dynamic connections mode. (integer value)
207#zmq_failover_connections = 2
208
209# Minimal port number for random ports range. (port value)
210# Minimum value: 0
211# Maximum value: 65535
212# Deprecated group/name - [DEFAULT]/rpc_zmq_min_port
213#rpc_zmq_min_port = 49153
214
215# Maximal port number for random ports range. (integer value)
216# Minimum value: 1
217# Maximum value: 65536
218# Deprecated group/name - [DEFAULT]/rpc_zmq_max_port
219#rpc_zmq_max_port = 65536
220
221# Number of retries to find free port number before fail with ZMQBindError.
222# (integer value)
223# Deprecated group/name - [DEFAULT]/rpc_zmq_bind_port_retries
224#rpc_zmq_bind_port_retries = 100
225
226# Default serialization mechanism for serializing/deserializing
227# outgoing/incoming messages (string value)
228# Allowed values: json, msgpack
229# Deprecated group/name - [DEFAULT]/rpc_zmq_serialization
230#rpc_zmq_serialization = json
231
232# This option configures round-robin mode in zmq socket. True means not keeping
233# a queue when server side disconnects. False means to keep queue and messages
234# even if server is disconnected, when the server appears we send all
235# accumulated messages to it. (boolean value)
236#zmq_immediate = true
237
238# Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any
239# other negative value) means to skip any overrides and leave it to OS default;
240# 0 and 1 (or any other positive value) mean to disable and enable the option
241# respectively. (integer value)
242#zmq_tcp_keepalive = -1
243
244# The duration between two keepalive transmissions in idle condition. The unit
245# is platform dependent, for example, seconds in Linux, milliseconds in Windows
246# etc. The default value of -1 (or any other negative value and 0) means to
247# skip any overrides and leave it to OS default. (integer value)
248#zmq_tcp_keepalive_idle = -1
249
250# The number of retransmissions to be carried out before declaring that remote
251# end is not available. The default value of -1 (or any other negative value
252# and 0) means to skip any overrides and leave it to OS default. (integer
253# value)
254#zmq_tcp_keepalive_cnt = -1
255
256# The duration between two successive keepalive retransmissions, if
257# acknowledgement to the previous keepalive transmission is not received. The
258# unit is platform dependent, for example, seconds in Linux, milliseconds in
259# Windows etc. The default value of -1 (or any other negative value and 0)
260# means to skip any overrides and leave it to OS default. (integer value)
261#zmq_tcp_keepalive_intvl = -1
262
263# Maximum number of (green) threads to work concurrently. (integer value)
264#rpc_thread_pool_size = 100
265
266# Expiration timeout in seconds of a sent/received message after which it is
267# not tracked anymore by a client/server. (integer value)
268#rpc_message_ttl = 300
269
270# Wait for message acknowledgements from receivers. This mechanism works only
271# via proxy without PUB/SUB. (boolean value)
272#rpc_use_acks = false
273
274# Number of seconds to wait for an ack from a cast/call. After each retry
275# attempt this timeout is multiplied by some specified multiplier. (integer
276# value)
277#rpc_ack_timeout_base = 15
278
279# Number to multiply base ack timeout by after each retry attempt. (integer
280# value)
281#rpc_ack_timeout_multiplier = 2
282
283# Default number of message sending attempts in case of any problems occurred:
284# positive value N means at most N retries, 0 means no retries, None or -1 (or
285# any other negative values) mean to retry forever. This option is used only if
286# acknowledgments are enabled. (integer value)
287#rpc_retry_attempts = 3
288
289# List of publisher hosts SubConsumer can subscribe on. This option has higher
290# priority then the default publishers list taken from the matchmaker. (list
291# value)
292#subscribe_on =
293
294# Size of executor thread pool. (integer value)
295# Deprecated group/name - [DEFAULT]/rpc_thread_pool_size
296#executor_thread_pool_size = 64
297
298# Seconds to wait for a response from a call. (integer value)
299#rpc_response_timeout = 60
300
301# A URL representing the messaging driver to use and its full configuration.
302# (string value)
303#transport_url = <None>
304{%- if manager.message_queue.members is defined %}
305transport_url = rabbit://{% for member in manager.message_queue.members -%}
306 {{ manager.message_queue.user }}:{{ manager.message_queue.password }}@{{ member.host }}:{{ member.get('port', 5672) }}
307 {%- if not loop.last -%},{%- endif -%}
308 {%- endfor -%}
309 /{{ manager.message_queue.virtual_host }}
310{%- else %}
311transport_url = rabbit://{{ manager.message_queue.user }}:{{ manager.message_queue.password }}@{{ manager.message_queue.host }}:{{ manager.message_queue.port }}/{{ manager.message_queue.virtual_host }}
312{%- endif %}
313
314# DEPRECATED: The messaging driver to use, defaults to rabbit. Other drivers
315# include amqp and zmq. (string value)
316# This option is deprecated for removal.
317# Its value may be silently ignored in the future.
318# Reason: Replaced by [DEFAULT]/transport_url
319#rpc_backend = rabbit
320
321# The default exchange under which topics are scoped. May be overridden by an
322# exchange name specified in the transport_url option. (string value)
323#control_exchange = octavia
324
325#
326# From oslo.service.service
327#
328
329# Enable eventlet backdoor. Acceptable values are 0, <port>, and
330# <start>:<end>, where 0 results in listening on a random tcp port number;
331# <port> results in listening on the specified port number (and not enabling
332# backdoor if that port is in use); and <start>:<end> results in listening on
333# the smallest unused port number within the specified range of port numbers.
334# The chosen port is displayed in the service's log file. (string value)
335#backdoor_port = <None>
336
337# Enable eventlet backdoor, using the provided path as a unix socket that can
338# receive connections. This option is mutually exclusive with 'backdoor_port'
339# in that only one should be provided. If both are provided then the existence
340# of this option overrides the usage of that option. (string value)
341#backdoor_socket = <None>
342
343# Enables or disables logging values of all registered options when starting a
344# service (at DEBUG level). (boolean value)
345#log_options = true
346
347# Specify a timeout after which a gracefully shutdown server will exit. Zero
348# value means endless wait. (integer value)
349#graceful_shutdown_timeout = 60
350
351
352[api_settings]
353
354#
355# From octavia
356#
357
358# The host IP to bind to (IP address value)
359#bind_host = 127.0.0.1
360{%- if pillar.octavia.api is defined %}
361bind_host = {{ api.bind.address }}
362{% endif %}
363
364# The port to bind to (port value)
365# Minimum value: 0
366# Maximum value: 65535
367#bind_port = 9876
368{%- if pillar.octavia.api is defined %}
369bind_port = {{ api.bind.port }}
370{% endif %}
371
372# The auth strategy for API requests. (string value)
373# Allowed values: noauth, keystone
374#auth_strategy = keystone
375
376# The handler that the API communicates with (string value)
377#api_handler = queue_producer
378
379# Allow the usage of the pagination (boolean value)
380#allow_pagination = false
381
382# Allow the usage of the sorting (boolean value)
383#allow_sorting = false
384
385# Allow the usage of the filtering (boolean value)
386#allow_filtering = false
387
388# Allow the usage of the field selection (boolean value)
389#allow_field_selection = false
390
391# The maximum number of items returned in a single response.
392# The string 'infinite' or a negative integer value means 'no limit'
393#pagination_max_limit = 'infinite'
394
395# Base URI for the API for use in pagination links.
396# This will be autodetected from the request if not overridden here.
397#api_base_uri = ''
398
399# Enable/disable exposing API endpoints (boolean value)
400# api_v1_enabled = True
401# api_v2_enabled = True
402
403{%- if pillar.octavia.api is defined %}
404api_v1_enabled = {{ api.get('api_v1_enabled', 'True') }}
405api_v2_enabled = {{ api.get('api_v2_enabled', 'True') }}
406{% endif %}
407
408# Allow users to create TLS Terminated listeners
409#allow_tls_terminated_listeners = True
410
411[amphora_agent]
412
413#
414# From octavia
415#
416
417# The ca which signed the client certificates (string value)
418#agent_server_ca = /etc/octavia/certs/client_ca.pem
419
420# The server certificate for the agent.py server to use (string value)
421#agent_server_cert = /etc/octavia/certs/server.pem
422
423# The directory where new network interfaces are located (string value)
424#agent_server_network_dir = <None>
425
426# The file where the network interfaces are located. Specifying this will
427# override any value set for agent_server_network_dir. (string value)
428#agent_server_network_file = <None>
429
430# The time in seconds to allow a request from the controller to run before
431# terminating the socket. (integer value)
432#agent_request_read_timeout = 120
433
434# The amphora ID. (string value)
435#amphora_id = <None>
436
437[certificates]
438
439#
440# From octavia
441#
442
443# Absolute path to the CA Certificate for signing. Defaults
444# to env[OS_OCTAVIA_TLS_CA_CERT].
445# ca_certificate = /etc/ssl/certs/ssl-cert-snakeoil.pem
446ca_certificate = {{ manager.certificates.ca_certificate }}
447
448# Absolute path to the Private Key for signing. Defaults
449# to env[OS_OCTAVIA_TLS_CA_KEY].
450# ca_private_key = /etc/ssl/private/ssl-cert-snakeoil.key
451ca_private_key = {{ manager.certificates.ca_private_key }}
452
453# Passphrase for the Private Key. Defaults
454# to env[OS_OCTAVIA_CA_KEY_PASS] or None.
455# ca_private_key_passphrase =
456
457# Certificate signing digest. Defaults
458# to env[OS_OCTAVIA_CA_SIGNING_DIGEST] or "sha256".
459# signing_digest = sha256
460
461# Absolute path to the certificate storage directory.
462# Defaults to env[OS_OCTAVIA_TLS_STORAGE].
463# storage_path = /var/lib/octavia/certificates/
464
465# Name of the cert manager to use (string value)
466#cert_manager = barbican_cert_manager
467
468# Name of the cert generator to use (string value)
469#cert_generator = local_cert_generator
470
471# Name of the Barbican authentication method to use (string value)
472#barbican_auth = barbican_acl_auth
473
474# The name of the certificate service in the keystonecatalog (string value)
475#service_name = <None>
476
477# A new endpoint to override the endpoint in the keystone catalog. (string
478# value)
479#endpoint = <None>
480
481# Region in Identity service catalog to use for communication with the barbican
482# service. (string value)
483#region_name = <None>
484
485# The endpoint_type to be used for barbican service. (string value)
486#endpoint_type = publicURL
487endpoint_type = {{ manager.identity.get('endpoint_type', 'public') }}
488
489# CA certificates file path (string value)
490#ca_certificates_file = <None>
491
492# Disable certificate validation on SSL connections (boolean value)
493#insecure = false
494
495[controller_worker]
496
497#
498# From octavia
499#
500
501# Retry attempts to wait for Amphora to become active (integer value)
502#amp_active_retries = 10
503amp_active_retries = 100
504
505# Seconds to wait between checks on whether an Amphora has become active
506# (integer value)
507#amp_active_wait_sec = 10
508amp_active_wait_sec = 2
509
510# Nova instance flavor id for the Amphora (string value)
511#amp_flavor_id =
512amp_flavor_id = {{ manager.controller_worker.amp_flavor_id }}
513
514# Glance image tag for the Amphora image to boot. Use this option to be able to
515# update the image without reconfiguring Octavia. Ignored if amp_image_id is
516# defined. (string value)
517#amp_image_tag =
518amp_image_tag = {{ manager.controller_worker.amp_image_tag }}
519
520# DEPRECATED: Glance image id for the Amphora image to boot (string value)
521# This option is deprecated for removal.
522# Its value may be silently ignored in the future.
523# Reason: Superseded by amp_image_tag option.
524#amp_image_id =
525
526# Restrict glance image selection to a specific owner ID. This is a
527# recommended security setting. (string value)
528#amp_image_owner_id =
529amp_image_owner_id = {{ amp_image_owner_id }}
530
531# SSH key name used to boot the Amphora (string value)
532#amp_ssh_key_name =
533amp_ssh_key_name = {{ manager.controller_worker.amp_ssh_key_name }}
534
535# Determines whether or not to allow access to the Amphorae (boolean value)
536#amp_ssh_access_allowed = true
537
538# List of networks to attach to the Amphorae. All networks defined in the list
539# will be attached to each amphora. (list value)
540#amp_boot_network_list =
541amp_boot_network_list = {{ amp_boot_network_list }}
542
543# DEPRECATED: Network to attach to the Amphorae. (string value)
544# This option is deprecated for removal.
545# Its value may be silently ignored in the future.
546# Reason: Replaced by amp_boot_network_list.
547#amp_network =
548
549# List of security groups to attach to the Amphora. (list value)
550#amp_secgroup_list =
551amp_secgroup_list = {{ amp_secgroup_list }}
552
553# Client CA for the amphora agent to use (string value)
554#client_ca = /etc/octavia/certs/ca_01.pem
Ann Taradayddb4fee2018-12-18 19:32:18 +0400555client_ca = {{ manager.haproxy_amphora.server_ca }}
Ann Taraday1570aa72018-09-07 16:11:00 +0400556
557# Name of the amphora driver to use (string value)
558#amphora_driver = amphora_noop_driver
559amphora_driver = amphora_haproxy_rest_driver
560
561# Name of the compute driver to use (string value)
562#compute_driver = compute_noop_driver
563compute_driver = compute_nova_driver
564
565# Name of the network driver to use (string value)
566#network_driver = network_noop_driver
567network_driver = allowed_address_pairs_driver
568
569# Distributor driver options are distributor_noop_driver
570# single_VIP_amphora
571#
572# distributor_driver = distributor_noop_driver
573
574# Load balancer topology configuration. SINGLE - One amphora per load balancer.
575# ACTIVE_STANDBY - Two amphora per load balancer. (string value)
576# Allowed values: ACTIVE_STANDBY, SINGLE
577#loadbalancer_topology = SINGLE
578loadbalancer_topology = {{ manager.controller_worker.loadbalancer_topology }}
579
580# If True, build cloud-init user-data that is passed to the config drive on
581# Amphora boot instead of personality files. If False, utilize personality
582# files. (boolean value)
583#user_data_config_drive = false
584
585[cors]
Ann Taraday1570aa72018-09-07 16:11:00 +0400586{%- if pillar.octavia.api is defined %}
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +0400587{%- if api.cors is defined %}
588{%- set _data = api.cors %}
589{%- include "oslo_templates/files/queens/oslo/_cors.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400590{%- endif %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400591{%- endif %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400592
593[database]
594
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +0400595{%- set _data = manager.database %}
596{%- include "oslo_templates/files/queens/oslo/_database.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400597
598[glance]
599
600#
601# From octavia
602#
603
604# The name of the glance service in the keystone catalog (string value)
605#service_name = <None>
606
607# A new endpoint to override the endpoint in the keystone catalog. (string
608# value)
609#endpoint = <None>
610
611# Region in Identity service catalog to use for communication with the
612# OpenStack services. (string value)
613#region_name = <None>
614
615# Endpoint interface in identity service to use (string value)
616#endpoint_type = publicURL
617endpoint_type = {{ manager.identity.get('endpoint_type', 'public') }}
618
619# CA certificates file path (string value)
620#ca_certificates_file = <None>
621
622# Disable certificate validation on SSL connections (boolean value)
623#insecure = false
624
625[haproxy_amphora]
626
627#
628# From octavia
629#
630
631# Base directory for amphora files. (string value)
632#base_path = /var/lib/octavia
633base_path = /var/lib/octavia
634
635# Base directory for cert storage. (string value)
636#base_cert_dir = /var/lib/octavia/certs
637base_cert_dir = /var/lib/octavia/certs
638
639# Custom haproxy template. (string value)
640#haproxy_template = <None>
641
642# Retry threshold for connecting to amphorae. (integer value)
643#connection_max_retries = 300
644connection_max_retries = 1500
645
646# Retry timeout between connection attempts in seconds. (integer value)
647#connection_retry_interval = 5
648connection_retry_interval = 1
649
650# Number of amphorae that could be built per controller worker, simultaneously.
651#build_rate_limit=-1
652
653# Retry threshold for waiting for a build slot for an amphorae.
654#build_active_retries=300
655
656# Retry timeout between build attempts in seconds.
657#build_retry_interval=5
658
659# The user group for haproxy to run under inside the amphora. (string value)
660#user_group = nogroup
661
662# Size of the HAProxy stick table. Accepts k, m, g suffixes. Example: 10k
663# (string value)
664#haproxy_stick_size = 10k
665
666# The host IP to bind to (IP address value)
667#bind_host = ::
668
669# The port to bind to (port value)
670# Minimum value: 0
671# Maximum value: 65535
672#bind_port = 9443
673
674# Network interface through which to reach amphora, only required if using IPv6
675# link local addresses. (string value)
676#lb_network_interface = o-hm0
677
678# The full path to haproxy (string value)
679#haproxy_cmd = /usr/sbin/haproxy
680
681# The respawn count for haproxy's upstart script (integer value)
682#respawn_count = 2
683
684# The respawn interval for haproxy's upstart script (integer value)
685#respawn_interval = 2
686
687# The time in seconds to wait for a REST API to connect. (floating point value)
688#rest_request_conn_timeout = 10
689rest_request_conn_timeout = 10
690
691# The time in seconds to wait for a REST API response. (floating point value)
692#rest_request_read_timeout = 60
693rest_request_read_timeout = 120
694
695# These "active" timeouts are used once the amphora should already
696# be fully up and active. These values are lower than the other values to
697# facilitate "fail fast" scenarios like failovers
698# active_connection_max_retries = 15
699# active_connection_rety_interval = 2
700
701# The client certificate to talk to the agent (string value)
702#client_cert = /etc/octavia/certs/client.pem
703client_cert = {{ manager.haproxy_amphora.client_cert_all }}
704
705# The ca which signed the server certificates (string value)
706#server_ca = /etc/octavia/certs/server_ca.pem
707server_ca = {{ manager.haproxy_amphora.server_ca }}
708
709# DEPRECATED: If False, use sysvinit. (boolean value)
710# This option is deprecated for removal.
711# Its value may be silently ignored in the future.
712# Reason: This is now automatically discovered and configured.
713#use_upstart = true
714
715[health_manager]
716
717#
718# From octavia
719#
720
721# IP address the controller will listen on for heart beats (IP address value)
722#bind_ip = 127.0.0.1
723bind_ip = {{ manager.health_manager.bind_ip }}
724
725# Port number the controller will listen on for heart beats (port value)
726# Minimum value: 0
727# Maximum value: 65535
728#bind_port = 5555
Ann Kamyshnikova34f98b32018-11-28 16:08:06 +0400729bind_port = {{ manager.health_manager.get('bind_port', 5555) }}
Ann Taraday1570aa72018-09-07 16:11:00 +0400730
731# Number of threads performing amphora failovers. (integer value)
732#failover_threads = 10
733
734# status_update_threads will default to the number of processors on the host
735# status_update_threads =
736
737# key used to validate amphora sending the message (string value)
738#heartbeat_key = <None>
739heartbeat_key = {{ manager.health_manager.heartbeat_key }}
740
741# Interval, in seconds, to wait before failing over an amphora. (integer value)
742#heartbeat_timeout = 60
743
744# Sleep time between health checks in seconds. (integer value)
745#health_check_interval = 3
746
747# sets the value of the heartbeat recv buffer (integer value)
748#sock_rlimit = 0
749
750# Health/StatsUpdate options are
751# *_db
752# *_logger
753# health_update_driver = health_db
754# stats_update_driver = stats_db
755
756# List of controller ip and port pairs for the heartbeat receivers. Example
757# 127.0.0.1:5555, 192.168.0.1:5555 (list value)
758#controller_ip_port_list =
Ann Kamyshnikova34f98b32018-11-28 16:08:06 +0400759{%- if manager.health_manager.controller_ip_port_list is defined %}
760controller_ip_port_list = {{ manager.health_manager.controller_ip_port_list }}
761{%- else %}
762controller_ip_port_list = {{ manager.health_manager.bind_ip }}:{{ manager.health_manager.get('bind_port', 5555) }}
763{%- endif %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400764
765# Sleep time between sending heartbeats. (integer value)
766#heartbeat_interval = 10
767
768# Specifies which driver to use for the event_streamer for syncing the octavia
769# and neutron_lbaas dbs. If you don't need to sync the database or are running
770# octavia in stand alone mode use the noop_event_streamer (string value)
771#event_streamer_driver = noop_event_streamer
772
773[house_keeping]
774
775#
776# From octavia
777#
778
779# Spare check interval in seconds (integer value)
780#spare_check_interval = 30
781
782# Number of spare amphorae (integer value)
783#spare_amphora_pool_size = 0
784spare_amphora_pool_size = {{ manager.house_keeping.spare_amphora_pool_size }}
785
786# DB cleanup interval in seconds (integer value)
787#cleanup_interval = 30
788
789# Amphora expiry age in seconds (integer value)
790#amphora_expiry_age = 604800
791amphora_expiry_age = 3600
792
793# Load balancer expiry age in seconds (integer value)
794#load_balancer_expiry_age = 604800
795load_balancer_expiry_age = 3600
796
797# Certificate check interval in seconds (integer value)
798#cert_interval = 3600
799
800# Seconds until certificate expiration (integer value)
801#cert_expiry_buffer = 1209600
802
803# Number of threads performing amphora certificate rotation (integer value)
804#cert_rotate_threads = 10
805
806[keepalived_vrrp]
807
808#
809# From octavia
810#
811
812# Amphora role and priority advertisement interval in seconds. (integer value)
813#vrrp_advert_int = 1
814
815# VRRP check script run interval in seconds. (integer value)
816#vrrp_check_interval = 5
817
818# Number of successive failures before transition to a fail state. (integer
819# value)
820#vrrp_fail_count = 2
821
822# Number of consecutive successes before transition to a success state.
823# (integer value)
824#vrrp_success_count = 2
825
826# Time in seconds between gratuitous ARP announcements from the MASTER.
827# (integer value)
828#vrrp_garp_refresh_interval = 5
829
830# Number of gratuitous ARP announcements to make on each refresh interval.
831# (integer value)
832#vrrp_garp_refresh_count = 2
833
834[keystone_authtoken]
835
836#
837# From keystonemiddleware.auth_token
838#
839
840# Complete "public" Identity API endpoint. This endpoint should not be an
841# "admin" endpoint, as it should be accessible by all end users.
842# Unauthenticated clients are redirected to this endpoint to authenticate.
843# Although this endpoint should ideally be unversioned, client support in the
844# wild varies. If you're using a versioned v2 endpoint here, then this should
845# *not* be the same endpoint the service user utilizes for validating tokens,
846# because normal end users may not be able to reach that endpoint. (string
847# value)
848# The www_authenticate_uri is the public endpoint and is returned in headers on a 401
849# auth_uri = https://localhost:5000/v3 # www_authenticate_uri
850auth_uri=http://{{ manager.identity.host }}:5000/v3
851
852# The auth_url is the admin endpoint actually used for validating tokens
853#auth_url = <None>
854auth_url=http://{{ manager.identity.host }}:35357
855
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +0400856{%- set _data = manager.identity %}
857{%- set auth_type = _data.get('auth_type', 'password') %}
858{%- include "oslo_templates/files/queens/keystonemiddleware/_auth_token.conf" %}
859{%- include "oslo_templates/files/queens/keystoneauth/_type_" + auth_type + ".conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +0400860
861[matchmaker_redis]
862
863#
864# From oslo.messaging
865#
866
867# DEPRECATED: Host to locate redis. (string value)
868# This option is deprecated for removal.
869# Its value may be silently ignored in the future.
870# Reason: Replaced by [DEFAULT]/transport_url
871#host = 127.0.0.1
872
873# DEPRECATED: Use this port to connect to redis host. (port value)
874# Minimum value: 0
875# Maximum value: 65535
876# This option is deprecated for removal.
877# Its value may be silently ignored in the future.
878# Reason: Replaced by [DEFAULT]/transport_url
879#port = 6379
880
881# DEPRECATED: Password for Redis server (optional). (string value)
882# This option is deprecated for removal.
883# Its value may be silently ignored in the future.
884# Reason: Replaced by [DEFAULT]/transport_url
885#password =
886
887# DEPRECATED: List of Redis Sentinel hosts (fault tolerance mode), e.g.,
888# [host:port, host1:port ... ] (list value)
889# This option is deprecated for removal.
890# Its value may be silently ignored in the future.
891# Reason: Replaced by [DEFAULT]/transport_url
892#sentinel_hosts =
893
894# Redis replica set name. (string value)
895#sentinel_group_name = oslo-messaging-zeromq
896
897# Time in ms to wait between connection attempts. (integer value)
898#wait_timeout = 2000
899
900# Time in ms to wait before the transaction is killed. (integer value)
901#check_timeout = 20000
902
903# Timeout in ms on blocking socket operations. (integer value)
904#socket_timeout = 10000
905
906[networking]
907
908#
909# From octavia
910#
911
912# The maximum attempts to retry an action with the networking service. (integer
913# value)
914#max_retries = 15
915
916# Seconds to wait before retrying an action with the networking service.
917# (integer value)
918#retry_interval = 1
919
920# Seconds to wait for a port to detach from an amphora. (integer value)
921#port_detach_timeout = 300
922
923# Can users supply a network_id for their VIP ? (boolean value)
924#allow_vip_network_id = True
925
926# Can users supply a subnet_id for their VIP ? (boolean value)
927#allow_vip_port_id = True
928
929# List of network_ids that are valid for VIP creation.
930# If this field is empty, no validation is performed.
931#valid_vip_networks = <None>
932
933[neutron]
934
935#
936# From octavia
937#
938
939# The name of the neutron service in the keystone catalog (string value)
940#service_name = <None>
941
942# A new endpoint to override the endpoint in the keystone catalog. (string
943# value)
944#endpoint = <None>
945
946# Region in Identity service catalog to use for communication with the
947# OpenStack services. (string value)
948#region_name = <None>
949
950# Endpoint interface in identity service to use (string value)
951#endpoint_type = publicURL
952endpoint_type = {{ manager.identity.get('endpoint_type', 'public') }}
953
954# CA certificates file path (string value)
955#ca_certificates_file = <None>
956
957# Disable certificate validation on SSL connections (boolean value)
958#insecure = false
959
960[nova]
961
962#
963# From octavia
964#
965
966# The name of the nova service in the keystone catalog (string value)
967#service_name = <None>
968
969# A new endpoint to override the endpoint in the keystone catalog. (string
970# value)
971#endpoint = <None>
972
973# Region in Identity service catalog to use for communication with the
974# OpenStack services. (string value)
975#region_name = <None>
976
977# Endpoint interface in identity service to use (string value)
978#endpoint_type = publicURL
979endpoint_type = {{ manager.identity.get('endpoint_type', 'public') }}
980
981# CA certificates file path (string value)
982#ca_certificates_file = <None>
983
984# Disable certificate validation on SSL connections (boolean value)
985#insecure = false
986
987# Flag to indicate if nova anti-affinity feature is turned on. (boolean value)
988#enable_anti_affinity = false
989
990[oslo_messaging]
991
992#
993# From octavia
994#
995
996# (string value)
997#topic = <None>
998topic = octavia_prov
999
1000# topic name for communicating events through a queue (string value)
1001#event_stream_topic = neutron_lbaas_event
1002
1003# Transport URL to use for the neutron-lbaas synchronization event stream
1004# when neutron and octavia have separate queues.
1005# For Single Host, specify one full transport URL:
1006# event_stream_transport_url = rabbit://<user>:<pass>@127.0.0.1:5672/<vhost>
1007# For HA, specify queue nodes in cluster, comma delimited:
1008# event_stream_transport_url = rabbit://<user>:<pass>@server01,<user>:<pass>@server02/<vhost>
1009# event_stream_transport_url =
1010
1011[oslo_messaging_amqp]
1012
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001013{%- set _data = manager %}
1014{%- include "oslo_templates/files/queens/oslo/messaging/_amqp.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001015
1016[oslo_messaging_kafka]
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001017{%- include "oslo_templates/files/queens/oslo/messaging/_kafka.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001018
1019
1020[oslo_messaging_notifications]
1021
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001022{%- set _data = manager.get('notification', {}) %}
1023{%- include "oslo_templates/files/queens/oslo/messaging/_notifications.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001024
1025[oslo_messaging_rabbit]
1026
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001027{%- set _data = manager %}
1028{%- include "oslo_templates/files/queens/oslo/messaging/_rabbit.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001029
1030[oslo_messaging_zmq]
1031
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001032{%- set _data = manager %}
1033{%- include "oslo_templates/files/queens/oslo/messaging/_zmq.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001034
1035[oslo_policy]
1036
Ann Kamyshnikovad9e40c72019-01-17 14:50:11 +04001037{%- set _data = manager.get('policy', {}) %}
1038{%- include "oslo_templates/files/queens/oslo/_policy.conf" %}
Ann Taraday1570aa72018-09-07 16:11:00 +04001039
1040[service_auth]
1041
1042#
1043# From octavia
1044#
1045
1046# Authentication URL (string value)
1047#auth_url = <None>
1048auth_url=http://{{ manager.identity.host }}:35357
1049
1050# Authentication type to load (string value)
1051# Deprecated group/name - [service_auth]/auth_plugin
1052#auth_type = <None>
1053auth_type = password
1054
1055# PEM encoded Certificate Authority to use when verifying HTTPs connections.
1056# (string value)
1057#cafile = <None>
1058
1059# PEM encoded client certificate cert file (string value)
1060#certfile = <None>
1061
1062# Optional domain ID to use with v3 and v2 parameters. It will be used for both
1063# the user and project domain in v3 and ignored in v2 authentication. (string
1064# value)
1065#default_domain_id = <None>
1066
1067# Optional domain name to use with v3 API and v2 parameters. It will be used
1068# for both the user and project domain in v3 and ignored in v2 authentication.
1069# (string value)
1070#default_domain_name = <None>
1071
1072# Domain ID to scope to (string value)
1073#domain_id = <None>
1074
1075# Domain name to scope to (string value)
1076#domain_name = <None>
1077
1078# Verify HTTPS connections. (boolean value)
1079#insecure = false
1080
1081# PEM encoded client certificate key file (string value)
1082#keyfile = <None>
1083
1084# User's password (string value)
1085#password = <None>
1086password = {{ manager.identity.password }}
1087
1088# Domain ID containing project (string value)
1089#project_domain_id = <None>
1090project_domain_id = {{ manager.identity.get('domain', 'default') }}
1091
1092# Domain name containing project (string value)
1093#project_domain_name = <None>
1094
1095# Project ID to scope to (string value)
1096# Deprecated group/name - [service_auth]/tenant-id
1097#project_id = <None>
1098
1099# Project name to scope to (string value)
1100# Deprecated group/name - [service_auth]/tenant-name
1101#project_name = <None>
1102project_name = {{ manager.identity.tenant }}
1103
1104# Tenant ID (string value)
1105#tenant_id = <None>
1106
1107# Tenant Name (string value)
1108#tenant_name = <None>
1109
1110# Timeout value for http requests (integer value)
1111#timeout = <None>
1112
1113# Trust ID (string value)
1114#trust_id = <None>
1115
1116# User's domain id (string value)
1117#user_domain_id = <None>
1118user_domain_id = {{ manager.identity.get('domain', 'default') }}
1119
1120# User's domain name (string value)
1121#user_domain_name = <None>
1122
1123# User id (string value)
1124#user_id = <None>
1125
1126# Username (string value)
1127# Deprecated group/name - [service_auth]/user-name
1128#username = <None>
1129username = {{ manager.identity.user }}
1130
1131[task_flow]
1132
1133#
1134# From octavia
1135#
1136
1137# TaskFlow engine to use (string value)
1138#engine = serial
1139
1140# The maximum number of workers (integer value)
1141#max_workers = 5