46 lines
1.7 KiB
YAML
46 lines
1.7 KiB
YAML
---
|
|
- name: restart zookeeper
|
|
service:
|
|
name: zookeeper
|
|
state: restarted
|
|
|
|
- name: restart libvirtd
|
|
service:
|
|
name: libvirtd
|
|
state: restarted
|
|
|
|
- name: restart frr
|
|
service:
|
|
name: frr
|
|
state: restarted
|
|
|
|
- name: restart patroni
|
|
service:
|
|
name: patroni
|
|
state: restarted
|
|
|
|
# Restart services one-at-a-time
|
|
# Ideally, this would be accomplished by a serial=1, but Ansible doesn't support that and
|
|
# likely never will. Instead, we just run the service restart manually, waiting X seconds
|
|
# before each iteration, where X is 15 seconds times the "host_id" minus 1. Thus, the
|
|
# following host configuration leads to the specified sleep times:
|
|
# * pvchv1: 0s
|
|
# * pvchv2: 15s
|
|
# * pvchv3: 30s
|
|
# * etc.
|
|
# This results in a practical sense in a "serial=1" sequence of restarts allowing the service
|
|
# to float its primary around after changing a configuration.
|
|
# Note that this only applies to coordinators; hypervisor-only nodes restart immediately in
|
|
# parallel, and the first two of three handlers do not apply to hypervisor-only nodes.
|
|
- name: restart ceph-mon
|
|
shell: "{% if is_coordinator %}sleep {{ 15 * (hostvars[ansible_hostname].ansible_local.host_id|int - 1) }} && systemctl restart ceph-mon@{{ ansible_hostname }}.service{% endif %}"
|
|
ignore_errors: true
|
|
|
|
- name: restart ceph-mgr
|
|
shell: "{% if is_coordinator %}sleep {{ 15 * (hostvars[ansible_hostname].ansible_local.host_id|int - 1) }} && systemctl restart ceph-mgr@{{ ansible_hostname }}.service{% endif %}"
|
|
ignore_errors: true
|
|
|
|
- name: restart pvcnoded
|
|
shell: "{% if is_coordinator %}sleep {{ 15 * (hostvars[ansible_hostname].ansible_local.host_id|int - 1) }} &&{% endif %} systemctl restart pvcnoded.service"
|
|
ignore_errors: true
|