--- - name: ensure systemd service override directory exists file: state: directory path: "/etc/systemd/system/ceph-rbd-mirror@.service.d/" when: - ceph_rbd_mirror_systemd_overrides is defined - ansible_service_mgr == 'systemd' - name: add ceph-rbd-mirror systemd service overrides config_template: src: "ceph-rbd-mirror.service.d-overrides.j2" dest: "/etc/systemd/system/ceph-rbd-mirror@.service.d/ceph-rbd-mirror-systemd-overrides.conf" config_overrides: "{{ ceph_rbd_mirror_systemd_overrides | default({}) }}" config_type: "ini" when: - ceph_rbd_mirror_systemd_overrides is defined - ansible_service_mgr == 'systemd' - name: start and add that the rbd mirror service to the init sequence service: name: "ceph-rbd-mirror@{{ ceph_rbd_mirror_local_user }}" state: started enabled: yes changed_when: false when: - ceph_release_num[ceph_release] < ceph_release_num.luminous - name: enable ceph-rbd-mirror.target on jewel systemd: name: "ceph-rbd-mirror.target" state: started enabled: yes changed_when: false when: - ceph_release_num[ceph_release] < ceph_release_num.luminous - name: stop and remove the generic rbd-mirror service instance service: name: "ceph-rbd-mirror@{{ ceph_rbd_mirror_local_user }}" state: stopped enabled: no changed_when: false when: - ceph_release_num[ceph_release] >= ceph_release_num.luminous # This task is a workaround for rbd-mirror not starting after reboot # The upstream fix is: https://github.com/ceph/ceph/pull/17969 # It's affecting, ceph version 12.2.0 (32ce2a3ae5239ee33d6150705cdb24d43bab910c) luminous (rc) and before - name: enable ceph-rbd-mirror.target service: name: "ceph-rbd-mirror.target" enabled: yes changed_when: false when: - ceph_release_num[ceph_release] >= ceph_release_num.luminous - name: start and add the rbd-mirror service instance service: name: "ceph-rbd-mirror@rbd-mirror.{{ ansible_hostname }}" state: started enabled: yes changed_when: false when: - ceph_release_num[ceph_release] >= ceph_release_num.luminous