![基于 LVM 快照的 KVM VM](https://linux22.com/image/582559/%E5%9F%BA%E4%BA%8E%20LVM%20%E5%BF%AB%E7%85%A7%E7%9A%84%20KVM%20VM.png)
据我所知,LVM 快照基本上不会占用硬盘上的任何“真实”空间。
我在我的主机上使用 KVM 虚拟化,假设我为我的 Linux VM 创建了一个 LVM 卷,然后正确安装它、关闭它并获取它的 LVM 快照。
基本上我只是克隆了它(LVM2 快照是 r/w)。
我将其提供给 KVM 就好了?我可以对该卷进行快照吗否次数并得到否在实际硬盘上占用零实际空间的虚拟机数量?
当克隆的虚拟机开始写入时,它们实际上只会写入与“主”虚拟机不同的内容。这看起来是一个有趣的想法,可以管理大量“模板”虚拟机,同时节省大量磁盘空间。
或者也许我只是发明了自行车。你觉得呢?这可能吗?
答案1
目前,当您尝试同时创建多个相同来源的快照时,LVM 快照的性能会非常糟糕,而且您必须为每个快照单独预留空间,因此这不是一个好主意。使用 qcow2 映像而不是原始 lvm 卷会更好,因为它们确实具有良好的快照支持,并且您可以为不同 VM 的多个读/写映像设置一个只读基础映像,以用作共享起点。
答案2
如果您没有写入您的虚拟机磁盘,是的,快照占用 0 磁盘空间,但是一旦您开始写入,lvm 快照空间将开始填满,如果空间已满,您的快照将会失效。这就是为什么 lvcreate -s 仍然要求您分配一些磁盘空间。如果您的所有虚拟机实际上都是只读的,那么您只需使用 cd 或 dvd 即可。
但是,您确实节省了基本图像大小,因为每个快照仅占用增量的空间。因此,如果您的虚拟机大部分都是读取而很少写入,您仍然可以获益。至于性能,您只需测试一下它是否适合您。