memcached: improve systemd units management

This commit is contained in:
Jérémy Lecour 2018-08-09 17:46:31 +02:00 committed by Jérémy Lecour
parent adb0033722
commit f2bd125cfc
3 changed files with 23 additions and 45 deletions

View file

@ -25,5 +25,4 @@ When using memcached_instance_name variable, you can set up multiple memcached i
roles: roles:
- { role: memcached, memcached_instance_name: "instance1" } - { role: memcached, memcached_instance_name: "instance1" }
- { role: memcached, memcached_instance_name: "instance2" } - { role: memcached, memcached_instance_name: "instance2", memcached_port: 11212 }

View file

@ -1,5 +1,5 @@
--- ---
memcached_instance_name: False memcached_instance_name: ""
memcached_logfile: '/var/log/memcached.log' memcached_logfile: '/var/log/memcached.log'
memcached_mem: 64 memcached_mem: 64
memcached_user: 'nobody' memcached_user: 'nobody'

View file

@ -3,7 +3,7 @@
name: memcached name: memcached
state: present state: present
tags: tags:
- memcached - memcached
- name: Memcached is configured. - name: Memcached is configured.
template: template:
@ -12,8 +12,8 @@
mode: "0644" mode: "0644"
notify: restart memcached notify: restart memcached
tags: tags:
- memcached - memcached
when: memcached_instance_name == False when: memcached_instance_name == ""
- name: Memcached is running and enabled on boot. - name: Memcached is running and enabled on boot.
service: service:
@ -21,41 +21,33 @@
enabled: yes enabled: yes
state: started state: started
tags: tags:
- memcached - memcached
when: memcached_instance_name == False when: memcached_instance_name == ""
- name: Add systemd template - name: Add systemd template
copy: copy:
src: memcached@.service src: memcached@.service
dest: /etc/systemd/system/memcached@.service dest: /etc/systemd/system/memcached@.service
tags: tags:
- memcached - memcached
when: memcached_instance_name != False when: memcached_instance_name != ""
- name: Delete default memcached systemd configuration file - name: Delete default memcached systemd configuration file
file: systemd:
path: /etc/systemd/system/multi-user.target.wants/memcached.service name: memcached
state: absent enabled: false
state: stopped
tags: tags:
- memcached - memcached
when: memcached_instance_name != False when: memcached_instance_name != ""
- name: Create a symbolic link to memcached@.service
file:
src: /etc/systemd/system/memcached@.service
dest: /etc/systemd/system/multi-user.target.wants/memcached@{{ memcached_instance_name }}.service
state: link
tags:
- memcached
when: memcached_instance_name != False
- name: Make sure memcached.conf is absent - name: Make sure memcached.conf is absent
file: file:
path: /etc/memcached.conf path: /etc/memcached.conf
state: absent state: absent
tags: tags:
- memcached - memcached
when: memcached_instance_name != False when: memcached_instance_name != ""
- name: Create a configuration file - name: Create a configuration file
template: template:
@ -63,33 +55,20 @@
dest: /etc/memcached_{{ memcached_instance_name }}.conf dest: /etc/memcached_{{ memcached_instance_name }}.conf
mode: "0644" mode: "0644"
tags: tags:
- memcached - memcached
when: memcached_instance_name != False when: memcached_instance_name != ""
- name: Reload systemd configuration
sudo: yes
command: "systemctl daemon-reload"
tags:
- memcached
when: memcached_instance_name != False
# Ansible 2.4 and above
#- name: Reload systemd configuration
# systemd:
# daemon_reload: yes
# tags:
# - memcached
# when: memcached_instance_name != False
- name: Enable and start the memcached instance - name: Enable and start the memcached instance
systemd: systemd:
name: memcached@{{ memcached_instance_name }} name: memcached@{{ memcached_instance_name }}
enabled: yes enabled: yes
state: started state: started
daemon_reload: yes
masked: no masked: no
tags: tags:
- memcached - memcached
when: memcached_instance_name != False when: memcached_instance_name != ""
- include: munin.yml - include: munin.yml
- include: nrpe.yml - include: nrpe.yml