了解 ESXi 中的虚拟机快照 (1015180)

Symptoms

免责声明:本文是 Understanding VM snapshots in ESXi 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

遇到以下问题时,本文可能会有所帮助:

  • 由于父虚拟磁盘和子虚拟磁盘之间的依赖关系破裂,虚拟机没有响应或无法启动。
  • 指定内存快照选项时,创建快照的时间太长。
  • 在快照操作期间执行静默操作时,备份失败。
Purpose

本文将帮助您了解 ESXi 中的虚拟机快照。
Resolution

了解 VMware ESXi 中的虚拟机快照:

目录:

什么是快照?

快照可保存虚拟机在特定时刻的状态和数据。

  • 状态包括虚拟机的电源状态(例如,打开电源、关闭电源、挂起)。
  • 数据包括组成虚拟机的所有文件。这包括磁盘、内存和其他设备(例如虚拟网络接口卡)。

虚拟机提供了多个用于创建和管理快照及快照链的操作。通过这些操作,您可以创建快照、还原到链中的任意快照以及移除快照。可以创建多种快照树。

Configuring VMware vCenter Server to send alarms when virtual machines are running from snapshots (1018029)

如果“删除快照”或“删除所有快照”操作的整合部分失败,vSphere 将通过 UI 向您发送通知。选项“整合”可通过“快照”菜单访问,以用于整合快照。有关详细信息,请参见 Consolidating/Committing Snapshots in ESXi (1002310)

有关详细信息,请参见 Configuring vCenter Server to send alarms when virtual machines are running from snapshots (1018029)

创建快照的过程

创建快照时,可以指定多个选项:

  • 名称:这用于标识快照。
  • 描述:这用于描述快照。
  • 内存:如果标记为 1 或 true,则虚拟机内部状态的转储将包括在快照中。内存快照的创建时间要长一些,但其允许将运行中的虚拟机状态还原为创建快照时的状态。默认情况下此选项处于选中状态。如果未选中该选项,并且未选中静默,快照将创建崩溃一致性文件,可使用这些文件重新引导虚拟机。(内存有多大,就会创建多大的vmem文件,创建快照时间慢)

    注意:生成内存快照时,虚拟机完全处于停止状态。有关详细信息,请参见 Taking a snapshot with virtual machine memory renders the virtual machine to an inactive state while the memory is written to disk (1013163)
  • 静默:如果标记为 1 或 true,并且在生成快照时虚拟机电源已打开,将使用 VMware Tools 静默虚拟机中的文件系统。静默文件系统是使物理或虚拟计算机的磁盘数据进入适合备份的状态的过程。此过程可能包括将脏缓冲区从操作系统内存高速缓存刷新到磁盘等操作,或其他更高级别的应用程序特定任务。(首选,创建快照时间快,文件占用小)
注意:静默表示暂停或改变在计算机上运行的进程的状态,特别是可能会在备份过程中修改存储在磁盘上的信息的状态,以保证一致的可用备份。
注意:静默和内存快照相互排斥。vSphere Web Client 和 HTML5 客户端已实施此策略,但如果同时选择内存快照和静默,则 vSphere Client 6.0 会忽略静默。
 

创建快照时,快照将由以下文件组成:

  • -.vmdk 和 --delta.vmdk

    各个虚拟磁盘的 .vmdk 和 -delta.vmdk 文件的集合在快照生成时连接到虚拟机。这些文件可称为子磁盘或增量链接。这些子磁盘稍后可以视为未来子磁盘的父磁盘。在原始父磁盘中,每个子磁盘将构建一个从虚拟磁盘的当前状态指回原始状态的 delta(每次一步)。

    注意

    • 值在同一快照的所有子磁盘中可能不一致。文件名基于文件名的可用性来选择。
    • 如果虚拟磁盘大小大于 2TB,则 delta 文件的格式为 --sesparse.vmdk
    • 对于 VMFS6,所有快照都将采用 sesparse 格式,而无论大小如何。
  • .vmsd

    .vmsd 文件是虚拟机快照信息的数据库,并且是快照管理器信息的主要来源。该文件包含一些行条目,这些条目定义了快照之间以及每个快照的子磁盘之间的关系。
  • Snapshot.vmsn

    .vmsn 文件包含虚拟机的当前配置和(可选)活动状态。捕获虚拟机的内存状态允许您还原到已开启的虚拟机的状态。而使用非内存快照时,只能还原到已关闭的虚拟机的状态。创建内存快照比创建非内存快照需要更长时间。
注意

子磁盘和磁盘使用情况

