From: Vicente Cheng Date: Thu, 10 Sep 2015 08:13:37 +0000 (+0800) Subject: ceph-disk: use `ceph osd dump` to check osd status X-Git-Tag: v10.0.1~53^2~13 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=be471a29943d55734f44932a83f1d836512f0a1f;p=ceph.git ceph-disk: use `ceph osd dump` to check osd status - Before deactivated osd, we need to know the status including IN/OUT, UP/DOWN on this osd. Signed-off-by: Vicente Cheng --- diff --git a/src/ceph-disk b/src/ceph-disk index cf6b6d1f0250..19be89f0650d 100755 --- a/src/ceph-disk +++ b/src/ceph-disk @@ -2645,8 +2645,7 @@ def _check_osd_status(cluster, osd_id): [ 'ceph', 'osd', - 'find', - osd_id, + 'dump', '--cluster={cluster}'.format( cluster=cluster, ), @@ -2657,9 +2656,9 @@ def _check_osd_status(cluster, osd_id): except subprocess.CalledProcessError as e: raise Error(e) out_json = json.loads(out) - if out_json['status IN/OUT'] == u'IN': + if out_json[u'osds'][int(osd_id)][u'in'] is 1: status_code += 2 - if out_json['status UP/DOWN'] == u'UP': + if out_json[u'osds'][int(osd_id)][u'up'] is 1: status_code += 1 return status_code