The ceph status command returns a lot of information stored in variables
and/or facts which could consume resources for nothing.
When checking the cluster health, we're using the health structure in the
ceph status output.
To optimize this, we could use the ceph health command which contains
the same needed information.
$ ceph status -f json | wc -c
2001
$ ceph health -f json | wc -c
46
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
(cherry picked from commit
acddf4fb679f5f5251b3414793680042ee3be394)
- block:
- name: get ceph cluster status
- command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} -s -f json"
- register: check_cluster_status
+ command: "{{ container_exec_cmd }} ceph --cluster {{ cluster }} health -f json"
+ register: check_cluster_health
delegate_to: "{{ mon_host }}"
- block:
- name: fail if cluster isn't in an acceptable state
fail:
msg: "cluster is not in an acceptable state!"
- when: (check_cluster_status.stdout | from_json).health.status == 'HEALTH_ERR'
+ when: (check_cluster_health.stdout | from_json).status == 'HEALTH_ERR'
when: inventory_hostname == groups[mon_group_name] | first
- name: ensure /var/lib/ceph/bootstrap-rbd-mirror is present