ceph执行unmap操作时"rbd: /dev/rbd1 is not a block device"的解决策略

来源:互联网 发布:mysql配置参数详解 编辑:程序博客网 时间:2024/06/04 19:11

 某一天,我要清除一个ceph的镜像(image)时,在执行unmap操作遇到了一个神奇的问题:

rbd: /dev/rbd1 is not a block device...

 看报错就是说,image映射到的一个块设备不存在了,cd到对应目录下也确实没有,因为是隔了一个寒假才做的整理,也不清除是什么具体原因造成的(猜测是其他同学重启了这台虚拟机又没有做相应的unmap操作?)。

 网上到处搜也搜不到解决方案,研究了一翻,尝试了诸如强行创建一个同名rbd,找找看能不能从ceph集群的命令删除等方法无果后,找到了一个在关闭无法unmap的主机后在另一个节点删除对应Image的方法

 这个方案的思路来源于当镜像(Image)被映射时的提示:
这里写图片描述

 上面说了,可以尝试unmapping或者…等待客户端超时30秒再尝试。顺着这个思路,我们把无法unmapped机器关机,然后在另一个节点进行删除,结果顺利删除了这个Image,然后再将对应机器开启,通过showmapped查看,发现果然之前的Image没有了。
 可能就是简单的“你重启一下试试”梗,但是这里之所以纠结了很久才关机,是因为这台虚拟机上部署了很多其他服务,不能随便关闭。

0 0
原创粉丝点击