如何告诉 virsh:保存虚拟机和虚拟磁盘的状态,但不保存附加磁盘?

如何告诉 virsh:保存虚拟机和虚拟磁盘的状态,但不保存附加磁盘?

我在我的主机 (brighton) 上安装了一个新的 CentOS 7.2 guest (babybrighton),然后从 Brighton 执行此操作(其中 /dev/sdb 是连接到 Brighton 的物理设备):

virsh attach-disk --persistent babybrighton /dev/sdb vdb

这工作正常并且磁盘显示正常:

[root@babybrighton ~]# ls -l /dev/vdb* 
brw-rw----. 1 root disk 252, 16 Dec  4 20:37 /dev/vdb 
brw-rw----. 1 root disk 252, 17 Dec  4 20:37 /dev/vdb1 
brw-rw----. 1 root disk 252, 18 Dec  4 20:37 /dev/vdb2 
brw-rw----. 1 root disk 252, 19 Dec  4 20:37 /dev/vdb3 

我现在想virsh snapshot-create-as将babybrighton的状态和数据保存在/dev/vda*上,这是我在创建babybrighton时制作的伪磁盘。

然而,我确实不是想要virsh snapshot-create-as保存babybrighton 上/dev/vdb* 的状态,因为/dev/sdb 是brighton 上的一个8TB 驱动器,用于保存babybrighton VM 本身。

希望快照记住它正在将 /dev/vdb 映射到主机的 /dev/sdb,但这是快照应该具有的有关 /dev/vdb 的唯一信息。

我尝试过类似的事情:

virsh snapshot-create-as --diskspec=vda,snapshot=internal --diskspec=vdb,snapshot=no babybrighton test1 "semi external disk"  

# result 

error: unsupported configuration: disk 'vdb' must use snapshot mode 'internal' 

还有许多类似的东西,但还没有找到任何有效的方法,或者即使这是可能的。

我需要在babybrighton 启动时可用/dev/vdb,所以我不能在登录babybrighton 后运行命令。

有什么简单的方法可以实现这一点吗?

如果没有,保持 /dev/vda* 同步以便我可以在需要时回滚的好方法是什么?

VirtualBox 能更好地处理这个问题吗?

相关内容