【运维篇】删除Cinder僵尸卷

来源:互联网 发布:知无涯者什么意思 编辑:程序博客网 时间:2024/05/02 07:53

删除cinder僵尸卷

 

问题描述:

         最近清理openstack环境,在删除cinder云硬盘时,出现数据删不掉,一直处理于deleteing状态。

        查询/var/log/cinder下面的日志信息,无报错。于时开始地毯式的搜索解决问题的办法,无意间在网上找到一篇文章,用于处理cinder中僵尸卷。附地址:

http://blog.csdn.net/gaoxingnengjisuan/article/details/20871731

 

解决办法如下:

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

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

解决过程如下:

1、通过lvdisplay |grep查询cinder对应的卷地址。

lvdisplay | grep "3a615ad5-5880-4b68-b1af-f9241ecd9287"

2、通过lsof | grep查询占用cinder卷的端口

lsof| grep "3a615ad5-5880-4b68-b1af-f9241ecd9287"kill-9 76568


3、通过lvremove删除相应的卷

lvremove /dev/cinder-volumes/volume-3a615ad5-5880-4b68-b1af-f9241ecd9287
结果报错:device-mapper: remove ioctl on failed: Deviceor resource busy。设备繁忙


4dmsetupinfo -c /dev/cinder-volumes/volume-3a615ad5-5880-4b68-b1af-f9241ecd9287 查看是否被打开


可以看到open4说明它被打开了,所以remove不掉。

5fuser -m /dev/cinder-volumes/volume-3a615ad5-5880-4b68-b1af-f9241ecd9287 查看是谁打开的


我们可以看到有四个进程打开/dev/dm-5

6把占用设备的进程杀掉

kill -9  58638 76788  78918  80050

7、重新执行第45步,验证是否还有进程占用

从上图可以看到open0,表示现在没有进程占用

8、重复第3步操作,通过lvremove删除相应的卷


删除成功!

9、验证卷是否存在


volume-3a615ad5-5880-4b68-b1af-f9241ecd9287已被删除!

10、进入系统,更改需要删除卷状态为“可用配额,然后“删除卷”


操作完成!



0 0
原创粉丝点击