cinder中删除僵尸卷(error_deleting )的方法

近来逛技术社区和QQ群,发现自己在openstack应用方面的技术和经验需要进一步提高,在这个分类中,我将记录一些自己平时在openstack实际操作过程中的一些东西,仅供自己日后翻看!

前一段时间,在cinder中删除卷的时候,卷的删除操作执行后的状态为error_deleting,再尝试删除的时候,会提示由于卷的状态不是available也不是error,所以不能删除。当时我的处理方法是:

1 到数据库cinder表中找到volumes,将其中对应要删除的卷的状态由error_deleting改为deleted;

2 针对lvm,可以用命令lvdisplay列出所有卷的信息,如果现在应用命令lvremove来删除相应的卷,则会提示要删除的卷正在使用中,所以我们使用命令lsof查看相应卷所占用的进程,然后kill这个进程;

3 应用命令lvremove来删除相应的卷;

4 此时问题貌似已经解决,因为已经可以正确地执行cinder中命令,要删除的卷的记录也已经删除。但是这里还有个问题,默认的建立卷的最大数目为10,如果之前删除的僵尸卷的数目为1,但是此时当你建立卷的数目为9个时,再尝试建立新卷时,就会提示已经达到卷的数目的最大值。解决方法就是到cinder数据表中找到quota_usages,将其中in_use中的数据减少相应的删除的僵尸卷的数目即可。

你可能感兴趣的:(openstack)