Openstack无法删除云硬盘
2016-07-05 00:00
477 查看
背景:
Openstack kilo版本,终止了云主机之后,发现无法删除对应的云硬盘,删除提示报错为云硬盘的状态不是错误或者可用状态,于是切换至admin用户,手动更新云硬盘的状态至错误状态删除步骤:
查看云硬盘状态:
# cinder list |grep error | 2e641c12-79bf-463b-b65b-6e81534ececa | error | hyp_001 | 50 | - | true | | | 57a8ff48-4b9e-4dfd-b038-bbf8bc3f13d3 | error | hyp_002 | 50 | - | true | |
命令行删除,提示报错说还有依赖的快照。
# cinder delete 2e641c12-79bf-463b-b65b-6e81534ececa Delete for volume 2e641c12-79bf-463b-b65b-6e81534ececa failed: Invalid volume: Volume still has 1 dependent snapshots. (HTTP 400) (Request-ID: req-5ba025fb-5a61-422b-b00a-556e19083bd5) ERROR: Unable to delete any of the specified volumes.
查看快照:
# cinder snapshot-list|grep hyp | 1806ff4c-558b-4a99-808f-1998163d5692 | 2e641c12-79bf-463b-b65b-6e81534ececa | deleting | snapshot for hyp_001_初始化 | 50 | | 3cb470d2-4098-4975-a321-2bb85cf1e91a | 57a8ff48-4b9e-4dfd-b038-bbf8bc3f13d3 | deleting | snapshot for hyp_002_初始化 | 50 |
发现快照处于deleting状态,一直是这样
查看ceph池,选择hyp_001的id号
# rbd ls -p volumes|grep 2e641c12-79bf-463b-b65b-6e81534ececa volume-2e641c12-79bf-463b-b65b-6e81534ececa
以上可知,删除不了云硬盘是硬盘它有依赖的快照,但是快照无法删除的原因就不知道了,没有办法,只能采取暴力手段,进入元数据库。
mysql> select id,status,volume_id,display_name from snapshots where volume_id = '2e641c12-79bf-463b-b65b-6e81534ececa'; +--------------------------------------+----------+--------------------------------------+--------------------------------+ | id | status | volume_id | display_name | +--------------------------------------+----------+--------------------------------------+--------------------------------+ | 1806ff4c-558b-4a99-808f-1998163d5692 | deleting | 2e641c12-79bf-463b-b65b-6e81534ececa | snapshot for hyp_001_初始化 | +--------------------------------------+----------+--------------------------------------+--------------------------------+
删除元数据库中的数据
元数据cinder库中的表snapshots可以查看到hyp_001的快照的信息,删掉它mysql> delete from snapshots where volume_id = '2e641c12-79bf-463b-b65b-6e81534ececa'; Query OK, 1 row affected (0.00 sec)
再到命令行中删除云硬盘,查看发现已经删掉了
# cinder delete 2e641c12-79bf-463b-b65b-6e81534ececa # cinder list |grep error | 57a8ff48-4b9e-4dfd-b038-bbf8bc3f13d3 | error | hyp_002 | 50 | - | true | |
检查快照和ceph池,发现也已经没有了
# cinder snapshot-list|grep hyp | 3cb470d2-4098-4975-a321-2bb85cf1e91a | 57a8ff48-4b9e-4dfd-b038-bbf8bc3f13d3 | deleting | snapshot for hyp_002_初始化 | 50 | # rbd ls -p volumes|grep 2e641c12-79bf-463b-b65b-6e81534ececa
用同样的方法把另外一个也删掉。
总结:
1、删除的时候注意id核volume-id两个字段,不要弄混掉了;2、测试环境,暴力解决问题还是不太好,注意检查日志来对症下药。
相关文章推荐
- Linux如何配置ip并开启
- tomcat全局过滤器
- 主机网络切换后,docker toolbox里的容器网络不通了,解决方法
- IDEA实现tomcat热部署
- (转)HDFS客户端的权限错误:Permission denied
- centos7下使用yum安装mysql
- Linux 使用wget 命令下载JDK的方法
- linux系统VPS 扩展硬盘
- linux下分区调整 图解
- nginx下支持PATH_INFO详解
- [省了index.php看这] Nginx下支持ThinkPHP的Pathinfo和URl Rewrite模式
- CentOS最常用命令及快捷键整理
- 服务器环境之6:使用maven自动部署到tomcat及编写sh一键部署脚本
- 网站加证书详情
- 转:解决 linux下编译make文件报错“/bin/bash^M: 坏的解释器:没有那个文件或目录
- 怎么快速的掌握AOPR使用方法
- 引擎自然排名规则和网站优化技巧-最模板为例
- 好的ecshop模板是什么样的?
- 2016年网站建设市场有多大?
- 电子商务网站SEO的绩效如何考核?