重要的是要注意以下有关子磁盘空间利用率的要点:

  • 如果虚拟机正在快照上运行,则将对子磁盘进行更改。对该磁盘执行的写入操作越多,该磁盘就会变得越大,直至达到上限(基础磁盘大小与少量开销之和)。
  • 子磁盘会增长得很大,乃至填满整个数据存储,但这是因为包含数据存储的 LUN 不够大,无法容纳基础磁盘、创建的快照数量、产生的开销和创建的 .vmsn 文件。

有关子磁盘和磁盘使用情况的详细信息,请参见:

磁盘链

通常,首次创建快照时,将通过父磁盘创建第一个子磁盘。连续快照将从链上的最后一个子磁盘生成新的子磁盘。如果快照链中有多个分支,则关系可能会发生更改。

下图是快照链的示例。每个正方形表示上面部分所述的一个数据块或粒度:



注意:手动操作单个子磁盘或任意快照配置文件可能会影响磁盘链。由于可能会导致数据丢失,VMware 不建议手动修改磁盘链。有关详细信息,请参见 Consolidating/Committing Snapshots in ESXi (1002310)
Related Information
  • 要确定虚拟机是否正在快照上运行,请参见 Determining if a virtual machine is using snapshots (1004343)
  • 在虚拟环境中托管 Microsoft Active Directory 控制器时,有一些特定注意事项。有关注意事项的完整列表,请参见 Microsoft 知识库文章 888794

    注意:截至 2019 年 12 月 19 日,上述链接有效。如果您发现此链接已损坏,请针对本文提供反馈,VMware 员工会根据需要更新本文。
  • 易受时间影响的应用程序可能会由于恢复到以前的快照而受到影响。恢复快照将使虚拟机恢复到创建快照的时间点。这包括在客户机操作系统中对时间敏感的服务或应用程序进行的任何操作。
  • 如果虚拟机恢复到某个快照,则客户机操作系统中自该快照生成以来所配置的所有设置都将被恢复。恢复的配置包括(但不限于)先前的 IP 地址、DNS 名称、UUID、客户机操作系统补丁程序版本等。

还原快照

 
 上次更新时间 2019年05月31日  0
 
 添加到 MyLibrary
< 提出新问题

要使虚拟机恢复其原始状态,或者恢复为快照层次结构中的其他快照,可以还原快照。

还原某个快照时,会将虚拟机的内存、设置和虚拟机磁盘的状况恢复为执行该快照时所处的状况。如果要在启动虚拟机时将其挂起、打开电源或关闭电源,请确保执行该快照时虚拟机处于正确的状况。

可以按下列方式还原快照:
恢复为最新快照
还原父快照,即层次结构中 您在此处位置的上一级。 恢复为最新快照将激活该虚拟机当前状况的父快照。
恢复为
允许您还原快照树中的任何快照,并使该快照成为虚拟机当前状况的父快照。在此之后的后续快照将创建快照树的新分支。

还原快照具有以下作用:

  • 当前磁盘和内存状况会被丢弃,而虚拟机会恢复到父快照的磁盘和内存状况。
  • 不移除现有快照。您可以随时还原这些快照。
  • 如果该快照包括内存状况,则虚拟机将处于创建该快照时的电源状况下。
    还原快照后的虚拟机电源状况
    执行父快照时的虚拟机状况 还原后的虚拟机状况
    已打开电源(包括内存) 内存快照 恢复为父快照,并且虚拟机已打开电源且正在运行。
    已打开电源(不包括内存) 静默快照 恢复为父快照,并且虚拟机已关闭电源。
    已关闭电源(不包括内存)  恢复为父快照,并且虚拟机已关闭电源。

** 从快照恢复之后,运行某些特定类型工作负载的虚拟机可能需要几分钟的时间才能恢复响应。

注:vApp 内的虚拟机的 vApp 元数据不遵循虚拟机配置的快照语义。执行快照之后删除、修改或定义的 vApp 属性在虚拟机恢复到该快照或任何先前快照之后将保持原样(已删除、已修改或已定义)。

