This patch add the conditional inclusion of the notification section of the service configuration. This ensures that oslo.messaging notifications use the correct transport for deployments that have separate rpc and notify messaging backends. For example, if the transport_url is not provided in the notification section of the service configuration, the transport_url specified in the default section will be used instead. This patch conditionally selects the notifier driver. The noop driver will be selected when notification publishing is disabled. The messagingv2 driver is selected when notification publishing is enabled. Change-Id: Ie967b281e15127bbf611aca557e99ac6b3d1cd4b Closes-Bug: #1794320
126 lines
4.1 KiB
Django/Jinja
126 lines
4.1 KiB
Django/Jinja
# {{ ansible_managed }}
|
|
[DEFAULT]
|
|
debug = {{ debug }}
|
|
bind_host = {{ trove_service_host }}
|
|
bind_port = {{ trove_service_port }}
|
|
trove_api_workers={{ trove_api_workers }}
|
|
transport_url = {{ trove_oslomsg_rpc_transport }}://{% for host in trove_oslomsg_rpc_servers.split(',') %}{{ trove_oslomsg_rpc_userid }}:{{ trove_oslomsg_rpc_password }}@{{ host }}:{{ trove_oslomsg_rpc_port }}{% if not loop.last %},{% else %}/{{ trove_oslomsg_rpc_vhost }}{% endif %}{% endfor %}
|
|
|
|
{# There must be a blank line above or the following line will be appended to the previous. #}
|
|
control_exchange = {{ trove_control_exchange }}
|
|
enable_secure_rpc_messaging = {{ trove_enable_secure_rpc_messaging }}
|
|
inst_rpc_key_encr_key = {{ trove_inst_rpc_key_encr_key }}
|
|
taskmanager_rpc_encr_key = {{ trove_taskmanager_rpc_encr_key }}
|
|
|
|
db_api_implementation = "trove.db.sqlalchemy.api"
|
|
trove_auth_url = {{ trove_auth_url }}
|
|
os_region_name = {{ trove_service_region }}
|
|
network_label_regex = .*
|
|
#network_label_regex = .* //with neutron enabled
|
|
#ip_regex = ^(15.|123.)
|
|
#black_list_regex = ^10.0.0.
|
|
trove_volume_support = True
|
|
block_device_mapping = vdb
|
|
device_path = /dev/vdb
|
|
max_accepted_volume_size = 10
|
|
max_instances_per_tenant = 5
|
|
max_volumes_per_tenant = 100
|
|
max_backups_per_tenant = 5
|
|
volume_time_out=30
|
|
|
|
# Config options for rate limits
|
|
http_get_rate = 200
|
|
http_post_rate = 200
|
|
http_put_rate = 200
|
|
http_delete_rate = 200
|
|
http_mgmt_post_rate = 200
|
|
|
|
# Trove DNS
|
|
trove_dns_support = False
|
|
dns_account_id = 123456
|
|
dns_auth_url = http://127.0.0.1:5000/v2.0
|
|
dns_username = user
|
|
dns_passkey = password
|
|
dns_ttl = 3600
|
|
dns_domain_name = 'trove.com.'
|
|
dns_domain_id = 11111111-1111-1111-1111-111111111111
|
|
dns_driver = trove.dns.designate.driver.DesignateDriver
|
|
dns_instance_entry_factory = trove.dns.designate.driver.DesignateInstanceEntryFactory
|
|
dns_endpoint_url = http://127.0.0.1/v1/
|
|
dns_service_type = dns
|
|
|
|
# Nova
|
|
nova_compute_url = {{ trove_nova_compute_url }}
|
|
nova_proxy_admin_user = {{ trove_service_user_name }}
|
|
nova_proxy_admin_pass = {{ trove_service_password }}
|
|
nova_proxy_admin_tenant_name = {{ trove_service_project_name }}
|
|
|
|
# Neutron
|
|
network_driver = trove.network.neutron.NeutronDriver
|
|
default_neutron_networks = {{ trove_service_net_id }}
|
|
neutron_url = {{ trove_neutron_url }}
|
|
|
|
# Swift
|
|
swift_url = {{ trove_swift_url }}
|
|
swift_service_type = object-store
|
|
|
|
# Taskmanager queue name
|
|
taskmanager_queue = taskmanager
|
|
|
|
# Auth
|
|
admin_roles = admin
|
|
auth_strategy = keystone
|
|
|
|
# Guest related conf
|
|
agent_heartbeat_time = 10
|
|
agent_call_low_timeout = 5
|
|
agent_call_high_timeout = 150
|
|
|
|
# Reboot time out for instances
|
|
reboot_time_out = 60
|
|
|
|
# Trove api-paste file name
|
|
api_paste_config = api-paste.ini
|
|
|
|
[keystone_authtoken]
|
|
insecure = {{ keystone_service_internaluri_insecure | bool }}
|
|
auth_type = {{ trove_keystone_auth_plugin }}
|
|
auth_url = {{ keystone_service_adminuri }}
|
|
www_authenticate_uri = {{ keystone_service_internaluri }}
|
|
project_domain_id = {{ trove_service_project_domain_id }}
|
|
user_domain_id = {{ trove_service_user_domain_id }}
|
|
project_name = {{ trove_service_project_name }}
|
|
username = {{ trove_service_user_name }}
|
|
password = {{ trove_service_password }}
|
|
region_name = {{ keystone_service_region }}
|
|
|
|
memcached_servers = {{ memcached_servers }}
|
|
token_cache_time = 300
|
|
|
|
# if your memcached server is shared, use these settings to avoid cache poisoning
|
|
memcache_security_strategy = ENCRYPT
|
|
memcache_secret_key = {{ memcached_encryption_key }}
|
|
|
|
[database]
|
|
connection = "{{ trove_galera_connection_string }}"
|
|
idle_timeout = 3600
|
|
|
|
[profiler]
|
|
enabled = {{ trove_profiler_enabled }}
|
|
#trace_sqlalchemy = True
|
|
|
|
[ssl]
|
|
#cert_file = /path/to/server.crt
|
|
#key_file = /path/to/server.key
|
|
#optional:
|
|
#ca_file = /path/to/ca_file
|
|
|
|
[oslo_messaging_rabbit]
|
|
ssl = {{ trove_oslomsg_rpc_use_ssl }}
|
|
|
|
[oslo_messaging_notifications]
|
|
driver = {% if trove_ceilometer_enabled %}messagingv2{% else %}noop{% endif %}
|
|
transport_url = {{ trove_oslomsg_notify_transport }}://{% for host in trove_oslomsg_notify_servers.split(',') %}{{ trove_oslomsg_notify_userid }}:{{ trove_oslomsg_notify_password }}@{{ host }}:{{ trove_oslomsg_notify_port }}{% if not loop.last %},{% else %}/{{ trove_oslomsg_notify_vhost }}{% endif %}{% endfor %}
|
|
|
|
{% include 'include_db.j2' %}
|