rolling_update: fail if less than 3 MONs

... for non-containerized deployments as well.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1655470

Signed-off-by: Ramana Raja <rraja@redhat.com>
(cherry picked from commit cb784c601d)
pull/3416/head
Ramana Raja 2018-12-03 19:55:42 +05:30 committed by Sébastien Han
parent 50fe56044e
commit 0ec2ac34e3
1 changed files with 5 additions and 9 deletions

View File

@ -95,15 +95,11 @@
- name: set mon_host_count
set_fact: mon_host_count={{ groups[mon_group_name] | length }}
- debug: msg="WARNING - upgrading a ceph cluster with only one monitor node ({{ inventory_hostname }})"
when: mon_host_count | int == 1
- name: fail when single containerized monitor
- name: fail when less than three monitors
fail:
msg: "Upgrades of a single monitor are not supported, also running 1 monitor is not recommended always use 3."
msg: "Upgrade of cluster with less than three monitors is not supported."
when:
- containerized_deployment
- mon_host_count | int == 1
- mon_host_count | int < 3
- name: stop ceph mon - shortname
systemd:
@ -152,9 +148,9 @@
- name: set mon_host_count
set_fact: mon_host_count={{ groups[mon_group_name] | length }}
- name: select a running monitor if multiple monitors
- name: select a running monitor
set_fact:
mon_host: "{{ groups[mon_group_name] | difference([inventory_hostname]) | last if mon_host_count > 1 else groups[mon_group_name] | last }}"
mon_host: "{{ groups[mon_group_name] | difference([inventory_hostname]) | last }}"
- name: non container | waiting for the monitor to join the quorum...
command: ceph --cluster "{{ cluster }}" -s --format json