备份还原ESXi 中的虚拟机快照的更多相关文章

  1. SQL点滴12—SQL Server备份还原数据库中的小把戏

    原文:SQL点滴12-SQL Server备份还原数据库中的小把戏 备份数据库时出现一个不太了解的错误 ,错误信息“is formatted to support  1 media families, ...

  2. 把ESXi中的虚拟机通过OVA/OVF导出的方式迁移到Proxmox 5

    引用地址:https://blog.csdn.net/zebra2011/article/details/83046841 一.前言    之前发现ESXi是免费的时候,非常兴奋地把几台服务器都装上了 ...

  3. Mysql数据库之备份还原(mysqldump,LVM快照,select备份,xtrabackup)

    备份类型: 热备份:读写不受影响 温备份:仅可执行读备份 冷备份:离线备份,读写均不能执行,关机备份 物理备份和逻辑备份 物理备份:复制数据文件,速度快. 逻辑备份:将数据导出之文本文件中,必要时候, ...

  4. SQL Server备份还原数据库中的小把戏

    备份数据库时出现一个不太了解的错误 ,错误信息“is formatted to support  1 media families, but 2 media families are expected ...

  5. 如何设置ESXi中的虚拟机随主机一同启动?

    笔者新装了几台ESXi的主机, 其中一台上面运行着一台安装了vCenter的虚拟机.  笔者一路默认, 也没改什么设置. 在试图解决其他问题的过程中, 笔者重启了ESXi. 后来发现vCente登不进 ...

  6. ESXi中的虚拟机如何使用U盘和加密Key

    最近想在虚拟机中的主机使用通讯加密key来部署专门用于转发和加密的通讯前置机.故查询测试一下是不是能识别. 第一步:在虚拟宿主机上添加USB控制器,右键单击目标虚拟机,选中"编辑设置&quo ...

  7. ESXI中 Linux虚拟机不重启扩展磁盘

    1.首先对虚拟机进行编辑设置 硬盘大小进行修改到80G: 2.在Linux系统中查看磁盘大小 此时并没有什么变化: 3. 上面没有变化的原因,是因为需要重新扫描存储设备的scsi总线: 找到scsi磁 ...

  8. Hyper-V 虚拟机快照:常见问题

    发布时间: 2009年3月 更新时间: 2010年12月 应用到: Windows Server 2008 什么是虚拟机快照? 虚拟机快照可捕获正在运行的虚拟机的状态.数据和硬件配置. 快照有哪些用途 ...

  9. 挖一挖MongoDB的备份与还原(实现指定时间点还原和增量备份还原)

    一  研究背景需求 目前作者所在公司的MongoDB数据库是每天凌晨做一次全库完整备份,但数据库出现故障时,只能保证恢复到全备时间点,比如,00:30 做的完整备份,而出现故障是下午18:00,那么现 ...

  10. Linux day01(二)虚拟机快照和克隆的用法介绍

    一:快照 优点:运行虚拟机后不用担心系统会被弄崩溃了,点击快照会立即恢复到初始状态 缺点:回滚会带来数据的丢失,所以要考虑数据恢复的成本和找回数据时进行操作的成本 1. 在导航栏中找虚拟机快照的小图标 ...

随机推荐

  1. 花10几元买ESP32-C3,体验一下MicroPython (和CircuitPython)

    ESP32是近年很火的国产低成本MCU系列. 买了芯片ESP32-C3的模组安信可 ESP-C3-32S的开发板安信可 NodeMCU ESP-C3-32S-Kit .开发板很小,没有任何多余的东西, ...

  2. XView 架构升级之路

    作者:京东零售 胡本奎 一 背景 1 是什么 XView是一个透明的塑料袋(容器),基于通用的webview框架改造而来,通常用于大促弹窗等营销场景,展现形式如下图: 2 痛点 在实际的开发使用中XV ...

  3. mybatis动态标签——foreach批量添加和删除

    <!-- [foreach标签] collection:设置要循环的数组或集合 item:用一个字符串表示数组或集合中的每一个数据 separator:设置每次循环的数据之间的分隔符 open: ...

  4. Vue中实现异步加载的组件进行分割介绍

    一,传统方式 如上图所示,不管我们前端页面是否访问了About组件的内容,打包之后的代码都会将其打包到js文件中,缺点:这样是无畏的增加了请求的负担,加载了我们不需要的js代码 如果运用webpack ...

  5. flannel 关闭SNAT

    flannel 关闭SNAT 默认情况下,flannel 访问集群外网络是通过 SNAT 成宿主机 ip 方式,在一些金融客户环境中为了能实现防火墙规则,需要直接针对 POD ip 进行进行规则配置, ...

  6. UE打LOG整理

    Kismet库 蓝图方法cpp使用 例:打LOG:Print String 蓝图节点的鼠标tips:Target is Kismet System Library #include "Run ...

  7. allure安装配置

    代理节点配置allure 下载allure https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline 配置环境变 ...

  8. iOS组件化 pod命令创建私有库详解【引用其他私有库、oc、Swift混编】

    1.命令创建pod pod lib create pod的名字 2.根据指令依次填写信息 3.填写完成后会自动打开项目 .然后修改podspec文件即可 4.创建当前pod的git 仓库.将当前代码放 ...

  9. mysql函数实现oracle的序列

    1.创建一张伪序列表 CREATE TABLE sequence ( seq_name VARCHAR (50) NOT NULL,-- 序列名称 current_val INT NOT NULL,- ...

  10. GUI程序中使用Write语句调试

    Lazarus GUI程序中使用Write语句调试 比如像VB 下的 Debug.print 可直接在立即窗口中打印出调试内容 其实可以使用 WriteLn('XXXX ', XXX); Write( ...