虚拟机迁移pause状态,后续迁移pause疑惑

       今天有人在测试虚拟机迁移,说pause状态了,我马上上去看,一看确实是pause状态,马上去/var/log/libvirt/qemu里看qemu的日志,可是发现qemu日志里竟然没有任何报错。

       同时报警群里报了个error,说迁移的时候没有触发suspend事件。这个就比较严重了,如果没有触发suspend事件,可能会导致其它依赖这个事件的一些操作没有完成。好在我们在迁移的时候会有其它防御措施,所以不会出现依赖这个事件的操作没有完成。

      qemu日志里没有任何报错,这个就比较郁闷了,都pause为什么不报错了。然后就去源宿主机上查看,发现如下报错:

KVM: entry failed, hardware error 0x80000021

If you're running a guest on an Intel machine without unrestricted mode
support, the failure can be most likely due to the guest entering an invalid
state for Intel VT. For example, the guest maybe running in big real mode
which is not supported on less recent Intel processors.

EAX=00000000 EBX=00000088 ECX=00000082 EDX=00000000
ESI=89d3b010 EDI=46c23180 EBP=00000000 ESP=4c092068
EIP=47c3654f EFL=00000282 [--S----] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0000 00000000 0000ffff 00009300
CS =f000 ffff0000 0000ffff 00009b00
SS =0000 00000000 0000ffff 00009300
DS =0000 00000000 0000ffff 00009300
FS =0000 00000000 0000ffff 00009300
GS =0000 00000000 0000ffff 00009300
LDT=0000 00000000 0000ffff 00008200
TR =0000 00000000 0000ffff 00008b00
GDT=     00000000 0000ffff
IDT=     00000000 0000ffff
CR0=60000010 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000000
Code=00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 <00> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

上面报错说明,虚拟机起来后,虚拟机cpu调度进入vmx根模式,导致vm_entry,vcpu准备运行,但是vcpu某些mode在现在物理cpu上不支持。出现这种问题基本上是源和目的物理机cpu不一致导致,于是查看两物理机果然不一样,于是马上报告管控,让他们更新下。

不过按道理出现这种错误应该就是pause模式,那为什么还能迁移呢? 

 

对于上面这些得出的结论我很是不能理解。

于是查看计算节点agent的日志,并和qemu日志对应起来看。原来这台虚拟机迁移过三次。

第一次迁移是成功的,没有任何问题,应该是源是目的cpu mode子集

第二次迁移是失败的,虚拟机是pause状态的,但是刚迁移完成时是running状态,管控还没来得及更新状态马上进行了下一次迁移

第三次迁移是成功了,但是是对pause状态的虚拟机进行迁移。所以迁移过去还是pause状态。

 

最后没有suspend事件,用脚本测试了下,发现确实没有suspend事件,不是因为偶尔丢的。 后来想通了,本来就是pause状态迁移的,不需要suspend事件了啊。

pause状态竟然也支持迁移,以前真不知道。以于查看代码:

只要有id的基本就能迁移,原来是这样的。

 

基本整个流程的出现的问题基本都理解了。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值