CN102834822B - 由虚拟机共享的群集的快速-完整备份 - Google Patents
由虚拟机共享的群集的快速-完整备份 Download PDFInfo
- Publication number
- CN102834822B CN102834822B CN201180018583.5A CN201180018583A CN102834822B CN 102834822 B CN102834822 B CN 102834822B CN 201180018583 A CN201180018583 A CN 201180018583A CN 102834822 B CN102834822 B CN 102834822B
- Authority
- CN
- China
- Prior art keywords
- snapshot
- computing equipment
- virtual machine
- data block
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种计算机实现的方法包括在第一时间创建至少一个虚拟机的第一快照。所述第一快照是在被配置为共享所述至少一个虚拟机的计算设备的群集中的一个计算设备处创建的。作为一个示例,在群集中的每个计算设备可以经由直接输入/输出(I/O)事务来修改共享的虚拟机,而绕过文件-***栈。将所述第一快照传送给备份设备。所述方法包括在第二时间创建所述至少一个虚拟机的第二快照,并确定与在所述第二快照和所述第一快照之间的差异相关联的一组经更改的数据块。该组经更改的数据块被传送给备份设备。
Description
背景技术
虚拟机(VM)可以被用于执行计算设备处的各种应用。例如,VM可以执行数据库工作负载、文件共享工作负载、文件服务器工作负载以及web服务器工作负载。由VM所执行的一个或多个工作负载可以是企业中的任务关键的工作负载。频繁备份这样的VM对于维护企业处的数据冗余来说可能是重要的。当由计算设备共享一个VM时,在某些环境中的备份方案可能不被支持,因为该VM引起来自多个计算设备的修改。
发明内容
本公开描述了用于实现在一个群集中的多个计算设备之间共享的虚拟机的快速且完整的备份(即“快速-完整备份”)的备份方法。作为一个示例,在群集中的每个计算设备可以经由直接输入/输出(I/O)事务来修改共享的虚拟机,而绕过文件-***栈。本公开的备份方法可以减少在备份操作期间速传输的数据量,并允许在备份设备(例如备份服务器)处的粒度恢复。例如,备份方法可以允许在群集共享卷(CSV)环境中的Hyper-V虚拟机的快速-完整备份。
提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
附图说明
图1是说明快速-完整备份***的特定实施例的图示;
图2是说明快速-完整备份***的另一特定实施例的图示;
图3是示出一种快速-完整备份的方法的一特定实施例的流程图;
图4是示出一种快速-完整备份的方法的另一特定实施例的流程图;
图5是示出一种快速-完整备份的方法的另一特定实施例的流程图;
图6是示出一种快速-完整备份的方法的另一特定实施例的流程图;以及
图7是计算环境的框图,该计算环境包括可操作以支持如图1-6所示的计算机实现的方法、计算机程序产品和***组件的实施例的计算设备。
具体实施方式
在一个特定实施例中,一种计算机实现的方法包括在第一时间创建至少一个虚拟机(VM)的第一快照。所述第一快照是在被配置为共享所述至少一个虚拟机的计算设备的群集中的一个计算设备处创建的。所述第一快照被传送给诸如备份服务器之类的备份设备。所述方法包括在第二时间创建所述至少一个虚拟机的第二快照,并确定与在所述第二快照和所述第一快照之间的差异相关联的一组经更改的数据块。该组经更改的数据块被传送给备份设备。在一个实施例中,在虚拟机级创建第一快照,而在计算设备级创建第二快照。例如,所述至少一个VM可以包括卷过滤器来跟踪在创建了第一快照之后所述至少一个VM的一个或多个卷的改变。
在另一个特定实施例中,一种计算机实现的方法包括创建包括虚拟硬盘驱动器(VHD)的虚拟机(VM)的第一快照。第一差异(differencing)虚拟硬盘驱动器捕捉在创建第一快照之后对该虚拟硬盘驱动器的修改。所述第一快照是在计算设备的群集中的一个计算设备处创建的,所述群集被配置为共享所述虚拟机。所述方法包括创建虚拟硬盘驱动器的阴影副本并传送虚拟硬盘驱动器的副本以及第一差异虚拟硬盘驱动器给备份设备。
在另一特定实施例中,揭示了包括可由计算设备执行的指令的计算机可读介质。该计算设备生成开始事务消息,该消息指示了通过群集共享卷(CSV)共享的虚拟机的文件对直接输入/输出(IO)事务是开放的。计算设备响应于开始事务消息设置虚拟机的脏标志。计算设备生成一个或多个位掩码(例如直接IO位掩码)以标识在直接IO事务期间被修改的文件的块。在一个特定实施例中,文件***过滤器驱动器(例如CSV过滤器)生成所述位掩码中的至少一个。计算设备将一个或多个位掩码发送给备份设备以基于所述一个或多个位掩码记录对虚拟机的一个或多个改变。计算设备生成指示直接IO事务完成的结束事务消息,并响应于所述结束事务消息清除所述脏标志。
参考图1,在100处示出了快速-完整备份***的特定说明性实施例。***100包括通过存储区域网络(SAN)106耦合到群集共享卷(CSV)104的计算设备的群集102。在所示的实施例中,计算设备的群集102包括第一计算设备108、第二计算设备110、第三计算设备112以及第四计算设备114。在替换实施例中,计算设备的群集102可以包括两个或更多计算设备的任意组合。计算设备的群集102能够操作以通过网络118与备份设备116(例如备份服务器)通信。在示出的实施例中,在备份设备116相对于通过SAN 106共享CSV 104的计算设备的群集102来说位于远处的情况下,网络118被示为与SAN 106不同。或者,网络118和SAN 106在备份设备116不位于远方的情况下可以是相同网络。在图1中,计算设备的群集102的每个计算设备被配置为将快速-完整备份数据传送给备份设备116。
第一计算设备108被配置为共享包括第一虚拟硬盘驱动器(VHD)122的第一Hyper-V虚拟机(VM)120。为了说明,第一计算设备108可以包括配置为执行主操作***的父分区,并且,第一Hyper-V VM 120可以由主操作***在该第一计算设备108的子分区处执行(参见下面的图2)。在第一时间,创建第一Hyper-V VM120的第一快照124。第一计算设备108通过网络118将第一快照124传送给备份设备116。第一快照124表示与第一Hyper-V VM 120相关联的一个或多个VHD的快照。在图1所示的实施例中,第一Hyper-V VM 120包括第一VHD 122,而在替换实施例中,任意数目的VHD可以与第一Hyper-V VM 120相关联。第一快照124可以表示第一VHD 122的完整的初始备份。备份设备116将与第一快照124相关联的数据存储为在第一时间的第一Hyper-V VM 120的VHD快照128。
第一计算设备108在第二时间(例如在创建第一快照124之后的时间)创建第一Hyper-V VM 120的第二快照。一组经更改的数据块126与在第二快照和第一快照124之间的差异相关联。这样,第一计算设备108可以存储在第一时间获取的第一快照124来确定该组经更改的数据块126。或者,第一计算设备108可以使用网络通信以及在备份设备116处的VHD快照128来确定该组经更改的数据块126。在一个实施例中,在第一计算设备108处的应用(例如备份应用)调用(invoke)应用编程接口(API)来确定来自SAN 106的该组经更改的数据块126。例如,API可以确定在该组经更改的数据块126中的每个经更改的块的开始偏移和结束偏移。在一实施例中,在确定了该组经更改的数据块126之后,第一计算设备108可以不再存储在第一时间创建的第一快照124(例如以节省第一计算设备108上的存储空间)。第一计算设备108可以存储第二快照以确定与第二快照和在第三时间获取的第三快照之间的差异相关联的另一组经更改的数据块。
第一计算设备108将该组经更改的数据块126传送给备份设备116。备份设备116被配置为基于该组经更改的数据块126更新第一Hyper-V VM 120的VHD快照128以生成第一Hyper-V VM 120的另一VHD快照130。在一个实施例中,一旦生成第一Hyper-V VM 120的VHD快照130,备份设备116可以不再存储第一Hyper-V VM120的VHD快照128(例如以节省备份设备116上的存储空间)。在所示的实施例中,作为该组经更改的数据块126被传送的数据量少于作为第一快照124被传送的数据量。这样,该组经更改的数据块126可以表示第一Hyper-V VM 120的第一VHD122的快速-完整备份。结果,可以减少通过网络118从第一计算设备108到备份设备116所传输的数据量,同时仍然在备份设备116处维护第一VHD 122的完整备份。
在一个实施例中,第一计算设备108在第三时间(例如在创建第二快照之后的时间)创建第一Hyper-V VM 120的第三快照。第二组经更改的数据块与在第三快照和第二快照之间的差异相关联。第一计算设备108将该第二组经更改的数据块传送给备份设备116。备份设备116被配置为基于该第二组经更改的数据块更新第一Hyper-V VM 120的VHD快照130以生成第一Hyper-V VM 120的另一VHD快照。在一个实施例中,一旦生成第一Hyper-V VM 120的经更新的VHD快照,备份设备116可以不再存储第一Hyper-V VM 120的VHD快照130(例如以节省备份设备116上的存储空间)。这样,第一计算设备108可以执行周期性备份(例如在第二时间、在第三时间等)以在备份设备106处维护第一VHD 122的最近副本。在备份之间的时间间隔可以是固定的或可变的。更频繁的备份(例如传送多组经更改的数据块)可以允许备份设备116维护第一VHD 122的更近的副本,但可使用(例如在第一计算设备108处和在备份设备116处的)更多的计算资源以及网络118的更多的带宽。这样,可以调整备份之间的时间间隔以在计算资源和网络资源的利用与在备份设备116处的第一VHD 122的备份维护之间进行平衡。
计算设备102的群集中的每个计算设备可以共享第一Hyper-V VM 120。就是说,每个计算设备108、110、112和114可以在不同时间拥有第一Hyper-V VM 120。当第二计算设备110是拥有者时,第一Hyper-V VM 120可以被迁移到第二计算设备110(例如由第一Hyper-V VM 132所示)。类似地,当第三计算设备112是拥有者时,第一Hyper-V VM 120可以被迁移到第三计算设备112(例如由第一Hyper-VVM 146所示),并且当第四计算设备114是拥有者时,第一Hyper-V VM 120可以被迁移到第四计算设备114(例如由第一Hyper-V VM 156所示)。第二计算设备110被配置为共享包括第一虚拟硬盘驱动器(VHD)134的第一Hyper-V虚拟机(VM)132。在第一时间,创建第一Hyper-V VM 132的第一快照138。应该理解,与第二计算设备110相关联的第一快照138可以和与第一计算设备108相关联的第一快照124在相同时间创建。或者,与第二计算设备110相关联的第一快照138可以在不同的时间创建。这样,与第一计算设备108相关联的第一时间和与第二设备110相关联的第一时间可以相同,或者可以不同于与第二设备110相关联的第一时间。在特定的实施例中,在VM级(例如在第一Hyper-V VM 132级)创建第一快照138。可以为第二计算设备110处的多个VM中的每个VM创建并传送初始的快照。
第二计算设备110通过网络118将第一快照138传送给备份设备116。第二计算设备110在第二时间(例如在创建第一快照138之后)创建第一Hyper-V VM 132的第二快照。可以在计算设备级(例如在第二计算设备110级)创建第二快照。这样,在第二计算设备110处的后续快照可以包括在第二计算设备110处的多个VM的每个VM的信息。第二计算设备110通过网络118将第一快照138传送给备份设备116。备份设备116将与第一快照138相关联的数据存储为在第一时间的第一Hyper-V VM 132的VHD快照128。
在图1示出的实施例中,在第二计算设备110处的第一Hyper-V VM 132包括卷过滤器136,该过滤器跟踪在创建第一快照138之后在第一Hyper-V VM 132处的改变。通过向卷过滤器136查询标识一组经更改的数据块140来确定该组经更改的数据块140。这样,第二计算设备110可以不存储用于确定该组经更改的数据块140的在第一时间获取的第一快照138。然而,卷过滤器136可以动态跟踪在创建第一快照138之后在第一Hyper-V VM 132处的改变。这样,为了确定与在第一快照124和第二快照之间的差异相关联的该组经更改的数据块126,在第二计算设备110处的卷过滤器136的使用可导致与可存储第一快照124的第一计算设备108相比存储空间的减少。卷过滤器136可以允许第二计算设备110与第一计算设备确定该组经更改的数据块126相比更快地确定要传送给备份设备116的该组更改的数据块140。改变的动态跟踪可以与在第一时间和第二时间之间的时间间隔期间在第二计算设备110处的计算资源的增加使用相关联。相对地,第一计算设备108可以在第一时间和第二时间之间的时间间隔期间使用更少的计算资源但可在第二时间使用更多的计算资源,以确定与在第一快照124和第二快照之间的差异相关联的该组经更改的数据块126。
第二计算设备110将该组经更改的数据块140传送给备份设备116。备份设备116被配置为基于该组经更改的数据块140更新第一Hyper-V VM的VHD快照128以生成在第二时间的第一Hyper-V VM 132的另一VHD快照130。一旦生成了VHD快照130,备份设备116可以不再存储VHD快照128(例如以节省在备份设备116处的存储空间)。在所示的实施例中,作为该组经更改的数据块140被传送的数据量少于作为第一快照138被传送的数据量。这样,该组经更改的数据块140可以表示第一Hyper-V VM 132的第一VHD快照134的快速-完整备份。结果,可以减少通过网络118从第二计算设备110到备份设备116所传输的数据量,同时仍然在备份设备116处维护第一VHD 134的完整备份。而且,一旦初始快照被传送到备份设备116,在不需要在第二计算设备110处采用每个VM的个别快照的情况下,多个VM可以在第二计算设备110的主机级被备份。
第三计算设备112被配置为共享包括第一VHD 148的第一Hyper-V VM 146。第三计算设备112包括阴影副本逻辑142以及修改跟踪逻辑144。修改跟踪逻辑144创建第一Hyper-V VM 146的第一快照。第一差异虚拟硬盘驱动器152捕捉在创建第一快照之后对第一VHD 148的修改。阴影副本逻辑142创建第一VHD 148的阴影副本。第一VHD 148的副本150通过网络118被传送给备份设备116,并且第一VHD148的阴影副本被存储在第三计算设备112处(例如作为第一VHD 148的本地只读备份镜像)。修改跟踪逻辑144创建第一Hyper-V VM 146的第二快照。第二差异虚拟硬盘驱动器(未示出)捕捉在创建第二快照之后对第一VHD 148的修改。通过网络118将第一差异虚拟硬盘驱动器152传送给备份设备116。
在特定实施例中,阴影副本是第一VHD 148的只读的涉及写入者(read-onlywriter-involved)的副本。备份设备116可以将第一VHD 148的副本150与第一差异VHD 152合并以生成第一VHD 148的经更新的副本。在一个实施例中,修改跟踪逻辑144创建第一Hyper-V VM 146的第三快照。第三差异VHD(未示出)捕捉在创建第三快照之后对第一VHD 148的修改。通过网络118将第三差异VHD传送给备份设备116。备份设备116可被配置为将第一VHD 148的副本150与第一差异VHD152合并以生成第一VHD 148的中间副本。备份设备116可以有选择地将第一VHD148的副本150与第二差异VHD合并以生成第一VHD 148的经更新的副本。这样,备份设备116可以支持第一VHD 148的粒度恢复。
第四计算设备114被配置为共享包括第一VHD 158的第一Hyper-V VM 156。第四计算设备114包括配置为生成开始事务消息和结束事务消息的直接输入/输出(IO)逻辑154。而且,在图1示出的实施例中,第四计算设备114包括群集共享卷(CSV)过滤器155,该过滤器被配置为生成一个或多个直接IO位掩码162并将所述一个或多个直接IO位掩码162发送给备份设备116。
在操作中,直接IO逻辑154生成指示通过CSV 104共享的虚拟机168的文件对直接IO事务开放的开始事务消息。例如,虚拟机168可以是第一Hyper-V VM 156的群集共享副本,并且在第一Hyper-V VM 156处的文件可以以直接IO模式开放。直接IO逻辑154响应于所述开始事务消息设置虚拟机的脏标志,并且生成指示直接IO事务完成的结束事务消息。所述一个或多个直接IO位掩码162标识了在直接IO事务期间已经被修改的文件的块。
在图1所示的实施例中,CSV过滤器155生成一个或多个直接IO位掩码162并将一个或多个直接IO位掩码162发送给备份设备116。直接IO逻辑154响应于CSV过滤器155将一个或多个直接IO位掩码162发送给备份设备116来清除虚拟机的脏标志。在图1所示的实施例中,备份设备116包括直接IO镜像逻辑166,它基于一个或多个直接IO位掩码162记录对虚拟机的改变。例如,备份设备116可以将改变的数据块(例如一个或多个直接IO位掩码162)与存储在备份设备116处的第一Hyper-V VM 156的副本合并。
在特定实施例中,CSV过滤器155使用文件***控制(fsctl)消息将一个或多个位掩码162发送到备份设备116上。而且,CSV过滤器155可以基于用户定义的更新周期(例如每60秒)周期性地将一个或多个位掩码162发送给备份设备116。备份设备116可以存储通过CSV 104共享的虚拟机168的备份副本,并且CSV过滤器155可以被耦合到虚拟机168的拥有计算设备(例如被耦合到第四计算设备114)或被耦合到计算设备群集102的每个计算设备(例如耦合到每个计算设备108、110、112和114处的***/主机卷)。图1的快速-完整备份***100可以减少在备份操作期间所传输的数据量,可以允许在备份设备116处的粒度恢复,并且可以允许在包括CSV 104的环境中的Hyper-V虚拟机的快速-完整备份。
参考图2,在200处示出了快速-完整备份***的另一说明性实施例。***200包括能够操作以访问包括VHD 170的虚拟机168的计算设备108,所述虚拟机位于耦合到SAN 106的CSV 104处。在一个实施例中,计算设备108是图1的计算设备108,CSV 104是图1的CSV 104,SAN 106是图1的SAN 106,VM 168是图1的第一VM 168,而VHD 170是图1的第一VHD 170。这样,图2的计算设备108可以表示共享位于CSV处的虚拟机的多个计算设备之一。计算设备108能够操作以将快速-完整备份数据220通过网络222传送给备份服务器202。网络222可以与SAN 106不同,或者可以与SAN 106相同。在一个实施例中,备份服务器202是图1的备份设备116,并且可以用(在第二时间获取的)VHD 170的第二快照226来更新(在第一时间获取的)虚拟机168的VHD 170的第一快照224。而且,在图2所示的实施例中,备份服务器202包括诸如图1的直接IO镜像逻辑166的直接IO镜像逻辑228。
计算设备108包括物理硬件204(例如一个或多个处理器以及一个或多个存储元件)以及Hyper-V管理程序206。Hyper-V管理程序206被配置为管理父分区208以及一个或多个子分区。在图2所示的实施例中,一个或多个子分区包括第一子分区210和第二子分区212。父分区208执行主操作***和虚拟化栈214。虚拟化栈214在父分区208中运行并具有到计算设备108的物理硬件204的直接访问。父分区208可以创建一个或更多的子分区,每个子分区主存客操作***。在图2所示的实施例中,父分区208创建执行第一客操作***216的第一子分区210,并且父分区208创建执行第二客操作***218的第二子分区212。父分区208使用超调用(hypercall)应用编程接口(API)来创建子分区210、212。
虚拟化分区(例如子分区210、212)可能不能具有到计算设备108处的物理处理器的访问,并且可能不处理真正的中断。相反,第一子分区210和第二子分区212可以具有处理器的虚拟视图,并且可以在客虚拟地址空间中运行。取决于配置,管理程序206可能不使用计算设备108处的整个虚拟地址空间。管理程序206可以代之以将处理器的地址空间的子集展示给子分区210、212的每一个。管理程序206可以处理到处理器的中断,并且可使用逻辑合成中断控制器(SynIC)将中断重定向到合适的子分区。在各种客虚拟地址空间之间的地址转换可以通过使用IO存储器管理单元(IOMMU)来进行硬件加速,所述IO存储器管理单元独立于物理处理器所使用的存储器管理硬件来操作。
子分区210、212可能不具有到计算设备108的物理硬件204的直接访问。相反,子分区210、212的每个都可以具有物理硬件204的虚拟视图(例如按照虚拟设备来说)。可以通过VM总线将对虚拟设备的请求重定向到管理请求的父分区208中的设备。VM总线可以是允许分区间通信(例如在父分区208和子分区210、212之间的通信)的逻辑信道。可以通过VM总线来重定向响应。如果在父分区208中的设备也是虚拟设备,则可以将响应在父分区208内进一步重定向以便获取到物理硬件204的访问。父分区208可以执行虚拟化服务提供者(VSP),该虚拟化服务提供者被连接到VM总线以处理来自子分区210、212的设备访问请求。子分区虚拟设备可以内部地执行虚拟化服务客户端(VSC)来通过VM总线将请求重定向到父分区208中的VSP。访问过程对于客操作***216、218来说可以是透明的。
在特定实施例中,计算设备处的主操作***可以支持多个虚拟机,其中每个虚拟机都具有与主操作***不同的操作***。当备份虚拟机时,可优选地在主机级而不是客机级执行备份。例如使用在主机级执行的备份应用来备份虚拟机可以比使用在各个虚拟机的每个处的备份应用来备份各个虚拟机要更加快。当虚拟机位于群集共享环境中时,对虚拟机的备份操作可以被修改为跨虚拟机的多个副本维护数据完整性和数据并发性。
图3是备份群集共享虚拟机的方法300的特定实施例的流程图。在一说明性实施例中,方法300可由图1的第一计算设备108执行。
方法300包括,在302,在配置用于共享至少一个虚拟机的计算设备的群集中的一个计算设备处,在第一时间创建至少一个虚拟机的第一快照。例如,在图1中,第一计算设备108可以创建第一Hyper-V VM 120的第一快照124。
方法300还包括,在304,将第一快照传送给备份设备。例如,在图1中,第一计算设备108可以通过网络118将第一快照124传送给备份设备116。方法300还包括,在306,在第二时间创建该至少一个虚拟机的第二快照。例如,在图1中,第一计算设备108可以创建第一Hyper-V VM 120的第二快照。
方法300包括,在308,确定与在第二快照和第一快照之间的差异相关联的一组经更改的数据块。在特定实施例中,可调用API以确定来自SAN的该组经更改的数据块,其中每个经更改的数据块具有相关联的开始偏移和结束偏移。API可以由计算设备处的主操作***来提供,或可以由第三方(例如存储区域网络的卖方)来提供。例如,在图1中,可以确定该组经更改的数据块126。
方法300还包括,在310,将经更改的数据块传送给备份设备。例如,在图1中,可以通过网络118将该组经更改的数据块126传送给备份设备116。对于每个后续备份操作,方法300可以迭代地返回306。在312,方法300结束。
应该理解,图3的方法300可以允许群集共享虚拟机的快速备份。例如,在备份了虚拟机的初始副本之后,后续的备份操作可以仅涉及传送经更改的数据块,而不是虚拟机的所有数据块。应该理解,可以在无需备份操作之间的改变跟踪开销的情况下来执行图3的方法300。
图4是备份群集共享虚拟机的方法400的另一特定实施例的流程图。在一说明性实施例中,方法400可由图1的第二计算设备110执行。
方法400包括,在402,在配置用于共享至少一个虚拟机的计算设备的群集中的一个计算设备处,在第一时间创建至少一个虚拟机的第一快照。在特定实施例中,在虚拟机级获取第一快照(例如第一快照可以包括该至少一个虚拟机的数据)。例如,在图1中,第二计算设备110可以创建第一Hyper-V VM 132的第一快照138。
方法400还包括,在404,将第一快照传送给备份设备。例如,在图1中,第二计算设备110可以通过网络118将第一快照138传送给备份设备116。方法400还包括,在406,在第二时间创建该至少一个虚拟机的第二快照。在特定实施例中,在设备级获取第二快照(例如第二快照可以包括在计算设备上存在的多个虚拟机中每个虚拟机的数据)。例如,在图1中,第二计算设备110可以创建第一Hyper-VVM 132的第二快照。
方法400包括,在408,基于在第二快照和第一快照之间的差异确定一组经更改的数据块。在特定实施例中,可以查询在该至少一个虚拟机处的卷过滤器以查找标识该组经更改的数据块的卷位图(volume bit map)。可以由在计算设备的主机级执行的备份应用来安装所述卷过滤器。例如,在图1中,可以查询卷过滤器136以查找标识该组经更改的数据块140的卷位图。
方法400还包括,在410,将经更改的数据块传送给备份设备。在特定实施例中,该组经更改的数据块被用于覆盖在备份设备处的虚拟机的现有的副本。例如,在图1中,可以通过网络118将该组经更改的数据块140传送给备份设备116。对于每个后续备份操作,方法400可以迭代地返回406。在412,方法400结束。
应该理解,图4的方法400可以允许群集共享虚拟机的快速备份。例如,在备份了虚拟机的初始副本之后,后续的备份操作可以涉及传送经更改的数据块,而不是虚拟机的所有数据块。还应该理解,图4的方法400中的卷过滤器的使用可以允许迅速确定虚拟机处的经更改的数据块。
图5是备份群集共享虚拟机的方法500的另一特定实施例的流程图。在一说明性实施例中,方法500可由图1的第三计算设备112执行。
方法500包括,在502,在配置用于共享至少一个虚拟机的计算设备的群集中的一个计算设备处,创建该至少一个虚拟机的第一快照。虚拟机包括虚拟硬盘驱动器(VHD),并且创建第一快照生成了指示在创建了第一快照之后对VHD的修改的第一差异VHD。例如,在图1中,第三计算设备112可以创建第一Hyper-V VM 146的第一快照以生成第一差异VHD 152。
方法500还包括,在504,创建VHD的阴影副本。在特定实施例中,阴影副本是VHD的只读的涉及写入者的副本。例如,在图1中,阴影副本逻辑142可以创建第一VHD 148的阴影副本。
方法500还包括,在506,将VHD的副本传送到备份设备。例如,在图1中,第三计算设备112可以通过网络118将第一VHD 148的副本150传送给备份设备116。
方法500包括,在508,创建该至少一个虚拟机的第二快照以生成第二差异VHD。例如,在图1中,第三计算设备112可以创建第一Hyper-V VM 146的第二快照以生成第二差异VHD。
方法500还包括,在510,将第一差异VHD传送给备份设备。备份设备可以选择性地将差异VHD与VHD的副本合并以生成VHD的经更新的副本。例如,在图1中,第三计算设备112可以通过网络118将第一差异VHD152传送给备份设备116。对于每个后续备份操作,方法500可以迭代地返回506。在512,方法500结束。
应该理解,图5的方法500可以允许群集共享虚拟机的快速备份。例如,在传送了VHD的初始副本之后,后续的备份操作可以涉及传送更小的差异VHD。还应该理解,图5的方法500可以允许在备份设备处的粒度恢复。例如,备份设备可以有选择地将一个或多个差异VHD与VHD的初始副本合并以生成对应于特定时间点的经更新的VHD。
在特定的实施例中,用于共享虚拟机的CSV技术可以为除直接输入/输出(IO)之外的虚拟机处的各种类型的输入/输出(IO)提供改变跟踪能力。例如,在虚拟机处的直接IO可以绕过(bypass)改变跟踪以尝试增加IO速度。图6是经历直接IO事务的备份群集共享虚拟机的方法600的另一特定实施例的流程图。在一说明性实施例中,方法600可由图1的第四计算设备114执行。
方法600包括,在602,生成指示虚拟机的文件对直接输入/输出(IO)事务开放的开始事务消息。虚拟机对于计算设备群集是可通过群集共享卷(CSV)来访问的。例如,在图1中,第四计算设备114的直接IO逻辑154可以生成开始事务消息。在特定实施例中,响应于文件***控制(fsctl)消息(例如“FSCTL_START_CSV_DIRECTIO”)生成开始事务消息。在图1中,第四计算设备114处的第一Hyper-V VM 156对于计算设备群集102可通过CSV 104来访问。
方法600还包括,在604,响应于开始事务消息设置虚拟机的脏标志。例如,在图1中,直接IO逻辑154可以设置通过CSV 104被共享的第一Hyper-V VM 156的脏标志。在特定实施例中,脏标志被用于告知CSV 104的客户端在CSV 104处的某些数据可能是脏的(例如由于还没有被镜像的直接IO事务而不一致)。
方法600进一步包括,在606,(例如使用CSV过滤器)生成标识在直接IO事务期间被修改的文件的块的一个或多个位掩码。例如,可以由CSV过滤器155来生成图1的一个或多个直接IO位掩码162。CSV过滤器可以被耦合到虚拟机的拥有计算设备,或可以被耦合到群集中的每个计算设备(例如在每个计算设备的***卷处)。在特定实施例中,响应于fsctl消息(例如“FSCTL_PROCESS_CSV_DIRECTIO”)生成一个或多个位掩码。
方法600包括,在608,将一个或多个位掩码发送给备份设备。备份设备基于所接收的位掩码更新虚拟机。例如,图1的CSV过滤器155可以将一个或多个直接IO位掩码162发送给备份设备116。备份设备116的直接IO镜像逻辑166可以基于直接IO位掩码162更新第一VHD快照128,因而将第一VHD快照128转换成第二VHD快照130。在特定实施例中,一个或多个位掩码可以被周期性地发送给备份设备(例如基于用户定义的更新周期)。作为说明性示例,图1的CSV过滤器155可以每分钟将一个或多个直接IO位掩码162发送给备份设备116一次。
方法600还包括,在610,生成指示直接IO事务完成的结束事务消息。例如,在图1中,第四计算设备114的直接IO逻辑154可以生成结束事务消息。在特定实施例中,响应于fsctl消息(例如“FSCTL_END_CSV_DIRECTIO”)生成结束事务消息。
方法600包括,在612,响应于结束事务消息清除虚拟机的脏标志。例如,在图1中,直接IO逻辑154可以清除脏标志。对于以直接IO模式打开的每个文件,可以并行执行方法600。例如,方法600可以被放置在直接IO软件代码路径内。在614,方法600结束。
应该理解,图6的方法600可以允许群集共享虚拟机的快速的基于消息的备份。还应该理解,由于CSV允许在群集中的各个计算设备之间迁移虚拟机的拥有权,图6的方法600可以通过将CSV过滤器耦合到群集中的每个计算设备来实现跨群集的备份支持。
在特定实施例中,被耦合到群集的每个计算设备的***卷的CSV过滤器为每个计算设备维护单独的上下文(例如位掩码)。为了减少文件更新的次数,CSV过滤器可以在开始和结束直接IO fsctl上执行参考计数。例如,可以直到参考计数达到零才保存位掩码。在另一特定实施例中,其中CSV过滤器仅与拥有节点耦合,当虚拟机的拥有权被转换时,虚拟机的卸下导致CSV过滤器的卸载(例如解除分配)。在卸载期间,可保存现有的位掩码和元数据以便所述位掩码和元数据可以被迁移到虚拟机的新拥有者。
图7描绘了计算环境700的框图,该计算环境包括可用于支持根据本发明的计算机实现的方法、计算机程序产品和***组件的实施例的计算设备710。图1的计算设备108、110、112和114中的一个或多个、图1的备份设备116、图1的CSV 104、图2的计算设备108、图2的备份服务器202以及图2的CSV104或它们的组件可以由计算设备710或其组件来实现或包括在其中。
计算设备710包括至少一个处理器720和***存储器730。取决于计算设备的配置和类型,***存储器730可以是易失性的(诸如随机存取存储器,即“RAM”)、非易失性的(诸如只读存储器(即“ROM)、闪存以及即使在未提供电源时也保持已存储数据的类似存储器设备)或两者的某种组合。”***存储器730通常包括操作***731、一个或多个应用序平台732、一个或多个应用733和程序数据。在说明性实施例中,***存储器730还包括阴影副本逻辑734、修改跟踪逻辑735、直接IO逻辑736以及CSV过滤器737。例如,阴影副本逻辑734、修改跟踪逻辑735以及直接IO逻辑736中的一个或多个可以存在于计算设备710处的备份软件应用中。在说明性实施例中,阴影副本逻辑734包括图1的阴影副本逻辑142,修改跟踪逻辑735包括图1的修改跟踪逻辑144,直接IO逻辑736包括图1的直接IO逻辑154,而CSV过滤器737包括图1的CSV过滤器155。
计算设备710还可具有附加特征或功能。例如,计算设备710还可包括可移动和/或不可移动附加数据存储设备,诸如磁盘、光盘、磁带和标准大小的存储卡或闪存卡。在图7中通过可移动存储740和不可移动存储750示出这样的附加存储。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序组件或其它数据等信息的任何技术实现的易失性和/或非易失性存储以及可移动和/或不可移动介质。在说明性实施例中,不可移动存储750包括一个或多个VM(例如说明性的Hyper-V VM 752)。Hyper-V VM 752可以是图1的Hyper-V VM 120、132、146或156中的任意一个(例如Hyper-V VM 752可以位于不可移动存储750的子分区处,并且操作***731的文件可以位于不可移动存储750的父分区处)。***存储器730、可移动存储740和不可移动存储750都是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪存或其它存储器技术、紧致盘(CD)、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或可用于存储信息且可以由计算设备710访问的任何其它介质。任何这样的计算机存储介质都可以是计算设备710的一部分。
计算设备710也可包括输入设备760,如键盘、鼠标、笔、语音输入设备、触摸输入设备等等。也可包括输出设备770,如显示器、扬声器、打印机等等。计算设备710还包含允许该计算设备710通过有线或无线网络与其它计算设备790进行通信的一个或多个通信连接780。在说明性实施例中,所述其它计算设备790在通信上通过SAN 782与计算设备710耦合。例如SAN 782可以是图1的SAN 106。在另一说明性实施例中,计算设备710可以在通信上通过网络784与备份服务器792耦合。备份服务器792可以包括图1的备份设备116或图2的备份服务器202。在备份服务器792处的直接IO镜像逻辑794可以包括图1的直接IO镜像逻辑166或图2的直接IO镜像逻辑228。
可以理解,并非所有图7所示或以其他方式在先前的附图中描述的组件或设备都必须支持此处所描述的实施例。例如,可移动存储740可以是可任选的。
这里所描述的实施例的说明旨在提供对各实施例的结构的一般理解。说明不旨在作为利用这里所描述的结构或方法的装置和***的所有元素和特征的完整描述。许多其他实施例对本领域的技术人员在审阅本发明后是显而易见的。也可以利用其他实施例,并从本发明派生出其他实施例,以便可以在不偏离本发明的范围的情况下作出结构和逻辑上的替换和改变。相应地,本发明和附图应被视为说明性的,而不是限制性的。
本领域技术人员还可理解,结合本文所公开的各种说明性逻辑框、配置、模块、和过程步骤或指令可被实现为电子硬件或计算机软件。各种说明性组件、框、配置、模块或步骤已经大致按照其功能来描述。此类功能性是被实现为硬件还是软件取决于具体应用和加诸于整体***的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能集,但此类实现决策不应被解释为致使脱离本公开的范围。
结合此处所公开的各实施例所描述的方法的各个步骤可直接用硬件、由处理器执行的软件模块、或两者的组合来实现。软件模块可驻留在诸如随机存取存储器(RAM)、闪存、只读存储器(ROM)、寄存器、硬盘、可移动盘、CD-ROM、或本领域内已知的任何其他形式的存储介质等计算机可读介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取/写入信息。在替换方案中,存储介质可集成到处理器或处理器并且存储介质可作为分立组件驻留在计算设备或计算机***中。
虽然这里显示和描述了具体的实施例,但是,应该了解,被设计为实现相同或类似的目的的任何随后的安排都可以代替所示出的具体实施例。本说明书计划涵盖各种实施例的任何随后的修改或变化。
提交本发明的摘要的同时要明白,将不用它来解释或限制权利要求的范围或含义。此外,在前面的具体实施例中,出于将本公开连成一个整体的目的,各种特征可以组合到一起,或在一个实施例中进行描述。本发明不应被解释为反映带权利要求的实施例需要比每一个权利要求中明确地记载的特征更多的特点的意图。相反,如下面的权利要求所反映的,本发明的主题可以涉及少于所公开的实施例中的任一个的所有特征。
提供前面对各实施方式的描述是为了使本领域技术人员能制作或使用各实施方式。对这些实施例的各种修改对于本领域技术人员将是显而易见的,并且本文中定义的普适原理可被应用于其他实施例而不会脱离本公开的范围。因此,本发明并不旨在限于此处所示出的各实施例,而是按照与所附权利要求书所定义的原理和新颖特征相一致的尽可能最宽的范围。
Claims (9)
1.一种计算机实现的方法,包括:
在配置为共享至少一个虚拟机的计算设备的群集中的一个计算设备处,在第一时间创建至少一个虚拟机的第一快照;
将所述第一快照传送给备份设备;
在第二时间创建所述至少一个虚拟机的第二快照;
确定与所述第二快照和所述第一快照之间的差异相关联的一组经更改的数据块;以及
将该组经更改的数据块传送给所述备份设备,
其中在虚拟机级创建所述第一快照,而在计算设备级创建所述第二快照。
2.如权利要求1所述的方法,其特征在于,所述计算设备包括执行主操作***的父分区,并且其中由所述主操作***在所述计算设备的子分区处执行所述至少一个虚拟机。
3.如权利要求1所述的方法,其特征在于,所述计算设备的群集通过耦合到存储区域网络(SAN)的群集共享卷(CSV)来共享所述至少一个虚拟机。
4.如权利要求3所述的方法,其特征在于,在所述计算设备处的应用调用应用编程接口(API)来确定来自所述SAN的该组经更改的数据块。
5.如权利要求4所述的方法,其特征在于,所述API确定该组经更改的数据块中的每个经更改的数据块的开始偏移和结束偏移。
6.如权利要求1所述的方法,其特征在于,还包括:
在第三时间创建所述至少一个虚拟机的第三快照;
确定与在所述第三快照和所述第二快照之间的差异相关联第二组经更改的数据块;以及
将该第二组经更改的数据块传送到所述备份设备。
7.如权利要求1所述的方法,其特征在于,所述第一快照包括与所述至少一个虚拟机相关联的一个或多个虚拟硬盘驱动器(VHD)的快照。
8.如权利要求1所述的方法,其特征在于,所述至少一个虚拟机包括卷过滤器,所述卷过滤器跟踪在创建了所述第一快照之后所述至少一个虚拟机的一个或多个卷的变化。
9.如权利要求8所述的方法,其特征在于,通过查询所述卷过滤器以查找标识该组经更改的数据块的卷位图来确定该组经更改的数据块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/758,042 | 2010-04-12 | ||
US12/758,042 US20110252208A1 (en) | 2010-04-12 | 2010-04-12 | Express-full backup of a cluster shared virtual machine |
PCT/US2011/030062 WO2011129987A2 (en) | 2010-04-12 | 2011-03-25 | Express-full backup of a cluster shared virtual machine |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102834822A CN102834822A (zh) | 2012-12-19 |
CN102834822B true CN102834822B (zh) | 2015-10-07 |
Family
ID=44761764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180018583.5A Active CN102834822B (zh) | 2010-04-12 | 2011-03-25 | 由虚拟机共享的群集的快速-完整备份 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110252208A1 (zh) |
EP (1) | EP2558949B1 (zh) |
CN (1) | CN102834822B (zh) |
WO (1) | WO2011129987A2 (zh) |
Families Citing this family (111)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
US8219769B1 (en) * | 2010-05-04 | 2012-07-10 | Symantec Corporation | Discovering cluster resources to efficiently perform cluster backups and restores |
US8326803B1 (en) * | 2010-05-06 | 2012-12-04 | Symantec Corporation | Change tracking of individual virtual disk files |
US8266102B2 (en) * | 2010-05-26 | 2012-09-11 | International Business Machines Corporation | Synchronization of sequential access storage components with backup catalog |
US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
US8707083B2 (en) * | 2010-12-03 | 2014-04-22 | Lsi Corporation | Virtualized cluster communication system |
US9063768B2 (en) * | 2011-10-10 | 2015-06-23 | Vmware, Inc. | Method and apparatus for comparing configuration and topology of virtualized datacenter inventories |
CN102521071B (zh) * | 2011-11-24 | 2013-12-11 | 广州杰赛科技股份有限公司 | 一种基于私有云的虚拟机维护方法 |
US9292350B1 (en) | 2011-12-15 | 2016-03-22 | Symantec Corporation | Management and provisioning of virtual machines |
US8516210B2 (en) * | 2011-12-21 | 2013-08-20 | Microsoft Corporation | Application consistent snapshots of a shared volume |
WO2013121465A1 (en) * | 2012-02-16 | 2013-08-22 | Hitachi, Ltd. | Storage system, management server, storage apparatus, and data management method |
US8498966B1 (en) * | 2012-05-30 | 2013-07-30 | Symantec Corporation | Systems and methods for adaptively performing backup operations |
US9223845B2 (en) * | 2012-08-01 | 2015-12-29 | Netapp Inc. | Mobile hadoop clusters |
CN104662522B (zh) * | 2012-09-28 | 2018-11-02 | Emc 公司 | 使用存储***功能性的全虚拟机备份的***和方法 |
CN103810058B (zh) * | 2012-11-12 | 2017-02-22 | 华为技术有限公司 | 虚拟机备份方法、设备及*** |
US8983961B2 (en) * | 2012-11-29 | 2015-03-17 | International Business Machines Corporation | High availability for cloud servers |
US9286086B2 (en) | 2012-12-21 | 2016-03-15 | Commvault Systems, Inc. | Archiving virtual machines in a data storage system |
US20140181038A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to categorize unprotected virtual machines |
US9703584B2 (en) | 2013-01-08 | 2017-07-11 | Commvault Systems, Inc. | Virtual server agent load balancing |
US20140201162A1 (en) | 2013-01-11 | 2014-07-17 | Commvault Systems, Inc. | Systems and methods to restore selected files from block-level backup for virtual machines |
US9286110B2 (en) | 2013-01-14 | 2016-03-15 | Commvault Systems, Inc. | Seamless virtual machine recall in a data storage system |
US9135293B1 (en) | 2013-05-20 | 2015-09-15 | Symantec Corporation | Determining model information of devices based on network device identifiers |
US9116846B2 (en) | 2013-06-10 | 2015-08-25 | Veeam Software Ag | Virtual machine backup from storage snapshot |
US10664548B2 (en) * | 2013-07-12 | 2020-05-26 | Trading Technologies International, Inc. | Tailored messaging |
US9280372B2 (en) * | 2013-08-12 | 2016-03-08 | Amazon Technologies, Inc. | Request processing techniques |
US9858154B1 (en) * | 2013-08-23 | 2018-01-02 | Acronis International Gmbh | Agentless file backup of a virtual machine |
US9842032B2 (en) | 2013-08-27 | 2017-12-12 | Red Hat, Inc. | Memory first live snapshot |
US9733964B2 (en) | 2013-08-27 | 2017-08-15 | Red Hat, Inc. | Live snapshot of a virtual machine |
US20150074536A1 (en) | 2013-09-12 | 2015-03-12 | Commvault Systems, Inc. | File manager integration with virtualization in an information management system, including user control and storage management of virtual machines |
US9514002B2 (en) * | 2013-09-13 | 2016-12-06 | Vmware, Inc. | Incremental backups using retired snapshots |
US9772907B2 (en) | 2013-09-13 | 2017-09-26 | Vmware, Inc. | Incremental backups using retired snapshots |
CN104573428B (zh) * | 2013-10-12 | 2018-02-13 | 方正宽带网络服务股份有限公司 | 一种提高服务器集群资源有效性的方法及*** |
US20150106334A1 (en) * | 2013-10-15 | 2015-04-16 | PHD Virtual Technologies | Systems and methods for backing up a live virtual machine |
CN103593259B (zh) * | 2013-10-16 | 2016-05-18 | 北京航空航天大学 | 虚拟集群内存快照方法和装置 |
CN103678037A (zh) * | 2013-11-26 | 2014-03-26 | 上海爱数软件有限公司 | 一种不删除原虚拟机的hyper-v虚拟化平台恢复方法 |
CN103713970B (zh) * | 2013-12-31 | 2017-02-15 | 曙光云计算技术有限公司 | 一种基于虚拟机的磁盘镜像文件快照的制作方法和*** |
US9961011B2 (en) | 2014-01-21 | 2018-05-01 | Oracle International Corporation | System and method for supporting multi-tenancy in an application server, cloud, or other environment |
US9348827B1 (en) * | 2014-03-27 | 2016-05-24 | Emc Corporation | File-based snapshots for block-based backups |
US9411821B1 (en) * | 2014-03-27 | 2016-08-09 | Emc Corporation | Block-based backups for sub-file modifications |
US9639428B1 (en) | 2014-03-28 | 2017-05-02 | EMC IP Holding Company LLC | Optimized backup of clusters with multiple proxy servers |
US9563518B2 (en) | 2014-04-02 | 2017-02-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
US10542049B2 (en) | 2014-05-09 | 2020-01-21 | Nutanix, Inc. | Mechanism for providing external access to a secured networked virtualization environment |
KR20170020866A (ko) * | 2014-06-23 | 2017-02-24 | 오라클 인터내셔날 코포레이션 | 멀티테넌트 어플리케이션 서버 환경에서 복수의 파티션 편집 세션들을 지원하는 시스템 및 방법 |
US10594619B2 (en) | 2014-06-23 | 2020-03-17 | Oracle International Corporation | System and method for supporting configuration of dynamic clusters in a multitenant application server environment |
US9898369B1 (en) | 2014-06-30 | 2018-02-20 | EMC IP Holding Company LLC | Using dataless snapshots for file verification |
CN105446826A (zh) * | 2014-06-30 | 2016-03-30 | 国际商业机器公司 | 虚拟机备份、恢复的方法及设备 |
US9767106B1 (en) * | 2014-06-30 | 2017-09-19 | EMC IP Holding Company LLC | Snapshot based file verification |
US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
US9639340B2 (en) * | 2014-07-24 | 2017-05-02 | Google Inc. | System and method of loading virtual machines |
US9851998B2 (en) * | 2014-07-30 | 2017-12-26 | Microsoft Technology Licensing, Llc | Hypervisor-hosted virtual machine forensics |
US9684567B2 (en) | 2014-09-04 | 2017-06-20 | International Business Machines Corporation | Hypervisor agnostic interchangeable backup recovery and file level recovery from virtual disks |
US9710465B2 (en) | 2014-09-22 | 2017-07-18 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US9417968B2 (en) * | 2014-09-22 | 2016-08-16 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US9436555B2 (en) * | 2014-09-22 | 2016-09-06 | Commvault Systems, Inc. | Efficient live-mount of a backed up virtual machine in a storage management system |
US10776209B2 (en) | 2014-11-10 | 2020-09-15 | Commvault Systems, Inc. | Cross-platform virtual machine backup and replication |
US9983936B2 (en) | 2014-11-20 | 2018-05-29 | Commvault Systems, Inc. | Virtual machine change block tracking |
US9996429B1 (en) | 2015-04-14 | 2018-06-12 | EMC IP Holding Company LLC | Mountable container backups for files |
US9946603B1 (en) | 2015-04-14 | 2018-04-17 | EMC IP Holding Company LLC | Mountable container for incremental file backups |
US10078555B1 (en) * | 2015-04-14 | 2018-09-18 | EMC IP Holding Company LLC | Synthetic full backups for incremental file backups |
US10387264B1 (en) * | 2015-06-25 | 2019-08-20 | EMC IP Holding Company LLC | Initiating backups based on data changes |
US9703641B1 (en) * | 2015-06-26 | 2017-07-11 | EMC IP Holding Company LLC | Unified protection of cluster suite |
CN105068856A (zh) * | 2015-07-16 | 2015-11-18 | 武汉噢易云计算有限公司 | 基于镜像快照的虚拟机备份***及备份方法 |
CN105376329A (zh) * | 2015-12-09 | 2016-03-02 | 国云科技股份有限公司 | 一种远程在线备份虚拟机的方法 |
US11550557B2 (en) | 2016-02-12 | 2023-01-10 | Nutanix, Inc. | Virtualized file server |
US10592350B2 (en) | 2016-03-09 | 2020-03-17 | Commvault Systems, Inc. | Virtual server cloud file system for virtual machine restore to cloud operations |
US11218418B2 (en) | 2016-05-20 | 2022-01-04 | Nutanix, Inc. | Scalable leadership election in a multi-processing computing environment |
US10747630B2 (en) | 2016-09-30 | 2020-08-18 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node |
US10152251B2 (en) | 2016-10-25 | 2018-12-11 | Commvault Systems, Inc. | Targeted backup of virtual machine |
US10162528B2 (en) | 2016-10-25 | 2018-12-25 | Commvault Systems, Inc. | Targeted snapshot based on virtual machine location |
US10678758B2 (en) | 2016-11-21 | 2020-06-09 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and replication |
US11562034B2 (en) | 2016-12-02 | 2023-01-24 | Nutanix, Inc. | Transparent referrals for distributed file servers |
US11568073B2 (en) | 2016-12-02 | 2023-01-31 | Nutanix, Inc. | Handling permissions for virtualized file servers |
US10824455B2 (en) | 2016-12-02 | 2020-11-03 | Nutanix, Inc. | Virtualized server systems and methods including load balancing for virtualized file servers |
US10728090B2 (en) | 2016-12-02 | 2020-07-28 | Nutanix, Inc. | Configuring network segmentation for a virtualization environment |
US11294777B2 (en) | 2016-12-05 | 2022-04-05 | Nutanix, Inc. | Disaster recovery for distributed file servers, including metadata fixers |
US11281484B2 (en) | 2016-12-06 | 2022-03-22 | Nutanix, Inc. | Virtualized server systems and methods including scaling of file system virtual machines |
US11288239B2 (en) | 2016-12-06 | 2022-03-29 | Nutanix, Inc. | Cloning virtualized file servers |
US10896100B2 (en) | 2017-03-24 | 2021-01-19 | Commvault Systems, Inc. | Buffered virtual machine replication |
US10387073B2 (en) | 2017-03-29 | 2019-08-20 | Commvault Systems, Inc. | External dynamic virtual machine synchronization |
US10409521B1 (en) * | 2017-04-28 | 2019-09-10 | EMC IP Holding Company LLC | Block-based backups for large-scale volumes |
US10416922B1 (en) * | 2017-04-28 | 2019-09-17 | EMC IP Holding Company LLC | Block-based backups for large-scale volumes and advanced file type devices |
US10896165B2 (en) * | 2017-05-03 | 2021-01-19 | International Business Machines Corporation | Management of snapshot in blockchain |
CN110058962B (zh) * | 2018-01-18 | 2023-05-23 | 伊姆西Ip控股有限责任公司 | 确定虚拟机快照的一致性级别的方法、设备和计算机程序产品 |
US11238015B2 (en) * | 2018-01-25 | 2022-02-01 | Citrix Systems, Inc. | Instant hyper-v streaming |
US11232001B2 (en) * | 2018-01-29 | 2022-01-25 | Rubrik, Inc. | Creation of virtual machine packages using incremental state updates |
US10877928B2 (en) | 2018-03-07 | 2020-12-29 | Commvault Systems, Inc. | Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations |
CN108509641B (zh) * | 2018-04-11 | 2022-05-06 | 北京小米移动软件有限公司 | 文件备份的方法、装置、服务器以及*** |
US11086826B2 (en) | 2018-04-30 | 2021-08-10 | Nutanix, Inc. | Virtualized server systems and methods including domain joining techniques |
CN110502364B (zh) * | 2018-05-17 | 2023-03-14 | 复旦大学 | 一种OpenStack平台下大数据沙箱集群的跨云备份恢复方法 |
US11194680B2 (en) | 2018-07-20 | 2021-12-07 | Nutanix, Inc. | Two node clusters recovery on a failure |
US10990450B2 (en) * | 2018-07-23 | 2021-04-27 | Vmware, Inc. | Automatic cluster consolidation for efficient resource management |
CN109117307A (zh) * | 2018-07-25 | 2019-01-01 | 郑州云海信息技术有限公司 | 一种虚拟机数据还原方法及其相关设备 |
WO2020069654A1 (en) * | 2018-10-01 | 2020-04-09 | Huawei Technologies Co., Ltd. | Method of handling snapshot creation request and storage device thereof |
US11770447B2 (en) | 2018-10-31 | 2023-09-26 | Nutanix, Inc. | Managing high-availability file servers |
US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
US10996974B2 (en) | 2019-01-30 | 2021-05-04 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data, including management of cache storage for virtual machine data |
CN111831620B (zh) * | 2019-04-16 | 2024-04-19 | 伊姆西Ip控股有限责任公司 | 用于存储管理的方法、设备和计算机程序产品 |
CN111966526A (zh) * | 2019-05-20 | 2020-11-20 | 中兴通讯股份有限公司 | 一种基于云平台数据中心的虚拟机备份方法及装置 |
CN112306746A (zh) * | 2019-07-30 | 2021-02-02 | 伊姆西Ip控股有限责任公司 | 在应用环境中管理快照的方法、设备和计算机程序产品 |
US10969989B2 (en) * | 2019-07-30 | 2021-04-06 | EMC IP Holding Company LLC | Techniques for capturing virtual machine snapshots using data storage system snapshots |
US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
US11704035B2 (en) | 2020-03-30 | 2023-07-18 | Pure Storage, Inc. | Unified storage on block containers |
US11768809B2 (en) | 2020-05-08 | 2023-09-26 | Nutanix, Inc. | Managing incremental snapshots for fast leader node bring-up |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
US11748166B2 (en) * | 2020-06-26 | 2023-09-05 | EMC IP Holding Company LLC | Method and system for pre-allocation of computing resources prior to preparation of physical assets |
US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
CN115657969B (zh) * | 2022-12-23 | 2023-03-10 | 苏州浪潮智能科技有限公司 | 一种获取文件***差异数据的方法、装置、设备及介质 |
CN117112071B (zh) * | 2023-10-25 | 2024-01-02 | 成都云祺科技有限公司 | 一种跨平台配置信息转化方法、***、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414277A (zh) * | 2008-11-06 | 2009-04-22 | 清华大学 | 一种基于虚拟机的按需增量恢复容灾***及方法 |
US8135930B1 (en) * | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6397307B2 (en) * | 1999-02-23 | 2002-05-28 | Legato Systems, Inc. | Method and system for mirroring and archiving mass storage |
US6871271B2 (en) * | 2000-12-21 | 2005-03-22 | Emc Corporation | Incrementally restoring a mass storage device to a prior state |
US7296125B2 (en) * | 2001-11-29 | 2007-11-13 | Emc Corporation | Preserving a snapshot of selected data of a mass storage system |
US7113937B2 (en) * | 2001-12-18 | 2006-09-26 | International Business Machines Corporation | Systems, methods, and computer program products to improve performance of ported applications, such as a database, operating on UNIX system services for the OS/390 |
US7093086B1 (en) * | 2002-03-28 | 2006-08-15 | Veritas Operating Corporation | Disaster recovery and backup using virtual machines |
US6981114B1 (en) * | 2002-10-16 | 2005-12-27 | Veritas Operating Corporation | Snapshot reconstruction from an existing snapshot and one or more modification logs |
JP4439960B2 (ja) * | 2004-03-22 | 2010-03-24 | 株式会社日立製作所 | ストレージ装置 |
US7353241B2 (en) * | 2004-03-24 | 2008-04-01 | Microsoft Corporation | Method, medium and system for recovering data using a timeline-based computing environment |
US7383392B2 (en) * | 2005-05-31 | 2008-06-03 | Hewlett-Packard Development Company, L.P. | Performing read-ahead operation for a direct input/output request |
CN102117233B (zh) * | 2005-06-24 | 2013-07-17 | 信科索尔特公司 | 用于高性能企业数据保护的***和方法 |
JP4942418B2 (ja) * | 2006-08-04 | 2012-05-30 | 株式会社日立製作所 | 計算機システム及びそのスナップショット作成方法 |
JP4902403B2 (ja) * | 2006-10-30 | 2012-03-21 | 株式会社日立製作所 | 情報システム及びデータ転送方法 |
US7529867B2 (en) * | 2006-11-01 | 2009-05-05 | Inovawave, Inc. | Adaptive, scalable I/O request handling architecture in virtualized computer systems and networks |
US8060703B1 (en) * | 2007-03-30 | 2011-11-15 | Symantec Corporation | Techniques for allocating/reducing storage required for one or more virtual machines |
US8365167B2 (en) * | 2008-04-15 | 2013-01-29 | International Business Machines Corporation | Provisioning storage-optimized virtual machines within a virtual desktop environment |
US8473594B2 (en) * | 2008-05-02 | 2013-06-25 | Skytap | Multitenant hosted virtual machine infrastructure |
US7840730B2 (en) * | 2008-06-27 | 2010-11-23 | Microsoft Corporation | Cluster shared volumes |
US8046550B2 (en) * | 2008-07-14 | 2011-10-25 | Quest Software, Inc. | Systems and methods for performing backup operations of virtual machine files |
JP5205164B2 (ja) * | 2008-07-29 | 2013-06-05 | 株式会社日立製作所 | ファイルシステム管理装置及び方法 |
US8615489B2 (en) * | 2008-08-25 | 2013-12-24 | Vmware, Inc. | Storing block-level tracking information in the file system on the same block device |
US8117410B2 (en) | 2008-08-25 | 2012-02-14 | Vmware, Inc. | Tracking block-level changes using snapshots |
US7987226B2 (en) * | 2008-10-31 | 2011-07-26 | International Business Machines Corporation | Internet small computer systems interface (iSCSI) software target boot and dump routing driver |
JP5234348B2 (ja) * | 2008-11-21 | 2013-07-10 | 株式会社日立製作所 | オンラインボリュームと性能/障害独立かつ容量効率の高いスナップショットを実現するストレージシステム及び方法 |
US8654134B2 (en) * | 2008-12-08 | 2014-02-18 | Microsoft Corporation | Command remoting |
US8578076B2 (en) * | 2009-05-01 | 2013-11-05 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
US8825685B2 (en) * | 2009-11-16 | 2014-09-02 | Symantec Corporation | Selective file system caching based upon a configurable cache map |
US8219768B2 (en) * | 2010-01-05 | 2012-07-10 | Hitachi, Ltd. | System and method for establishing a copy pair relationship between source and destination volumes |
US8832029B2 (en) * | 2011-02-16 | 2014-09-09 | Microsoft Corporation | Incremental virtual machine backup supporting migration |
US8670450B2 (en) * | 2011-05-13 | 2014-03-11 | International Business Machines Corporation | Efficient software-based private VLAN solution for distributed virtual switches |
US9342329B2 (en) * | 2011-12-20 | 2016-05-17 | Blackberry Limited | Method and system for cross-operating systems execution of software applications |
US20130326519A1 (en) * | 2011-12-30 | 2013-12-05 | Andrew V. Anderson | Virtual machine control structure shadowing |
-
2010
- 2010-04-12 US US12/758,042 patent/US20110252208A1/en not_active Abandoned
-
2011
- 2011-03-25 CN CN201180018583.5A patent/CN102834822B/zh active Active
- 2011-03-25 EP EP11769272.3A patent/EP2558949B1/en not_active Not-in-force
- 2011-03-25 WO PCT/US2011/030062 patent/WO2011129987A2/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8135930B1 (en) * | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
CN101414277A (zh) * | 2008-11-06 | 2009-04-22 | 清华大学 | 一种基于虚拟机的按需增量恢复容灾***及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20110252208A1 (en) | 2011-10-13 |
CN102834822A (zh) | 2012-12-19 |
EP2558949A2 (en) | 2013-02-20 |
WO2011129987A2 (en) | 2011-10-20 |
EP2558949B1 (en) | 2014-09-17 |
WO2011129987A3 (en) | 2012-01-12 |
EP2558949A4 (en) | 2013-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102834822B (zh) | 由虚拟机共享的群集的快速-完整备份 | |
US10642526B2 (en) | Seamless fault tolerance via block remapping and efficient reconciliation | |
US11061584B2 (en) | Profile-guided data preloading for virtualized resources | |
JP6353924B2 (ja) | ブロックベースストレージに対するデータボリュームの耐久性状態の低減 | |
EP3686739B1 (en) | Method and system for enabling agentless backup and restore operations on a container orchestration platform | |
CN107111533B (zh) | 虚拟机集群备份 | |
EP3117325B1 (en) | Page cache write logging at block-based storage | |
US9128765B2 (en) | Assigning restored virtual machine based on past application usage of requesting user | |
US11093148B1 (en) | Accelerated volumes | |
CN101443748B (zh) | 将机器转换为虚拟机 | |
KR101606212B1 (ko) | 하이퍼바이저 파일 시스템 | |
CN100359479C (zh) | 存储服务与*** | |
CN103810058A (zh) | 虚拟机备份方法、设备及*** | |
KR20220018087A (ko) | 데이터 볼륨들의 동적 구성 | |
US20150058384A1 (en) | Scalable distributed storage architecture | |
CN104202332B (zh) | 基于Linux内核的移动设备虚拟化***及即时安装方法 | |
US11853587B2 (en) | Data storage system with configurable durability | |
CN102200921A (zh) | 智能引导设备选择和恢复 | |
US20180136941A1 (en) | Bootstrapping Profile-Guided Compilation and Verification | |
CN104040525A (zh) | 通过网络连接访问覆盖介质 | |
US20220317912A1 (en) | Non-Disruptively Moving A Storage Fleet Control Plane | |
CN113296891B (zh) | 基于平台的多场景知识图谱处理方法及装置 | |
CN106354435A (zh) | Raid初始化的方法及装置 | |
CN103713952A (zh) | 一种基于ufs的虚拟磁盘分布式存储方法 | |
US11121981B1 (en) | Optimistically granting permission to host computing resources |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150728 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150728 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |