Description of problem: shink-osd.yml is failing due to missing osd_fsid in " ceph --cluster ceph osd find 0" output ceph-ansible-3.2.8-1 ceph-ansible-3.2.12-1 # ceph --cluster ceph osd find 12 { "osd": 12, "ip": "10.74.176.57:6800/1476636", "crush_location": { "host": "osds-4", "root": "default" } } ansible-playbook shrink-osd.yml -e osd_to_kill=12,13,14,9,10,11 2019-04-23 08:43:35,623 p=12980 u=root | TASK [set_fact osd_hosts] *********************************************************************************************************************************************** ****************************************** 2019-04-23 08:43:35,623 p=12980 u=root | Tuesday 23 April 2019 08:43:35 -0400 (0:00:03.656) 0:00:13.323 ********* 2019-04-23 08:43:35,699 p=12980 u=root | ok: [localhost] => (item={'_ansible_parsed': True, 'stderr_lines': [], '_ansible_item_result': True, u'end': u'2019-04-23 08:43:32.607435', '_ansible_no_log': False, '_a nsible_delegated_vars': {'ansible_delegated_host': u'mons-2.testing.lab.pnq2.cee.redhat.com', 'ansible_host': u'mons-2.testing.lab.pnq2.cee.redhat.com'}, u'cmd': [u'ceph', u'--cluster', u'ceph', u'osd', u'find', u'12'], u'rc': 0, u'stdout': u'{\n "osd": 12,\n "ip": "10.74.176.57:6800/1462810",\n "crush_location": {\n "host": "osds-4",\n "root": "default"\n }\n}', 'item': u'12', u'delta': u'0:0 0:00.365448', '_ansible_item_label': u'12', u'stderr': u'', u'changed': True, u'invocation': {u'module_args': {u'warn': True, u'executable': None, u'_uses_shell': False, u'_raw_params': u' ceph --cluster ceph os d find 12', u'removes': None, u'argv': None, u'creates': None, u'chdir': None, u'stdin': None}}, 'stdout_lines': [u'{', u' "osd": 12,', u' "ip": "10.74.176.57:6800/1462810",', u' "crush_location": {', u ' "host": "osds-4",', u' "root": "default"', u' }', u'}'], u'start': u'2019-04-23 08:43:32.241987', '_ansible_ignore_errors': None, 'failed': False}) 2019-04-23 08:43:35,705 p=12980 u=root | fatal: [localhost]: FAILED! => {"msg": "Unexpected templating type error occurred on ({{ osd_hosts | default([]) + [ [ (item.stdout | from_json).crush_location.host, (it em.stdout | from_json).osd_fsid ] ] }}): coercing to Unicode: need string or buffer, list found"} --------------------- Yet shrink-osd.yml still works fine for 3.2.4-1.el7cp and 3.2.0-1.el7cp, because there is no osd_fsid required https://github.com/ceph/ceph-ansible/issues/3630 Version-Release number of selected component (if applicable): ceph-ansible-3.2.8-1 ceph-ansible-3.2.12-1 with Ceph cluster version <12.2.11 (tested with 3.2z1 and 3.2z2) How reproducible: Always Steps to Reproduce: 1. Install Ceph cluster version <12.2.11 2. try to remove osds with shink-osd.yml from these versions: ceph-ansible-3.2.8-1 ceph-ansible-3.2.12-1 3. Actual results: Expected results: Additional info:
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2019:0911