为什么长时间保留 VMware 快照是不好的做法?

Are*_*ete 13 vmware-workstation virtual-machine

我只是在学习使用 VMware Workstation。我使用它的主要原因之一是因为它允许我拍摄快照。这很棒,因为我可以在实验性变化中来回跳跃。

但是我从 YouTube 视频中听说保留快照是一个坏主意,建议提交快照的更改或将其删除以确保性能稳定性。

VMware 文档说:

...为了获得更好的性能,请仅使用 2 到 3 个快照,并且单个快照的使用时间不要超过 24-72 小时。

然而,它并没有解释为什么必须仅在短时间内保留快照。

有人可以详细说明一下吗?如果我使用快照,我想保留虚拟机的不同状态,还是有另一种方式,也许我没有头?

NZD*_*NZD 12

创建快照时,原始虚拟磁盘将被冻结并创建快照文件。从那一刻起,原本会对虚拟磁盘进行的所有更改都写入快照文件。

如果您对新情况感到满意,则可以提交快照。然后,您的所有更改都将应用于原始虚拟磁盘,并且可以删除快照文件。

否则,您可以将系统回滚到创建快照时的状态。

当您已有快照时,也可以制作另一个快照。然后将冻结原始快照,所有更改都将转到第二个快照文件。您可以继续此操作以在历史记录中创建多个回滚点(正如您已经提到的)。

随着时间的推移,快照文件会增长,尤其是当您对系统进行大量更改时,例如安装新软件包或删除大量文件。如果您制作多个快照,它们甚至可能变得比原始磁盘更大。

当我必须升级我负责的其中一台服务器时,我会使用快照。如果升级成功并且没有问题,我会提交快照。

但是,如果出现问题,我会回滚更改并制作服务器的副本并在副本上进行升级以尝试找出问题所在。

快照有性能损失。您的系统必须始终看到一致的磁盘,因此如果它访问虚拟磁盘,VMware Workstation 将从原始磁盘读取,应用快照中的更改并将结果呈现给您的系统。

VMware Workstation 将使用一些智能缓存来保持性能,但随着快照的增长和快照数量的增长,这将变得更加困难和缓慢。

如果你想保持某种状态,最好在那个时候制作一个虚拟磁盘(或整个系统)的副本并保留它作为参考。副本的大小永远不会增长,否则您的系统不会受到快照无限增长的不利影响。


Iro*_*ash 7

尽管@NZD 的回答在技术上是正确的,但我想补充一个不同的观点。这一切都取决于您要实现的目标。我使用了几十个不同的环境,每个环境都有多个快照。其中一些环境用于测试并且必须非常稳定,因此它们会保存很长时间,有时长达 6 个月。您只需要意识到这样做时可能会出现的问题,但您可以这样做。

还原到旧快照时,我们知道 Windows 和/或应用程序更新将过时。我们知道这可能会导致域的信任关系不再有效,我们知道时间可能因夏令时而改变。但是,一旦您将所有这些都考虑在内,您就可以拥有一个非常稳定的环境,因此在测试您正在开发的应用程序的更改时,唯一的变化因素是应用程序本身。

这真的取决于你想要达到的目标。如果您将 VM 用于生产机器,那么我建议遵循新西兰元的回答,但是如果您将其用于生产机器,我建议您不要使用 VMare Workstation,而是使用 ESX/ESXi 之类的东西来提高性能和稳定性问题。

总而言之,我的回答是:视情况而定,这实际上可能没问题。我认为一个更大的因素是确保将快照数量保持在最低限度,因为这会大大降低 VM 的速度并占用大量空间。