openstack-ansible-os_cinder/templates/cinder-systemd-init.j2
Major Hayden 66319e9008
Add SELinux contexts for cinder log directory
The log directory for cinder has the default_t SELinux context and this
prevents rsyslog from accessing cinders's logs. This patch ensures that
the file contexts are set properly for cinders's logs.

This change also makes cinder's log directory configurable using the
`cinder_log_dir` variable.

Closes-Bug: 1748969
Change-Id: Idd1abdd5987ef120b23f8eef49b1c5198f40d900
2018-02-14 15:35:05 -06:00

38 lines
1.3 KiB
Django/Jinja

# {{ ansible_managed }}
[Unit]
Description=cinder openstack service
After=syslog.target
After=network.target
[Service]
Type=simple
User={{ cinder_system_user_name }}
Group={{ cinder_system_group_name }}
{% if item.program_override is defined %}
ExecStart={{ item.program_override }} {{ item.program_config_options|default('') }} {{ item.log_string | default('--log-file=') }}{{ cinder_log_dir }}/{{ item.service_name }}.log
{% else %}
ExecStart={{ cinder_bin }}/{{ item.service_name }} {{ item.program_config_options|default('') }} --log-file={{ cinder_log_dir }}/{{ item.service_name }}.log
{% endif %}
{% if item.service_name != cinder_services['cinder-api']['service_name'] or item.wsgi_app %}
ExecReload={{ (item.wsgi_app is defined and item.wsgi_app) | ternary(cinder_bin + '/uwsgi --reload /var/run/' + item.service_name + '/' + item.service_name +'.pid','/bin/kill -HUP $MAINPID') }}
{% endif %}
# Give a reasonable amount of time for the server to start up/shut down
TimeoutSec=120
Restart=on-failure
RestartSec=2
# This creates a specific slice which all services will operate from
# The accounting options give us the ability to see resource usage through
# the `systemd-cgtop` command.
Slice=cinder.slice
CPUAccounting=true
BlockIOAccounting=true
MemoryAccounting=false
TasksAccounting=true
[Install]
WantedBy=multi-user.target