
Pools, targets, etc. are now configured via a pools.yaml file and imported with designate-manage. This change updates our designate.conf.j2 to reflect this. See https://review.openstack.org/#/c/301868/ for the associated upstream designate change. Change-Id: I8af0859c70e00d3e7e2ba1391d7689b4c807da0f
430 lines
11 KiB
Django/Jinja
430 lines
11 KiB
Django/Jinja
[DEFAULT]
|
|
|
|
########################
|
|
## General Configuration
|
|
########################
|
|
# Show more verbose log output (sets INFO log level output)
|
|
verbose = {{ verbose }}
|
|
|
|
# Show debugging output in logs (sets DEBUG log level output)
|
|
debug = {{ debug }}
|
|
|
|
# Top-level directory for maintaining designate's state
|
|
#state_path = /var/lib/designate
|
|
|
|
# Log Configuration
|
|
#log_config = None
|
|
|
|
# Log directory
|
|
#logdir = /var/log/designate
|
|
|
|
{% if designate_ceilometer_enabled | bool %}
|
|
# Driver used for issuing notifications
|
|
notification_driver = messagingv2
|
|
{% endif %}
|
|
|
|
# Root helper
|
|
root_helper = sudo designate-rootwrap /etc/designate/rootwrap.conf
|
|
|
|
# Which networking API to use, Defaults to neutron
|
|
#network_api = neutron
|
|
|
|
# RabbitMQ Config
|
|
[oslo_messaging_rabbit]
|
|
rpc_backend = rabbit
|
|
rabbit_port = {{ rabbitmq_port }}
|
|
rabbit_userid = {{ designate_rabbitmq_userid }}
|
|
rabbit_password = {{ designate_rabbitmq_password }}
|
|
rabbit_virtual_host = {{ designate_rabbitmq_vhost }}
|
|
rabbit_hosts = {{ rabbitmq_servers }}
|
|
rabbit_use_ssl = {{ rabbitmq_use_ssl }}
|
|
rabbit_notification_exchange = designate
|
|
rabbit_notification_topic = notifications
|
|
|
|
########################
|
|
## Service Configuration
|
|
########################
|
|
#-----------------------
|
|
# Central Service
|
|
#-----------------------
|
|
[service:central]
|
|
# Number of central worker processes to spawn
|
|
#workers = None
|
|
|
|
# Number of central greenthreads to spawn
|
|
#threads = 1000
|
|
|
|
# Maximum domain name length
|
|
#max_domain_name_len = 255
|
|
|
|
# Maximum recordset name length
|
|
#max_recordset_name_len = 255
|
|
|
|
# Minimum TTL
|
|
#min_ttl = None
|
|
|
|
# The name of the default pool
|
|
#default_pool_id = '794ccc2c-d751-44fe-b57f-8894c9f5c842'
|
|
|
|
## Managed resources settings
|
|
|
|
# Email to use for managed resources like domains created by the FloatingIP API
|
|
#managed_resource_email = hostmaster@example.com.
|
|
|
|
# Tenant ID to own all managed resources - like auto-created records etc.
|
|
# TODO(odyssey4me) - Check on whether this should be set to something
|
|
#managed_resource_tenant_id = 123456
|
|
|
|
#-----------------------
|
|
# API Service
|
|
#-----------------------
|
|
[service:api]
|
|
# Number of api worker processes to spawn
|
|
#workers = None
|
|
|
|
# Number of api greenthreads to spawn
|
|
#threads = 1000
|
|
|
|
# Enable host request headers
|
|
#enable_host_header = False
|
|
|
|
# The base uri used in responses
|
|
#api_base_uri = 'http://127.0.0.1:9001/'
|
|
|
|
# Address to bind the API server
|
|
#api_host = 0.0.0.0
|
|
|
|
# Port to bind the API server
|
|
#api_port = 9001
|
|
|
|
# Maximum line size of message headers to be accepted. max_header_line may
|
|
# need to be increased when using large tokens (typically those generated by
|
|
# the Keystone v3 API with big service catalogs).
|
|
#max_header_line = 16384
|
|
|
|
# Authentication strategy to use - can be either "noauth" or "keystone"
|
|
auth_strategy = keystone
|
|
|
|
# Enable API Version 1 (deprecated)
|
|
enable_api_v1 = True
|
|
|
|
# Enabled API Version 1 extensions
|
|
# Can be one or more of : diagnostics, quotas, reports, sync, touch
|
|
enabled_extensions_v1 = diagnostics, quotas, reports, sync, touch
|
|
|
|
# Enable API Version 2
|
|
enable_api_v2 = True
|
|
|
|
# Enabled API Version 2 extensions
|
|
enabled_extensions_v2 = quotas, reports
|
|
|
|
# Default per-page limit for the V2 API, a value of None means show all results
|
|
# by default
|
|
#default_limit_v2 = 20
|
|
|
|
# Max page size in the V2 API
|
|
#max_limit_v2 = 1000
|
|
|
|
# Enable Admin API (experimental)
|
|
enable_api_admin = False
|
|
|
|
# Enabled Admin API extensions
|
|
# Can be one or more of : reports, quotas, counts, tenants, zones
|
|
# zone export is in zones extension
|
|
#enabled_extensions_admin =
|
|
|
|
# Default per-page limit for the Admin API, a value of None means show all results
|
|
# by default
|
|
#default_limit_admin = 20
|
|
|
|
# Max page size in the Admin API
|
|
#max_limit_admin = 1000
|
|
|
|
# Show the pecan HTML based debug interface (v2 only)
|
|
# This is only useful for development, and WILL break python-designateclient
|
|
# if an error occurs
|
|
#pecan_debug = False
|
|
|
|
#-----------------------
|
|
# Keystone Middleware
|
|
#-----------------------
|
|
[keystone_authtoken]
|
|
|
|
insecure = {{ keystone_service_internaluri_insecure | bool }}
|
|
auth_type = {{ designate_keystone_auth_type }}
|
|
signing_dir = {{ designate_system_user_home }}/cache/api
|
|
auth_url = {{ keystone_service_adminurl }}
|
|
auth_uri = {{ keystone_service_internaluri }}
|
|
project_domain_id = {{ designate_service_project_domain_id }}
|
|
user_domain_id = {{ designate_service_user_domain_id }}
|
|
project_name = {{ designate_service_project_name }}
|
|
username = {{ designate_service_user_name }}
|
|
password = {{ designate_service_password }}
|
|
|
|
memcached_servers = {{ memcached_servers }}
|
|
|
|
#-----------------------
|
|
# Sink Service
|
|
#-----------------------
|
|
[service:sink]
|
|
# List of notification handlers to enable, configuration of these needs to
|
|
# correspond to a [handler:my_driver] section below or else in the config
|
|
# Can be one or more of : nova_fixed, neutron_floatingip
|
|
#enabled_notification_handlers =
|
|
|
|
#-----------------------
|
|
# mDNS Service
|
|
#-----------------------
|
|
[service:mdns]
|
|
# Number of mdns worker processes to spawn
|
|
#workers = None
|
|
|
|
# Number of mdns greenthreads to spawn
|
|
#threads = 1000
|
|
|
|
# mDNS Bind Host
|
|
#host = 0.0.0.0
|
|
|
|
# mDNS Port Number
|
|
#port = 5354
|
|
|
|
# mDNS TCP Backlog
|
|
#tcp_backlog = 100
|
|
|
|
# mDNS TCP Receive Timeout
|
|
#tcp_recv_timeout = 0.5
|
|
|
|
# Enforce all incoming queries (including AXFR) are TSIG signed
|
|
#query_enforce_tsig = False
|
|
|
|
# Send all traffic over TCP
|
|
#all_tcp = False
|
|
|
|
# Maximum message size to emit
|
|
#max_message_size = 65535
|
|
|
|
#-----------------------
|
|
# Agent Service
|
|
#-----------------------
|
|
[service:agent]
|
|
#workers = None
|
|
#host = 0.0.0.0
|
|
#port = 5358
|
|
#tcp_backlog = 100
|
|
#allow_notify = 127.0.0.1
|
|
#masters = 127.0.0.1:5354
|
|
#backend_driver = fake
|
|
#transfer_source = None
|
|
#notify_delay = 0
|
|
|
|
#-----------------------
|
|
# Zone Manager Service
|
|
#-----------------------
|
|
[service:zone_manager]
|
|
# Number of Zone Manager worker processes to spawn
|
|
#workers = None
|
|
|
|
# Number of Zone Manager greenthreads to spawn
|
|
#threads = 1000
|
|
|
|
# List of Zone Manager tasks to enable, a value of None will enable all tasks.
|
|
# Can be one or more of: periodic_exists
|
|
#enabled_tasks = None
|
|
|
|
# Whether to allow synchronous zone exports
|
|
#export_synchronous = True
|
|
|
|
#------------------------
|
|
# Deleted domains purging
|
|
#------------------------
|
|
[zone_manager_task:domain_purge]
|
|
# How frequently to purge deleted domains, in seconds
|
|
#interval = 3600 # 1h
|
|
|
|
# How many records to be deleted on each run
|
|
#batch_size = 100
|
|
|
|
# How old deleted records should be (deleted_at) to be purged, in seconds
|
|
#time_threshold = 604800 # 7 days
|
|
|
|
#-----------------------
|
|
# Pool Manager Service
|
|
#-----------------------
|
|
[service:pool_manager]
|
|
# Number of Pool Manager worker processes to spawn
|
|
#workers = None
|
|
|
|
# Number of Pool Manager greenthreads to spawn
|
|
#threads = 1000
|
|
|
|
# The ID of the pool managed by this instance of the Pool Manager
|
|
pool_id = {{ designate_pool_uuid }}
|
|
|
|
# The percentage of servers requiring a successful update for a domain change
|
|
# to be considered active
|
|
#threshold_percentage = 100
|
|
|
|
# The time to wait for a response from a server
|
|
#poll_timeout = 30
|
|
|
|
# The time between retrying to send a request and waiting for a response from a
|
|
# server
|
|
#poll_retry_interval = 15
|
|
|
|
# The maximum number of times to retry sending a request and wait for a
|
|
# response from a server
|
|
#poll_max_retries = 10
|
|
|
|
# The time to wait before sending the first request to a server
|
|
#poll_delay = 5
|
|
|
|
# Enable the recovery thread
|
|
#enable_recovery_timer = True
|
|
|
|
# The time between recovering from failures
|
|
#periodic_recovery_interval = 120
|
|
|
|
# Enable the sync thread
|
|
#enable_sync_timer = True
|
|
|
|
# The time between synchronizing the servers with storage
|
|
#periodic_sync_interval = 1800
|
|
|
|
# Zones Updated within last N seconds will be syncd. Use None to sync all zones
|
|
#periodic_sync_seconds = None
|
|
|
|
# Perform multiple update attempts during periodic_sync
|
|
#periodic_sync_max_attempts = 3
|
|
#periodic_sync_retry_interval = 30
|
|
|
|
# The cache driver to use
|
|
#cache_driver = memcache
|
|
|
|
###################################
|
|
## Pool Manager Cache Configuration
|
|
###################################
|
|
#-----------------------
|
|
# SQLAlchemy Pool Manager Cache
|
|
#-----------------------
|
|
[pool_manager_cache:sqlalchemy]
|
|
connection = mysql+pymysql://{{ designate_pool_manager_galera_user }}:{{ designate_pool_manager_container_mysql_password }}@{{ designate_pool_manager_galera_address }}/designate_pool_manager?charset=utf8
|
|
#connection_debug = 100
|
|
#connection_trace = False
|
|
#sqlite_synchronous = True
|
|
#idle_timeout = 3600
|
|
#max_retries = 10
|
|
#retry_interval = 10
|
|
|
|
#-----------------------
|
|
# Memcache Pool Manager Cache
|
|
#-----------------------
|
|
[pool_manager_cache:memcache]
|
|
#memcached_servers = None
|
|
#expiration = 3600
|
|
|
|
##############
|
|
## Network API
|
|
##############
|
|
[network_api:neutron]
|
|
# Comma separated list of values, formatted "<name>|<neutron_uri>"
|
|
#endpoints = RegionOne|http://localhost:9696
|
|
#endpoint_type = publicURL
|
|
#timeout = 30
|
|
#admin_username = designate
|
|
#admin_password = designate
|
|
#admin_tenant_name = designate
|
|
#auth_url = http://localhost:35357/v2.0
|
|
#insecure = False
|
|
#auth_strategy = keystone
|
|
#ca_certificates_file =
|
|
|
|
########################
|
|
## Storage Configuration
|
|
########################
|
|
#-----------------------
|
|
# SQLAlchemy Storage
|
|
#-----------------------
|
|
[storage:sqlalchemy]
|
|
connection = mysql+pymysql://{{ designate_galera_user }}:{{ designate_container_mysql_password }}@{{ designate_galera_address }}/designate?charset=utf8
|
|
#connection_debug = 0
|
|
#connection_trace = False
|
|
#sqlite_synchronous = True
|
|
#idle_timeout = 3600
|
|
#max_retries = 10
|
|
#retry_interval = 10
|
|
|
|
########################
|
|
## Handler Configuration
|
|
########################
|
|
#-----------------------
|
|
# Nova Fixed Handler
|
|
#-----------------------
|
|
[handler:nova_fixed]
|
|
# Domain ID of domain to create records in. Should be pre-created
|
|
#domain_id =
|
|
#notification_topics = notifications
|
|
#control_exchange = 'nova'
|
|
#format = '%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(domain)s'
|
|
#format = '%(hostname)s.%(domain)s'
|
|
|
|
#------------------------
|
|
# Neutron Floating Handler
|
|
#------------------------
|
|
[handler:neutron_floatingip]
|
|
# Domain ID of domain to create records in. Should be pre-created
|
|
#domain_id =
|
|
#notification_topics = notifications
|
|
#control_exchange = 'neutron'
|
|
#format = '%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(domain)s'
|
|
#format = '%(hostname)s.%(domain)s'
|
|
|
|
#############################
|
|
## Agent Backend Configuration
|
|
#############################
|
|
[backend:agent:bind9]
|
|
#rndc_host = 127.0.0.1
|
|
#rndc_port = 953
|
|
#rndc_config_file = /etc/rndc.conf
|
|
#rndc_key_file = /etc/rndc.key
|
|
#zone_file_path = $state_path/zones
|
|
#query_destination = 127.0.0.1
|
|
#
|
|
[backend:agent:denominator]
|
|
#name = dynect
|
|
#config_file = /etc/denominator.conf
|
|
|
|
########################
|
|
## Library Configuration
|
|
########################
|
|
[oslo_concurrency]
|
|
# Path for Oslo Concurrency to store lock files, defaults to the value
|
|
# of the state_path setting.
|
|
#lock_path = $state_path
|
|
|
|
########################
|
|
## Coordination
|
|
########################
|
|
[coordination]
|
|
# URL for the coordination backend to use.
|
|
#backend_url = kazoo://127.0.0.1/
|
|
|
|
########################
|
|
## Hook Points
|
|
########################
|
|
# Hook Points are enabled when added to the config and there has been
|
|
# a package that provides the corresponding named designate.hook_point
|
|
# entry point.
|
|
|
|
# [hook_point:name_of_hook_point]
|
|
# some_param_for_hook = 42
|
|
# Hooks can be disabled in the config
|
|
# enabled = False
|
|
|
|
# Hook can also be applied to the import path when the hook has not
|
|
# been given an explicit name. The name is created from the hook
|
|
# target function / method:
|
|
#
|
|
# name = '%s.%s' % (func.__module__, func.__name__)
|
|
|
|
# [hook_point:designate.api.v2.controllers.zones.get_one]
|