openstack-ansible-os_swift/templates/rsyncd.conf.j2
Dmitriy Rabotyagov d0fac1b559 Use systemd-journald instead of log files
This patch aims to migrate service from usage of regular syslog files
to journald.
By this we mean dropping rsyslog client installation. log_address is set
by default to /dev/log, which is served by journald.

Change-Id: I6dd0d77004394bb1ad674b53538b0679b056bb0f
2019-07-19 15:10:49 +03:00

64 lines
2.3 KiB
Django/Jinja

# {{ ansible_managed }}
uid = {{ swift_system_user_name }}
gid = {{ swift_system_group_name }}
pid file = /var/run/rsyncd.pid
reverse lookup = {{ swift_rsync_reverse_lookup | bool }}
address = {{ swift_replication_address }}
[account]
max connections = {{ swift_account_max_rsync_connections }}
path = {{ swift_vars.mount_point | default(swift.mount_point) }}
read only = false
lock file = /var/lock/account.lock
[container]
max connections = {{ swift_container_max_rsync_connections }}
path = {{ swift_vars.mount_point | default(swift.mount_point) }}
read only = false
lock file = /var/lock/container.lock
{% if swift_rsync_module_per_drive %}
{### Set up per drive rsync modules #}
{### Lets get the default groups for drives and find the default storage_policy #}
{% set def_groups = [ 'account', 'container' ] %}
{% for policy in swift.storage_policies %}
{% if policy.policy.default is defined and policy.policy.default == True %}
{% set _update = def_groups.append(policy.policy.name) %}
{% endif %}
{% endfor %}
{### swift_vars needs to exist for swift_vars[setting] checks to work #}
{% if swift_vars is not defined %}
{% set swift_vars = {} %}
{% endif %}
{% set drives = swift_vars.drives | default(swift.drives | default([])) %}
{### Loop through the drives to determine if they are in the object group #}
{% for drive in drives %}
{% set devAdded = False %}
{### Check if groups is defined per host or drive #}
{% set groups = drives.groups | default(swift_vars.groups | default(swift.groups | default(def_groups))) %}
{% for group in groups %}
{% if group not in ['account', 'container'] %}
{### We only want to add a device once so check if it was added already #}
{% if not devAdded | bool %}
[object_{{ drive.name }}]
max connections = {{ swift_object_max_rsync_connections }}
path = {{ swift_vars.mount_point | default(swift.mount_point) }}
read only = false
lock file = /var/lock/object_{{ drive.name }}.lock
{% endif %}
{% set devAdded = True %}
{% endif %}
{% endfor %}
{% endfor %}
{% else %}
[object]
max connections = {{ swift_object_max_rsync_connections }}
path = {{ swift_vars.mount_point | default(swift.mount_point) }}
read only = false
lock file = /var/lock/object.lock
{% endif %}
&include /etc/rsync.d