mirror of https://github.com/ceph/ceph-ansible.git
ceph-facts: use --admin-daemon to get fsid
During the rolling_update scenario, the fsid value is retrieve from the
current ceph cluster configuration via the ceph daemon config command.
This command tries first to resolve the admin socket path via the
ceph-conf command.
Unfortunately this command won't work if you have a duplicate key in the
ceph configuration even if it only produces a warning. As a result the
task will fail.
Can't get admin socket path: unable to get conf option admin_socket for
mon.xxx: warning: line 13: 'osd_memory_target' in section 'osd' redefined
Instead of using ceph daemon we can use the --admin-daemon option
because we already know what the socket admin path value based on the
ceph cluster and mon hostname values.
Closes: #4492
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
(cherry picked from commit ec3b687dc4
)
pull/4521/head
parent
c958bc1ddf
commit
5b24c66ff7
|
@ -84,7 +84,7 @@
|
||||||
when: cephx | bool or generate_fsid | bool
|
when: cephx | bool or generate_fsid | bool
|
||||||
|
|
||||||
- name: get current fsid
|
- name: get current fsid
|
||||||
command: "{{ timeout_command }} {{ container_exec_cmd }} ceph --cluster {{ cluster }} daemon mon.{{ hostvars[mon_host | default(groups[mon_group_name][0])]['ansible_hostname'] }} config get fsid"
|
command: "{{ timeout_command }} {{ container_exec_cmd }} ceph --admin-daemon /var/run/ceph/{{ cluster }}-mon.{{ hostvars[mon_host | default(groups[mon_group_name][0])]['ansible_hostname'] }}.asok config get fsid"
|
||||||
register: rolling_update_fsid
|
register: rolling_update_fsid
|
||||||
delegate_to: "{{ mon_host | default(groups[mon_group_name][0]) }}"
|
delegate_to: "{{ mon_host | default(groups[mon_group_name][0]) }}"
|
||||||
until: rolling_update_fsid is succeeded
|
until: rolling_update_fsid is succeeded
|
||||||
|
|
Loading…
Reference in New Issue