创建快照时,我的 VM 备份脚本失败。
virsh snapshot-create-as --domain machine_1 snap --diskspec vda,file=/srv/test/test-snap.qcow2 --disk-only --atomic --no-metadata --quiesce
error: Requested operation is not valid: domain is already quiesced
即使在 VM 重新启动后,系统仍然处于静默状态,并且出现同样的错误。
我认为 quiesce 意味着 FS 冻结,但这没有任何意义,因为我在登录有故障的 VM 时仍然可以写入 FS。这不会在重新启动后幸存下来,对吧?
会不会是一个通信问题,让主机认为 GA 说机器处于静止状态,而实际上并非如此?
无论如何,是否有查询静默状态的命令(除了尝试快照并查看是否出现错误)?
假设有故障的虚拟机在出现不可重现的错误后停止,我可以通过退出停止状态来解决这个问题,不管这意味着什么。是否有 virsh 命令来取消 VM 的静默?
整个备份过程过去可以工作,现在它在 2 个 VM 上失败,但仍然可以在另外 2 个 VM 上工作,我想不出它们之间有什么相关的区别。
软件版本:
- 主机是 Debian Jessie,带有来自 backports 的 qemu-kvm 2.8+dfsg-3~bop8+1。
- 来宾是带有 qemu-guest-agent 2.8+dfsg-6+deb9u4 的 Debian Stretch。
(作为记录,备份脚本在 GitHub 上。基本上,它所做的是 1/ 创建快照,2/ 复制,3/ 提交快照。)
如果我quiesce
从快照命令行中删除该选项,事情就会顺利进行。但显然,这并不理想。
根本原因是在 libvirt 1.2.11 中修复的错误。
升级到较新的版本可以解决此问题。