openstack-ansible-memcached.../tasks/memcached_config.yml

95 lines
2.6 KiB
YAML

---
# Copyright 2014, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
- name: Test for log directory or link
shell: |
if [ -h "{{ memcached_log | dirname }}" ]; then
chown -h root:root "{{ memcached_log | dirname }}"
chown -R root:root "$(readlink {{ memcached_log | dirname }})"
else
exit 1
fi
register: log_dir
failed_when: false
changed_when: log_dir.rc != 0
- name: Create memcached log dir
file:
path: "{{ memcached_log | dirname }}"
state: directory
when: log_dir.rc != 0
- name: Apply memcached config
template:
src: "{{ memcached_conf_template }}"
dest: "{{ memcached_conf_dest }}"
owner: "root"
group: "root"
mode: "0644"
notify: Restart memcached
- name: Create memcached systemd service config dir
file:
path: "/etc/systemd/system/memcached.service.d"
state: "directory"
group: "root"
owner: "root"
mode: "0755"
when:
- pid1_name == "systemd"
- name: Apply resource limits (upstart)
template:
src: "memcached.debian.j2"
dest: "/etc/default/memcached"
owner: "root"
group: "root"
mode: "0644"
when:
- ansible_pkg_mgr == 'apt'
- pid1_name != "systemd"
- memcached_connections > 1024
notify: Restart memcached
- name: Apply resource limits (systemd)
template:
src: "limits.conf.j2"
dest: "/etc/systemd/system/memcached.service.d/limits.conf"
owner: "root"
group: "root"
mode: "0644"
when:
- pid1_name == "systemd"
- memcached_connections > 1024
notify:
- Reload the systemd daemon
- Restart memcached
- name: Configure soft file limits
lineinfile:
dest: "/etc/security/limits.conf"
regexp: "^{{ memcached_user }}.*soft.*nofile.*"
state: "present"
line: "{{ memcached_user }}\tsoft\tnofile\t\t{{ memcached_file_limits }}"
insertbefore: "^# End of file"
- name: Configure hard file limits
lineinfile:
dest: "/etc/security/limits.conf"
regexp: "^{{ memcached_user }}.*hard.*nofile.*"
state: "present"
line: "{{ memcached_user }}\thard\tnofile\t\t{{ memcached_file_limits }}"
insertbefore: "^# End of file"