ceph重新创建osd报错RuntimeError: command returned non-zero exit status: 1的解决办法
今天在重新创建osd的时候报错
[controller][ERROR ] RuntimeError: command returned non-zero exit status: 1
[ceph_deploy.osd][ERROR ] Failed to execute command: /usr/sbin/ceph-volume --cluster ceph lvm create --bluestore --data /dev/sdb
[ceph_deploy][ERROR ] GenericError: Failed to create 1 OSDs
使用rm -rf删除osd数据文件提示设备繁忙

大概意思是当前id存在,之前创建的ceph-volume存在。查看如下
[root@controller ceph]# ceph-volume lvm list
====== osd.0 =======
[block] /dev/ceph-86d41397-db1d-4df7-bc7a-17dfb5d66b2c/osd-block-20d42528-f133-4fe3-b575-b5a96e104a1f
block device /dev/ceph-86d41397-db1d-4df7-bc7a-17dfb5d66b2c/osd-block-20d42528-f133-4fe3-b575-b5a96e104a1f block uuid f2kefo-Tzv3-eMjL-UeEF-udt0-lNoU-nGHysd cephx lockbox secret cluster fsid 7afe42fc-3c85-4ebe-b9dd-b0aca3ad27c3 cluster name ceph crush device class None encrypted 0 osd fsid 20d42528-f133-4fe3-b575-b5a96e104a1f osd id 0 osdspec affinity type block vdo 0 devices /dev/sdb1
从这条命令查看可以看到vg的名字是ceph-86d41397-db1d-4df7-bc7a-17dfb5d66b2c
使用vgremove删除

再次使用ceph-volume lvm list查看你会发现osd.0神奇的消失了
其他以此类推一样删除,删除之后重新创建osd成功!