安全删除磁盘后创建磁盘提示存储资源不足

问题描述

安全删除磁盘后重新创建磁盘提示数据存储容量不足,创建失败,但FusionCompute Portal界面显示数据存储容量足够。如下图所示,界面显示该数据存储实际可用空间为106G。

此时创建大小为100G的磁盘,提示“存储资源不足”,创建失败。

告警信息

处理过程

等待安全删除卷后台格式化任务完全执行完毕后,重新创建卷即可。可按如下方式检测安全删除卷后台格式化任务是否全部执行完毕。
1) 使用putty工具登录VRM主虚拟机(gandalf用户,通过管理IP地址登录)
2) 执行su命令,并提示输入“root”用户的密码,切换至“root”用户
3) 执行TMOUT=0命令,防止“PuTTY”超时退出
4) 执行命令:psql -U galax vrm -c "select * from tbl_vs_slice where sl_volume_id='-11';"
提示输入VRM数据库密码,如果未查询到相关记录,表明安全删除卷后台格式化任务已经完全执行完毕,如下所示:

如果查询到相关记录,表明安全删除卷后台格式化任务仍在进行,请继续等待其删除完毕。

根因

在分配slice时提示存储资源不足,没有足够的可用slice创建卷,为何界面上显示的实际可用空间与实际可用slice个数不一致?安全删除卷后其所在数据存储的实际可用空间是以1G为单位缓慢回收,而不是立即全部回收所删除卷的空间,但本问题中却发现该卷的空间被立即全部回收,分析安全删除卷的代码后未发现可引起本现象的问题,那么怀疑可能有其它任务对数据存储的实际使用空间进行了更改,其更改可能与安全删除卷任务产生了冲突,导致数据存储实际可用空间显示不正确。
分析代码发现有一个监控数据存储实际使用空间的后台任务,该任务每5分钟执行一次,对于块存储会自动检测该数据存储上的卷总容量,并根据计算的所有卷的总容量得到数据存储的实际可用容量并更新,如果安全删除卷后该后台监控任务正好执行,则会产生数据存储实际可用容量被重新计算并更新,与安全删除卷产生冲突,造成的结果与本问题正好吻合,分析当时日志:


发现删除任何执行后,正好运行了数据存储空间后台监控任务,并且该任务错误的更新了数据存储实际可用空间,导致了数据存储实际可用容量显示不正确。

建议与总结

局点在没有特殊要求的情况下不要使用安全删除虚拟机或安全删除磁盘的操作,尽量使用普通删除,且如果一定要使用安全删除操作,请在安全删除操作完全执行完毕期间,不要下发其它业务(如何判别安全删除格式化后台任务是否执行完毕请参考上述解决方法中的检查方式)。
阅读剩余
THE END