openstack-ansible-os_swift/templates/object-server.conf.j2
Andy McCrae 53027de8c8 Setup rsync module per object server drive
This PR sets up rsync module per drive for swift object servers. This
improves resource distribution, and also allows us to utilise rsync
module changes to prevent disk writes to specific drives when they begin
filling up.

Enable this option by setting "swift_rsync_module_per_drive: True", this
will still default to False to match upstream defaults. Additionally the
rsync max connections has been increased to match upstream defaults.

Additionally we include rsync.d/*.conf files by default and set this
directory up, so that we can add individual configuration to disable
specific drives.

Change-Id: I2019cade5bf5f2878497d30ce738dff07786fa64
2016-05-16 11:57:46 +01:00

59 lines
1.4 KiB
Django/Jinja

# {{ ansible_managed }}
{% set _api_threads = ansible_processor_vcpus|default(2) // 2 %}
{% set api_threads = _api_threads if _api_threads > 0 else 1 %}
[DEFAULT]
bind_ip = {{ swift_storage_address }}
bind_port = {{ swift_object_port }}
workers = {{ swift_object_server_workers | default(api_threads) }}
user = {{ swift_system_user_name }}
swift_dir = /etc/swift
devices = {{ swift_vars.mount_point | default(swift.mount_point) }}
log_facility = LOG_LOCAL4
{% include "statsd.j2" %}
disable_fallocate = {{ swift_object_disable_fallocate }}
fallocate_reserve = {{ swift_object_fallocate_reserve }}
[pipeline:main]
pipeline = healthcheck recon object-server
[app:object-server]
use = egg:swift#object
log_facility = LOG_LOCAL4
mb_per_sync = 64
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:recon]
use = egg:swift#recon
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock
{% if swift.replication_network is not defined or swift.replication_network == swift.storage_network %}
[object-replicator]
log_facility = LOG_LOCAL4
concurrency = 6
reclaim_age = {{ reclaim_age | default(604800) }}
{% if swift_rsync_module_per_drive %}
rsync_module = {replication_ip}::object_{device}
{% endif %}
{% endif %}
[object-updater]
log_facility = LOG_LOCAL4
concurrency = 3
concurrency = 3
node_timeout = 60
conn_timeout = 5
[object-auditor]
log_facility = LOG_LOCAL4
[filter:xprofile]
use = egg:swift#xprofile