openstack-ansible-os_trove/templates/trove-guestagent.conf.j2
ZhijunWei 3bbc52b399 Update messaging notification configuration
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
2018-09-27 02:16:53 +00:00

119 lines
4.8 KiB
Django/Jinja

# {{ ansible_managed }}
[DEFAULT]
control_exchange = {{ trove_control_exchange }}
trove_auth_url = {{ trove_guest_auth_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 }}
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 %}
{% if trove_swift_enabled is defined %}
swift_url = {{ trove_guest_swift_url }}
# Region name of this node. Default value is None.
os_region_name = {{ trove_service_region }}
# Service type to use when searching catalog.
swift_service_type = object-store
{% endif %}
# ========== Datastore Manager Configurations ==========
# Datastore manager implementations.
# Format: list of 'datastore-type:datastore.manager.implementation.module'
datastore_registry_ext = mysql:trove.guestagent.datastore.mysql.manager.Manager, percona:trove.guestagent.datastore.mysql.manager.Manager
# ========== Default Users / DBs Configuration ==========
root_grant = ALL
root_grant_option = True
{% if trove_storage_strategy is defined %}
# For storage to Swift, use the following as defaults:
storage_strategy = SwiftStorage
storage_namespace = trove.common.strategies.storage.swift
# Default config options for storing backups to swift
backup_swift_container = database_backups
backup_use_gzip_compression = True
backup_use_openssl_encryption = True
backup_aes_cbc_key = "default_aes_cbc_key"
backup_use_snet = False
backup_chunk_size = 65536
backup_segment_max_size = 2147483648
{% endif %}
# Show debugging output in logs (sets DEBUG log level output)
debug = {{ debug }}
# Directory and path for log files
log_dir = /var/log/trove/
log_file = trove-guestagent.log
[profiler]
# If False fully disable profiling feature.
#enabled = False
# If False doesn't trace SQL requests.
#trace_sqlalchemy = True
[oslo_messaging_rabbit]
# Connect over SSL for RabbitMQ. (boolean value)
# Deprecated group/name - [DEFAULT]/rabbit_use_ssl
ssl = {{ trove_guest_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 %}
# ========== Datastore Specific Configuration Options ==========
[mysql]
# For mysql, the following are the defaults for backup, and restore:
backup_strategy = InnoBackupEx
backup_namespace = trove.guestagent.strategies.backup.mysql_impl
restore_namespace = trove.guestagent.strategies.restore.mysql_impl
# Default configuration for mysql replication
replication_strategy = MysqlBinlogReplication
replication_namespace = trove.guestagent.strategies.replication.mysql_binlog
replication_user = slave_user
replication_password = slave_password
# Users to ignore for user create/list/delete operations
ignore_users = os_admin
# Databases to ignore for db create/list/delete operations
# ignore_dbs = mysql, information_schema, performance_schema
[vertica]
# For vertica, following are the defaults needed:
mount_point = /var/lib/vertica
readahead_size = 2048
guestagent_strategy = trove.common.strategies.cluster.experimental.vertica.guestagent.VerticaGuestAgentStrategy
[redis]
# For redis, the following are the defaults for backup, and restore:
backup_strategy = RedisBackup
backup_namespace = trove.guestagent.strategies.backup.experimental.redis_impl
restore_namespace = trove.guestagent.strategies.restore.experimental.redis_impl
[percona]
backup_namespace = trove.guestagent.strategies.backup.mysql_impl
restore_namespace = trove.guestagent.strategies.restore.mysql_impl
[couchbase]
backup_namespace = trove.guestagent.strategies.backup.experimental.couchbase_impl
restore_namespace = trove.guestagent.strategies.restore.experimental.couchbase_impl
[cassandra]
backup_namespace = trove.guestagent.strategies.backup.experimental.cassandra_impl
restore_namespace = trove.guestagent.strategies.restore.experimental.cassandra_impl
[db2]
# For db2, the following are the defaults for backup, and restore:
backup_strategy = DB2Backup
backup_namespace = trove.guestagent.strategies.backup.experimental.db2_impl
restore_namespace = trove.guestagent.strategies.restore.experimental.db2_impl
[couchdb]
#For CouchDB, the following are the defaults for backup and restore:
backup_strategy = CouchDBBackup
backup_namespace = trove.guestagent.strategies.backup.experimental.couchdb_impl
restore_namespace = trove.guestagent.strategies.restore.experimental.couchdb_impl