当您执行快照时将保留虚拟机的状况和数据。生成虚拟机快照时,会复制并存储给定状态下的虚拟机的映像。需要多次恢复至某个虚拟机状态但不希望创建多个虚拟机时,快照会很有用。
可以对虚拟机执行多个快照,以便按照线性过程创建还原位置。使用多个快照,还可保存多个位置以供多种工作流程使用。快照可对单个虚拟机生成。生成多个虚拟机的快照时,例如为组中的每个成员虚拟机生成快照,需要为每个组成员的虚拟机单独生成快照。
作为测试软件是否具有未知或潜在不利影响的短期解决方案,快照非常有用。例如,您可将快照用作线性或迭代过程(如安装更新包)或分支过程(如安装不同版本的程序)中的还原点。使用快照可确保每次安装从相同基准开始。
通过快照,可以在更改虚拟机之前保留基准。
vSphere Client 中提供多个操作,用于创建和管理虚拟机快照和快照树。通过这些操作,您可以创建快照,还原快照层次结构中的任意快照,删除快照等。可以创建快照树,用于保存任意特定时间的虚拟机状态,以便稍后可以还原该虚拟机状态。快照树中的每个分支最多可有 32 个快照。
快照保留以下信息:
- 虚拟机设置。虚拟机目录,包含执行快照后添加或更改的磁盘。
- 电源状况。虚拟机可以打开电源、关闭电源或挂起。
- 磁盘状况。所有虚拟机的虚拟磁盘的状况。
- (可选)内存状况。虚拟机内存的内容。
快照层次结构
vSphere Client 将快照层次结构显示为带有一个或多个分支的树。层次结构中的快照具有父子关系。在线性过程中,除最后一个快照没有子快照之外,每个快照都有一个父快照和一个子快照。每个父快照均可以有多个子快照。可以恢复到当前父快照或在快照树中还原任意父快照或子快照,并从该快照创建多个快照。每次还原快照并生成另一个快照时,都会创建分支(子快照)。
- 父快照
- 您创建的第一个虚拟机快照是基础父快照。父快照就是最近保存的虚拟机版本的当前状况。执行快照会为每个连接到虚拟机的磁盘创建增量磁盘文件以及可选的内存文件。增量磁盘文件和内存文件会随基本 .vmdk 文件一起存储。父快照始终是紧靠“快照管理器”中“您在此处”图标上方出现的快照。如果恢复或还原快照,则该快照将成为当前“您在此处”状况的父快照。
- 子快照
- 先执行父快照,然后再执行虚拟机快照。各子快照包含所连接的每个虚拟磁盘的增量文件,可能还包含指向虚拟磁盘当前状况(您在此处)的内存文件。各个子快照的增量文件与上一个子快照相互进行合并,直至到达父磁盘。子磁盘稍后可以成为未来子磁盘的父磁盘。
如果快照树中有多个分支,则父快照与子快照之间的关系可以发生更改。父快照可以有多个子快照。许多快照都没有子快照。
快照行为
执行快照时,将通过为每个连接的虚拟磁盘或虚拟 RDM 创建一系列增量磁盘来保留特定时间的磁盘状况;也可以通过创建内存文件,保留内存状况和电源状况。执行快照会在快照管理器中创建一个表示虚拟机状态和设置的快照对象。
每个快照都创建了一个附加增量 .vmdk 磁盘文件。执行快照时,快照机制会阻止客户机操作系统写入基础 .vmdk 文件,而将所有写入定向到增量磁盘文件。增量磁盘表示虚拟磁盘的当前状况和上次执行快照时存在的状况之间的差异。如果存在多个快照,则增量磁盘可表示每个快照之间的差异。如果客户机操作系统写入虚拟磁盘的每个块,则增量磁盘文件可以快速扩展并变得与整个虚拟磁盘的大小相同。