虚拟机卡死无法关闭_VC君讲技术12 | 故障解决:rbd锁引起kvm虚拟机无法启动

点击蓝字关注我们

《VC君讲技术》

技术分享第12期

作者:磨渣、乐枫

前言

在使用kvm与ceph组合的时候,存储环境因为各种各样的问题(网络,磁盘,或者其它各种异常),引起了集群状态变化,然后会出现某些虚拟机正常,某些虚拟机无法启动的情况。

特别是win server2008 ,会一直卡在启动界面滚动条位置,曾经某个环境遇到过一次无法启动,通过导出导入的方式得到解决,但没有找到原因。后来内部复现问题,通过关闭rbd的属性后,就可以正常启动,但是根因还没有找到,需要进一步的分析问题。

复现的方法比较简单,机器时间往回调整了十几分钟,集群出现mon选举,osd出现闪断以后,部分虚拟机就会出现无法启动的情况。

问题分析

导入导出或者克隆可以启动虚拟机,基本可以判断数据是没有问题的。那么应该就是其它问题,通过关闭属性可以解决,大概能够定位到这几个属性相关的features:

layering, exclusive-lock, object-map, fast-diff, deep-flatten。

而锁文件是最大的怀疑,之前处理ctdb的时候,就有过锁没有加上超时时间,然后ctdb挂掉以后,锁不会自动释放的问题,怀疑这个地方类似。我们的rbd的镜像如下

[root@lab101 vm]# rbd info rbd/windows-server-8-base-clone
rbd image 'windows-server-8-base-clone':
size 50GiB in 12800 objects
order 22 (4MiB objects)
block_name_prefix: rbd_data.102376b8b4567
format: 2
features: layering, exclusive-lock, object-map, fast-diff, deep-flatten
flags:
create_timestamp: Fri Dec 18 11:56:27 2020
parent: rbd/windows-server-8-base@for-clone
overlap: 50GiB

这个地方会有两个对象被上锁

[root@lab101 ceph]# rbd lock ls rbd/windo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值