首页 / 专利库 / 资料储存系统 / 高速缓冲存储器 / HYPER-V VM即时恢复和访问及使用数据域BOOSTFS在VM内部运行的应用

HYPER-V VM即时恢复和访问及使用数据域BOOSTFS在VM内部运行的应用

阅读:355发布:2020-05-11

专利汇可以提供HYPER-V VM即时恢复和访问及使用数据域BOOSTFS在VM内部运行的应用专利检索,专利查询,专利分析的服务。并且本公开涉及HYPER-V VM的即时恢复和即时 访问 和使用数据域BOOSTFS在VM内部运行的应用程序,并提供了一种用于托管 虚拟机 的生产主机包含永久性存储装置、备份存储客户端和生产代理。所述永久性存储装置存储与所述虚拟机的一部分相关联的数据。所述备份存储客户端提供对存储在备份存储装置中的与所述虚拟机的第二部分相关联的第二数据的访问。所述生产代理识别对虚拟机的即时访问 请求 ,并且,响应于识别到所述即时访问请求,使用与所述虚拟机相关联的所述第二数据的一部分在所述备份存储装置中产生即时访问虚拟机数据;本地安装所述产生的即时访问虚拟机数据;使用所述即时访问虚拟机数据本地实例化所述虚拟机;和使用所述即时访问虚拟机数据执行所述实例化的虚拟机。,下面是HYPER-V VM即时恢复和访问及使用数据域BOOSTFS在VM内部运行的应用专利的具体信息内容。

1.一种用于托管虚拟机的生产主机,其包括:
永久性存储装置,其存储与所述虚拟机的一部分相关联的数据;以及
备份存储客户端,其提供对存储在备份存储装置中的与所述虚拟机的第二部分相关联的第二数据的访问
生产代理,其被编程以:
识别对虚拟机的即时访问请求
响应于识别到所述即时访问请求:
使用与所述虚拟机相关联的所述第二数据的一部分在所述备份存储装置中产生即时访问虚拟机数据;
本地安装所述产生的即时访问虚拟机数据;
使用所述即时访问虚拟机数据本地实例化所述虚拟机;以及
使用所述即时访问虚拟机数据执行所述实例化的虚拟机。
2.根据权利要求1所述的生产主机,其进一步包括存储所述即时访问虚拟机数据的一部分的逻辑高速缓冲存储器
3.根据权利要求1所述的生产主机,其中所述第二数据的所述部分由重复数据删除后的数据组成。
4.根据权利要求3所述的生产主机,其中使用与所述虚拟机相关联的所述第二数据的所述部分在所述备份存储装置中产生所述即时访问虚拟机数据包括:
再生所述重复数据删除后的数据所基于的虚拟机数据;
在即时访问存储装置中存储所述再生的虚拟机数据;以及
产生与所述再生的虚拟机数据相关联的差异磁盘。
5.根据权利要求4所述的生产主机,其中所述即时访问虚拟机数据包括所述虚拟机的图像。
6.根据权利要求1所述的生产主机,其中使用所述即时访问虚拟机数据执行所述实例化的虚拟机包括:
获得随着时间的流逝对所述虚拟机的修改;以及
将所述获得的修改发送到所述虚拟机用于存储在与所述虚拟机相关联的差异磁盘中。
7.根据权利要求6所述的生产主机,其中使用所述即时访问虚拟机数据执行所述实例化的虚拟机进一步包括:
在发送所述获得的修改前:
在本地高速缓冲存储所述修改的一部分。
8.根据权利要求6所述的生产主机,其中将所述获得的修改发送到所述虚拟机以用于存储在与所述虚拟机相关联的所述差异磁盘中包括:
从本地高速缓冲存储器获得所述修改的第一部分;
将所述修改的所述第一部分发送到所述备份存储装置;
在发送所述修改的所述第一部分后从所述本地高速缓冲存储器获得所述修改的第二部分;以及
将所述修改的所述第二部分发送到所述备份存储装置。
9.一种用于由生产主机托管虚拟机的方法,其包括:
识别对虚拟机的即时访问请求;
响应于识别到所述即时访问请求:
使用与所述虚拟机相关联的数据的一部分在备份存储装置中产生即时访问虚拟机数据;
本地安装所述产生的即时访问虚拟机数据;
使用所述即时访问虚拟机数据本地实例化所述虚拟机;以及
使用所述即时访问虚拟机数据执行所述实例化的虚拟机。
10.根据权利要求9所述的方法,其中当使用所述即时访问虚拟机数据执行所述实例化的虚拟机时,使用本地处理资源、本地存储器资源和所述备份存储装置的存储资源。
11.根据权利要求10所述的方法,其中当执行所述虚拟机中的虚拟机时,使用所述本地处理资源、所述本地存储器资源和本地存储装置资源。
12.根据权利要求11所述的方法,其中当进一步使用所述即时访问虚拟机数据执行所述实例化的虚拟机时,使用用于所述备份存储装置的本地高速缓冲存储器资源,其中通过高速缓冲存储与所述虚拟机相关联的所述数据的第二部分来利用所述本地高速缓冲存储器资源。
13.根据权利要求9所述的方法,其中所述数据的所述部分由重复数据删除后的数据组成。
14.根据权利要求13所述的方法,其中使用与所述虚拟机相关联的数据的所述部分在所述备份存储装置中产生所述即时访问虚拟机数据包括:
再生所述重复数据删除后的数据所基于的虚拟机数据;
在即时访问存储装置中存储所述再生的虚拟机数据;以及
产生与所述再生的虚拟机数据相关联的差异磁盘。
15.根据权利要求14所述的方法,其中所述即时访问虚拟机数据包括所述虚拟机的图像。
16.一种非暂时性计算机可读介质,其包括计算机可读程序代码,所述计算机可读程序代码在由计算机处理器执行时使所述计算机处理器能够执行用于由生产主机托管虚拟机的方法,所述方法包括:
识别对虚拟机的即时访问请求;
响应于识别到所述即时访问请求:
使用与所述虚拟机相关联的数据的一部分在备份存储装置中产生即时访问虚拟机数据;
本地安装所述产生的即时访问虚拟机数据;以及
使用所述即时访问虚拟机数据本地实例化所述虚拟机;以及
使用所述即时访问虚拟机数据执行所述实例化的虚拟机。
17.根据权利要求17所述的非暂时性计算机可读介质,其中所述数据的所述部分由重复数据删除后的数据组成。
18.根据权利要求17所述的非暂时性计算机可读介质,其中使用与所述虚拟机相关联的数据的所述部分在所述备份存储装置中产生所述即时访问虚拟机数据包括:
再生所述重复数据删除后的数据所基于的虚拟机数据;
在即时访问存储装置中存储所述再生的虚拟机数据;以及
产生与所述再生的虚拟机数据相关联的差异磁盘。
19.根据权利要求18所述的非暂时性计算机可读介质,其中所述即时访问虚拟机数据包括所述虚拟机的图像。
20.根据权利要求16所述的非暂时性计算机可读介质,其中当使用所述即时访问虚拟机数据执行所述实例化的虚拟机时,使用本地处理资源、本地存储器资源、所述备份存储装置的存储资源和用于所述备份存储装置的本地高速缓冲存储器资源;其中当执行所述虚拟机中的虚拟机时,使用所述本地处理资源、所述本地存储器资源和本地存储装置资源,其中通过高速缓冲存储与所述虚拟机相关联的所述数据的第二部分来利用所述本地高速缓冲存储器资源。

说明书全文

HYPER-V VM即时恢复和访问及使用数据域BOOSTFS在VM内部

运行的应用

背景技术

[0001] 计算装置产生、使用和存储数据。所述数据可以是(例如)与所述数据相 关联的图像、文件、网页或元数据。所述数据可存储于永久性存储装置上。存 储的数据可从永久性存储装置删除。
[0002] 存储在计算装置上的数据的备份可通过将其存储在第二计算装置上来备 份。所述第二计算装置可在地理上与计算装置分开。发明内容
[0003] 在一个方面,根据本发明的一个或多个实施例的一种用于托管虚拟机的生 产主机包含永久性存储装置、备份存储客户端和生产代理。所述永久性存储装 置存储与所述虚拟机的一部分相关联的数据。所述备份存储客户端提供对存储 在备份存储装置中的与所述虚拟机的第二部分相关联的第二数据的访问。所述 生产代理识别对虚拟机的即时访问请求,并且,响应于识别到所述即时访问请 求,使用与所述虚拟机相关联的所述第二数据的一部分在所述备份存储装置中 产生即时访问虚拟机数据;本地安装所述产生的即时访问虚拟机数据;使用所 述即时访问虚拟机数据本地实例化所述虚拟机;和使用所述即时访问虚拟机数 据执行所述实例化的虚拟机。
[0004] 在一个方面,根据本发明的一个或多个实施例的一种用于由生产主机托管 虚拟机的方法包含识别对虚拟机的即时访问请求,并且,响应于识别到所述即 时访问请求,使用与所述虚拟机相关联的数据的一部分在备份存储装置中产生 即时访问虚拟机数据;本地安装所述产生的即时访问虚拟机数据;使用所述即 时访问虚拟机数据本地实例化所述虚拟机;和使用所述即时访问虚拟机数据执 行所述实例化的虚拟机。
[0005] 在一个方面,根据本发明的一个或多个实施例的一种非暂时性计算机可读 介质包含计算机可读程序代码,其在由计算机处理器执行时使所述计算机处理 器执行用于由生产主机托管虚拟机的方法。所述方法包含识别对虚拟机的即时 访问请求,并且,响应于识别到所述即时访问请求,使用与所述虚拟机相关联 的数据的一部分在备份存储装置中产生即时访问虚拟机数据;本地安装所述产 生的即时访问虚拟机数据;使用所述即时访问虚拟机数据本地实例化所述虚拟 机;和使用所述即时访问虚拟机数据执行所述实例化的虚拟机。附图说明
[0006] 将参看附图描述本发明的某些实施例。然而,所述附图仅通过实例说明本 发明的某些方面或实施,且并不打算限制权利要求书的范围。
[0007] 图1展示根据本发明的一个或多个实施例的系统的图。
[0008] 图2A展示根据本发明的一个或多个实施例的实例生产主机的图。
[0009] 图2B展示根据本发明的一个或多个实施例的图1的系统的组件之间的关 系的图。
[0010] 图2C展示根据本发明的一个或多个实施例的虚拟机数据的实例的图。
[0011] 图3展示根据本发明的一个或多个实施例的实例备份存储装置的图。
[0012] 图4A展示根据本发明的一个或多个实施例的托管虚拟机的方法的流程图
[0013] 图4B展示根据本发明的一个或多个实施例的产生即时访问虚拟机数据的 方法的流程图。
[0014] 图4C展示根据本发明的一个或多个实施例的提供对虚拟机数据的即时访 问的方法的流程图。
[0015] 图5A展示在第一时间点的实例系统的图。
[0016] 图5B展示在第二时间点的图5A的实例系统的图。
[0017] 图5C展示在第三时间点的图5A的实例系统的图。
[0018] 图6展示根据本发明的一个或多个实施例的计算装置的图。

具体实施方式

[0019] 现将参看附图来描述具体实施例。在以下描述中,将众多细节阐述为本发 明的实例。所属领域的技术人员应理解,可在无这些具体细节的情况下实践本 发明的一或多个实施例,并且在不脱离本发明的范围的情况下,众多变化或修 改可为可能的。省略所属领域的一般技术人员已知的某些细节,以避免混淆描 述。
[0020] 在所述图的以下描述中,在本发明的各种实施例中,关于一个图描述的任 一组件可等效于关于任一其它图描述的一个或多个相似命名的组件。为简洁起 见,将不关于每一个图来重复此等组件的描述。因此,每一图的组件的每个实 施例被以引用的方式并入,且假定为任选地存在于具有一个或多个相似命名的 组件的每一其它图内。另外,根据本发明的各种实施例,图的组件的任何描述 应被解释为任选实施例,其可除了关于任一其它图中的对应的相似命名的组件 描述的实施例外再实施,与所述实施例一起实施,或代替所述实施例加以实施。
[0021] 一般而言,本发明的实施例係关于用于恢复虚拟机的系统、装置和方法。 更具体地说,所述系统、装置和方法可倍增执行恢复的方法。取决于虚拟机的 重要性,可相对于其它方法优选地选择所述方法中的一个。
[0022] 在本发明的一个或多个实施例中,所述系统执行针对高重要性虚拟机的即 时访问恢复。在即时访问恢复中,来自备份存储装置的备份数据可不传送到待 恢复的虚拟机将执行的位置。相反地,备份数据可存储在备份存储装置中,且 可将对备份数据的访问远程提供到待恢复的虚拟机。通过这样做,本发明的实 施例可大体上减少执行虚拟机恢复所需的时间。
[0023] 图1展示根据本发明的一个或多个实施例的实例系统。所述系统可包含托 管暴露于客户端(140)的虚拟机的生产主机(130)。所述系统可进一步包含对 生产主机提供服务的远程代理(110)。所述服务可包含在备份存储装置(120) 中的数据存储和使用存储在备份存储装置(120)中的数据进行的虚拟机的恢复。 在本发明的一个或多个实施例中,恢复虚拟机可产生即时访问虚拟机。即时访 问虚拟机可使用备份存储装置(120)其存储资源和生产主机用于其计算和存储 器资源。通过这样做,当与以利用生产主机用于存储资源的方式恢复虚拟机相 比时,可更快速得多地恢复虚拟机。图1的系统的每个组件可经由有线和无线 连接的任何组合可操作地连接。下文论述所述系统的每一组件。
[0024] 客户端(140)可以是计算装置。计算装置可以是(例如)移动电话、平板 计算机、笔记本电脑、台式计算机、服务器资源。所述计算装置可包含一 个或多个处理器、存储器(例如,随机存取存储器)和永久性存储装置(例如, 磁盘驱动器、固态驱动器等)。所述永久性存储装置可存储计算机指令,例如, 计算机代码,所述计算机指令在由计算装置的处理器执行时使所述计算装置执 行在本申请中描述的功能。在不脱离本发明的情况下,客户端(140)可为其它 类型的计算装置。关于计算装置的额外细节,请参见图6。
[0025] 所述客户端(140)可与由生产主机(130)托管的虚拟机交互。举例来说, 虚拟机可托管数据库电子邮件服务器或任何其他类型的应用程序。客户端 (140)可利用由这些或其它应用程序提供的服务。在另一实例中,客户端(140) 可直接操作虚拟机,例如,虚拟化环境。在此情境中,客户端(140)可作为用 于访问虚拟机的终端操作。
[0026] 在本发明的一个或多个实施例中,生产主机(130)是计算装置。计算装置 可以是(例如)移动电话、平板计算机、笔记本电脑、台式计算机、服务器、 分布式计算系统或云资源。所述计算装置可包含一个或多个处理器、存储器(例 如,随机存取存储器)和永久性存储装置(例如,磁盘驱动器、固态驱动器等)。 所述永久性存储装置可存储计算机指令,例如,计算机代码,所述计算机指令 在由计算装置的处理器执行时使所述计算装置执行在本申请中描述的功能。在 不脱离本发明的情况下,生产主机(130)可以是其它类型的计算装置。关于计 算装置的额外细节,请参见图6。
[0027] 在本发明的一个或多个实施例中,生产主机(130)为分布式计算装置。如 本文中所使用,分布式计算装置指由利用一个或多个单独和/或截然不同的计算 装置的计算资源的逻辑装置提供的功能性。举例来说,在本发明的一个或多个 实施例中,生产主机(130)可以是分布式装置,其包含跨许多单独和/或截然不 同的计算装置分布的组件。在此情境中,在不脱离本发明的情况下,生产主机 (130)的功能性可由多个不同计算装置执行。
[0028] 在本发明的一个或多个实施例中,生产主机(130)托管虚拟机。在不脱离 本发明的情况下,生产主机(130)可托管任何数目的虚拟机。生产主机(130) 还可托管代理或其它执行组件,用于编排托管的虚拟机的操作。
[0029] 在本发明的一个或多个实施例中,可在不同时间点恢复由生产主机(130) 托管的虚拟机。举例来说,可将变破坏的虚拟机恢复以继续对客户端(140)提 供服务。在另一实例中,归因于灾难或其它事件,托管虚拟机的生产主机可变 得不可操作。在此情境中,由不可操作的生产主机托管的虚拟机可在其它生产 主机上恢复。关于生产主机(130)的额外细节,参见图2A。
[0030] 在本发明的一个或多个实施例中,远程代理(110)是计算装置。计算装置 可以是(例如)移动电话、平板计算机、笔记本电脑、台式计算机、服务器、 分布式计算系统或云资源。所述计算装置可包含一个或多个处理器、存储器(例 如,随机存取存储器)和永久性存储装置(例如,磁盘驱动器、固态驱动器等)。 所述永久性存储装置可存储计算机指令,例如,计算机代码,所述计算机指令 在由计算装置的处理器执行时使所述计算装置执行在本申请中描述的远程代理 (110)的功能和在图4A-4C中说明的方法的全部或或其一部分。在不脱离本发 明的情况下,远程代理(110)可为其它类型的计算装置。关于计算装置的额外 细节,请参见图6。
[0031] 在本发明的一个或多个实施例中,远程代理(110)是分布式计算装置。如 本文中所使用,分布式计算装置指由利用一个或多个单独和/或截然不同的计算 装置的计算资源的逻辑装置提供的功能性。举例来说,在本发明的一个或多个 实施例中,远程代理(110)可以是分布式装置,其包含跨许多单独和/或截然不 同的计算装置分布的组件。在此情境中,在不脱离本发明的情况下,远程代理 (110)的功能性可由多个不同计算装置执行。
[0032] 在本发明的一个或多个实施例中,远程代理(110)对虚拟机提供服务。服 务可包含存储虚拟机数据,产生虚拟机的备份,和/或执行虚拟机的恢复。
[0033] 在本发明的一个或多个实施例中,远程代理(110)通过执行备份或恢复工 作流来提供前述服务。这样做可分别产生可用于恢复目的的备份,或将虚拟机 恢复到先前状态。前述工作流中的步骤可通过策略控管。每一工作流可包含任 何数目个步骤。不同工作流可包含不同数目个和不同类型的步骤。
[0034] 在本发明的一个或多个实施例中,取决于每一虚拟机的所述或其它特性, 远程代理(110)可执行不同类型的工作流用于恢复虚拟机。举例来说,第一类 型的恢复工作流可导致恢复的虚拟机在利用生产主机的存储资源的生产主机上 执行。可针对低重要性虚拟机来执行第一类型的恢复工作流。在另一实例中, 第二类型的恢复工作流可导致恢复的虚拟机在利用备份存储装置的存储资源的 生产主机上执行。可针对高重要性虚拟机来执行第二类型的恢复工作流。与第 一类型的恢复工作流大不相同,可更快速地完成第二类型的恢复工作流。第二 类型的恢复工作流可导致被称作即时访问虚拟机的虚拟机。
[0035] 在本发明的一个或多个实施例中,备份存储装置(120)是计算装置。计算 装置可以是(例如)移动电话、平板计算机、笔记本电脑、台式计算机、服务 器、分布式计算系统或云资源。所述计算装置可包含一个或多个处理器、存储 器(例如,随机存取存储器)和永久性存储装置(例如,磁盘驱动器、固态驱 动器等)。所述永久性存储装置可存储计算机指令,例如,计算机代码,所述计 算机指令在由计算装置的处理器执行时使所述计算装置提供通过本申请描述的 备份存储装置(120)的功能性和在图4A-4C中说明的方法的全部或或其一部 分。关于计算装置的额外细节,请参见图6。
[0036] 在本发明的一个或多个实施例中,备份存储装置(120)是分布式计算装置。 如本文中所使用,分布式计算装置指由利用一个或多个单独和/或截然不同的计 算装置的计算资源的逻辑装置提供的功能性。举例来说,在本发明的一个或多 个实施例中,备份存储装置(120)可以是分布式装置,其包含跨数个单独和/或 分开的计算装置分布的组件。在此情境中,在不脱离本发明的情况下,备份存 储装置(120)的功能性可由多个不同计算装置执行。
[0037] 在本发明的一个或多个实施例中,备份存储装置(120)存储来自生产主机 (130)的数据。数据可以是(例如)虚拟机的备份。在本发明的一个或多个实 施例中,虚拟机的备份是反映虚拟机在预定时间点的状态或在一段时间上的状 态改变的数据结构。举例来说,虚拟机的备份可以是虚拟机的图像、虚拟机的 差异磁盘、在虚拟机上执行的应用程序的日志,或其它类型的数据结构。虚拟 机的图像可包含在一个时间点的所有虚拟机数据。差异磁盘可以是在一段时间 上对虚拟机数据作出的改变。日志可以是在一段时间上对应用程序数据作出的 改变。在不脱离本发明的情况下,虚拟机的备份可以是其它类型的数据结构, 其可用于将虚拟机恢复到先前状态。
[0038] 变化类型的多个备份可用于将虚拟机恢复到先前状态。这些多个备份可被 称作连续链。针对恢复目的,连续链的每一备份可结合连续链的其它成员使用。 举例来说,虚拟机图像可用于将虚拟机恢复到在产生图像时的虚拟机的状态。 在另一实例中,紧接在与图像相关联的时间点后的一段时间内的虚拟机图像和 差异磁盘可用于将虚拟机恢复到在所述时间点后的时间段结束时的虚拟机的状 态。
[0039] 在此情境中,虚拟机图像和差异磁盘可形成连续链。在本发明的一个或多 个实施例中,连续链是许多备份,其各自与不同时间段相关联,所述时间段形 成连续系,例如与备份相关联的时间段涵盖时间线的连续部分。举例来说,第 一备份可与5月12日相关联且第二备份可与5月13日到5月17日相关联。 因此,第一备份和第二备份的组合涵盖5月12日到5月17日的时段。所述备 份可用于将虚拟机恢复到5月12日与5月17日之间的任一时间点。在不脱离 本发明的情况下,备份存储装置(120)可存储额外数据或与虚拟机的备份不同 的数据。
[0040] 为了执行虚拟机的恢复,可组合连续链的多个备份以获得反映在所要的时 间点的虚拟机的状态的虚拟机图像。在本发明的一个或多个实施例中,当产生 虚拟机时,备份存储装置(120)可将获得的虚拟机图像发送到生产主机。在本 发明的一个或多个实施例中,备份存储装置(120)可在本地存储获得的虚拟机 图像,且将对存储的虚拟机图像的访问提供到托管利用获得的虚拟机图像的即 时访问虚拟机的生产主机。
[0041] 在本发明的一个或多个实施例中,将存储在备份存储装置(120)中的部分 数据存储在重复数据删除后的存储装置中。重复数据删除后的存储装置可试图 增大其可仅通过存储唯一数据的复本而存储的数据量。当将数据存储在重复数 据删除后的存储装置中时,可首先检查数据以确定其是否是已经存储在备份存 储装置中的重复数据。仅数据的唯一部分可存储在备份存储装置中。将数据存 储在重复数据删除后的存储装置中和访问重复数据删除后的存储装置中的数据 可比将数据存储在非重复数据删除后的存储装置中明显耗费更多的计算资源。
[0042] 在本发明的一个或多个实施例中,将由即时访问虚拟机使用的虚拟机图像 存储在即时访问存储装置(例如,不存储重复数据删除后的数据的永久性存储 装置的一部分)中。与重复数据删除后的存储大不相同,出于数据存储和访问 目的,即时访问存储可在计算上花费不高。关于备份存储装置的额外细节,请 参见图3。
[0043] 如上文所论述,备份存储装置可存储从生产主机(130)获得的数据。图2A 展示根据本发明的一个或多个实施例的实例生产主机(200)的图。
[0044] 在本发明的一个或多个实施例中,实例生产主机(200)托管虚拟机(210) 和即时访问虚拟机(215)。在不脱离本发明的情况下,实例生产主机(200)可 托管任何数目个虚拟机(210A、210N)和即时访问虚拟机(215)。
[0045] 在本发明的一个或多个实施例中,虚拟机(210)使用实例生产主机(200) 的计算资源执行。举例来说,可为虚拟机(210)中的每一个分配实例生产主机 (200)的处理资源、存储器资源和/或存储资源的一部分。
[0046] 在本发明的一个或多个实施例中,即时访问虚拟机(215)使用实例生产主 机(200)的计算资源和备份存储装置的计算资源执行。即时访问虚拟机(215) 可使用备份存储装置的存储资源执行。即时访问虚拟机(215)可使用实例生产 主机(200)的计算和存储器资源执行。举例来说,可为即时访问虚拟机(215) 中的每一个分配实例生产主机的处理资源和存储器资源的一部分和备份存储装 置的存储资源的一部分。在本发明的一个或多个实施例中,即时访问虚拟机 (215)可不利用实例生产主机(200)的存储资源用于存储其虚拟机图像的复本。
[0047] 在本发明的一个或多个实施例中,即时访问虚拟机(215)可经由备份存储 客户端(224)访问备份存储装置的存储资源。所述备份存储客户端(224)可 为提供对备份存储装置的远程存储装置访问的执行实体。备份存储客户端(224) 可使备份存储装置的存储资源能够安装在实例生产主机(200)中,并且,由此, 使实例生产主机(200)的执行实体能够访问这些存储资源。举例来说,备份存 储客户端(224)可利用数据域Boost文件系统安装备份存储装置的存储资源。
[0048] 在本发明的一个或多个实施例中,即时访问虚拟机(215)可不利用实例生 产主机(200)的存储资源用于存储差异磁盘。在本发明的一个或多个实施例中, 当将数据写入到即时访问虚拟机(215)时,将其存储于逻辑高速缓冲存储器(226)中。可将逻辑高速缓冲存储器(226)中的数据传送到存储相应即时访问 虚拟机的虚拟机图像的备份存储装置。在本发明的一个或多个实施例中,出于 依序写入目的,将数据从逻辑高速缓冲存储器(226)到备份存储装置的传送优 化。
[0049] 在本发明的一个或多个实施例中,逻辑高速缓冲存储器(226)为利用实例 生产主机(200)的计算资源的逻辑实体。可在存储器和/或存储装置中实施逻辑 高速缓冲存储器(226)。在本发明的一个或多个实施例中,逻辑高速缓冲存储 器(226)存储待写入到差异磁盘的数据和/或先前写入到差异磁盘的数据或为 存储于备份存储装置上的虚拟机图像的一部分的数据。举例来说,为了改善即 时访问虚拟机的存储的虚拟机数据的读访问,可将存储在备份存储装置中的虚 拟机数据的部分的复本存储在逻辑高速缓冲存储器中。可以任何方式选择存储 在逻辑高速缓冲存储器(226)中的复制的数据,例如,访问的频率、由管理员 或其它用户指定、统计分析指示显著性等。
[0050] 在本发明的一个或多个实施例中,在过去时间点的虚拟机(210)中的每一 个的图像可存储(即,本地存储)在托管相应虚拟机的生产主机上。在过去的 时间点之后,可存储差异磁盘,其存储从虚拟机(210)中的每一个的图像作出 的改变中的每一个。前述图像和差异磁盘可本地存储或存储在备份存储装置中。 相比之下,即时访问虚拟机(215)的图像和差异磁盘可存储在备份存储装置中。
[0051] 在本发明的一个或多个实施例中,可产生与由虚拟机(210)和/或即时访问 虚拟机(215)托管的应用程序相关联的日志。日志可反映应用程序数据的改变。 日志可与虚拟机图像和/或差异磁盘组合使用以将虚拟机恢复到预定状态和/或 将应用程序恢复到预定状态。由即时访问虚拟机(215)托管的应用程序的日志 可存储在备份存储装置中,而由虚拟机(215)托管的应用程序的日志可在传送 到备份存储装置供长期存储前在本地存储。
[0052] 在本发明的一个或多个实施例中,产生虚拟机(210)的备份包含存储虚拟 机的图像的复本、差异磁盘和/或在本地产生后由备份存储装置中的虚拟机托管 的一个或多个应用程序的日志。因此,当执行虚拟机的恢复时,差异磁盘和/或 日志可与虚拟机图像合并以获得由差异磁盘和/或日志中的每一个反映的在时 间段之后的时间点处的虚拟机和/或应用程序的表示。相比之下,产生即时访问 虚拟机(215)的备份包含将虚拟机的图像的复本、差异磁盘和/或日志直接存储 在备份存储装置中,即,在传送前不在本地存储。
[0053] 在本发明的一个或多个实施例中,实例生产主机(200)包含管理程序(220), 其管理虚拟机(210)和即时访问虚拟机(215)的执行。管理程序(220)可实 例化和/或终止虚拟机(210)中的任一个。管理程序(220)还可将生产主机(200) 的计算资源分配到虚拟机(210、215)中的每一个。关于由虚拟机和即时访问 虚拟机利用的计算资源的额外细节,请参见图2B。
[0054] 在本发明的一个或多个实施例中,管理程序(220)是包含电路系统的硬件 装置。管理程序(220)可以是例如数字信号处理器、现场可编程阵列或专用 集成电路。在不脱离本发明的情况下,管理程序(220)可以是其它类型的硬件 装置。
[0055] 在本发明的一个或多个实施例中,管理程序(220)被实施为存储在永久性 存储装置上的计算代码,其在由处理器执行时执行管理程序(220)的功能性。 处理器可以是包含电路系统的硬件处理器,例如,中央处理单元或微控制器。 在不脱离本发明的情况下,处理器可以是用于处理数字信息的其它类型的硬件 装置。
[0056] 实例生产主机(200)可包含生产代理(222),其管理虚拟机数据(例如, 图像、差异磁盘和日志)在备份存储装置中的存储。关于虚拟机数据的额外细 节,请参见图2C。生产代理(222)可向管理程序(220)发出命令以当试图存 储虚拟机数据时控制虚拟机(210、215)的操作。举例来说,生产代理(222) 可起始产生备份包装(即,对于虚拟机、应用程序或在实例生产主机(200)上 执行的其它实体,反映实体的状态和使实体能够恢复到所述状态的数据)的过 程。类似地,生产代理(222)可起始对虚拟机、应用程序或其它实体的恢复。
[0057] 在本发明的一个或多个实施例中,生产代理(222)是硬化实体,即,不可 由远离生产代理(222)正在其上执行的生产主机的实体修改。生产代理(222) 可具有可由远程实体调用的设定有限数目个预定义的功能。在本发明的一个或 多个实施例中,生产代理(222)不可通过经由远程终端或其它配置实用程序修 改设定或相关联的配置文件来配置。
[0058] 在本发明的一个或多个实施例中,生产代理(222)是包含电路系统的硬件 装置。生产代理(222)可以是(例如)数字信号处理器、现场可编程门阵列或 专用集成电路。在不脱离本发明的情况下,客户端(222)可为其它类型的硬件 装置。
[0059] 在本发明的一个或多个实施例中,生产代理(222)被实施为存储在永久性 存储装置上的计算代码,其在由处理器执行时执行生产代理(222)的功能性。 处理器可以是包含电路系统的硬件处理器,例如,中央处理单元或微控制器。 在不脱离本发明的情况下,处理器可以是用于处理数字信息的其它类型的硬件 装置。
[0060] 如上所指出,虚拟机可利用不同类型的计算资源。图2B展示根据本发明的 一个或多个实施例的说明由不同类型的虚拟机消耗的资源的关系图。如从图2B 看出,实例虚拟机(250)消耗资源,例如,局部处理(252)、本地存储器(254) 和本地存储装置(256)资源。在本发明的一个或多个实施例中,本地资源为托 管执行实体的计算装置的计算资源。举例来说,托管实例虚拟机(250)的生产 主机的计算资源可为本地资源。
[0061] 如实例虚拟机(250),实例即时访问虚拟机(260)消耗例如本地处理(252) 和本地存储器(254)的计算资源。然而,实例即时访问虚拟机(260)还消耗 远程存储装置(262)和逻辑高速缓冲存储器(264)。在本发明的一个或多个实 施例中,远程存储装置(262)是存储用于实例即时访问虚拟机(260)的备份 数据的备份存储装置的存储资源。换句话说,实例即时访问虚拟机(260)消耗 用于存储备份数据和用于提供存储(例如,托管在使用中的虚拟机图像和在使 用中的差异磁盘的存储)的备份存储装置的存储资源。备份数据通常可不在使 用中,除了当出于恢复目的而撷取时之外。
[0062] 图2C展示根据本发明的一个或多个实施例的实例虚拟机数据(270)的图。 如上所指出,出于恢复目的,虚拟机数据可存储在备份存储装置中。实例虚拟 机数据(270)可包含虚拟机图像(272)、差异磁盘(274)和应用程序日志(276)。 这些备份中的每一个可用于与虚拟机数据相关联的虚拟机的恢复目的。当存储 在备份存储装置中时,前述虚拟机数据可被称作备份数据。
[0063] 对于虚拟机,虚拟机数据(270)可在本地产生,存储在本地,且然后传送 到备份存储装置。对于即时访问虚拟机,虚拟机数据(270)可在本地产生且存 储在备份存储装置中,即,不在本地存储。在本发明的一个或多个实施例中, 虚拟机数据(270)可如其产生时一样存储在本地逻辑高速缓冲存储器中,且以 离散存储在备份存储装置中。这样做可使备份存储装置的写入基于备份存储 装置的下层存储架构而优化。举例来说,可能有利的是,例如,更高效地,将 预定大小的离散数据块存储而非将产生的虚拟机数据流式传输到备份存储装 置,以供紧接在产生后存储。如上所指出,因为备份存储装置可实施重复数据 删除后的存储,所以在一些情况下,对于备份存储装置中的存储数据,可能在 计算上花费大。因此,高速缓冲存储虚拟机数据(270)(如在其产生之时一样) 和将离散块发送到备份存储装置供存储可提供在存储数据时消耗较少资源的改 善的分布式系统。
[0064] 虽然说明为包含有限数目个备份,但在不脱离本发明的情况下,实例虚拟 机数据(270)可包含任何数目个和类型的备份。
[0065] 当产生备份或执行虚拟机的恢复时,远程备份代理可将数据存储在备份存 储装置中或访问备份存储装置中的数据。图3展示根据本发明的一个或多个实 施例的实例备份存储装置(300)的图。
[0066] 在本发明的一个或多个实施例中,实例备份存储装置(300)存储来自远程 代理或其它实体的数据。举例来说,远程代理可将数据发送到实例备份存储装 置(300),以用于存储。在一些状况下,实例备份存储装置(300)可存储从生 产主机获得的数据。类似地,在实例备份存储装置(300)对即时访问虚拟机提 供存储服务的情况下,实例备份存储装置(300)可存储来自自身的数据。在此 等情境中,远程代理可编排过程,即,指导生产主机将数据存储在实例备份存 储装置(300)中。数据可以是(例如)虚拟机数据(例如,270,图2B)。
[0067] 在本发明的一个或多个实施例中,实例备份存储装置(300)向远程备份代 理或其它实体提供先前存储的数据。举例来说,远程备份代理可起始虚拟机的 恢复。远程备份代理可将指令发送到实例备份存储装置(300)或计算装置,其 中将执行虚拟机的恢复以分别提供或获得实例备份存储装置(300)中的数据。 获得的数据可用于执行恢复。
[0068] 在本发明的一个或多个实施例中,实例备份存储装置(300)对即时访问虚 拟机提供存储服务。为了这样做,实例备份存储装置(300)可检索重复数据删 除后的虚拟机数据,再生原始虚拟机数据,和产生虚拟机图像和/或差异磁盘。 虚拟机图像和/或差异磁盘可存储在即时访问存储装置中,且对虚拟机图像和/或 差异磁盘的访问可由远程存储装置管理器(315)提供到对应的即时访问虚拟机, 以下更详细地论述。
[0069] 为了提供前述功能性,实例备份存储装置(300)可包含存储管理器(310)、 远程存储装置管理器(315)和存储由存储管理器(310)和远程存储装置管理 器(315)使用的数据结构的永久性存储装置(320)。
[0070] 在本发明的一个或多个实施例中,存储管理器(310)管理将数据存储在永 久性存储装置(320)中和从永久性存储装置检索数据。换句话说,用于虚拟机 和即时访问虚拟机的虚拟机数据可存储在永久性存储装置(320)中。在本发明 的一个或多个实施例中,存储在永久性存储装置(320)中的虚拟机数据可在存 储前被删除重复数据,例如,重复数据删除后的虚拟机A备份数据(332)和重 复数据删除后的即时访问虚拟机A备份数据(334)。在此情境中,存储管理器 (310)可比较将存储的数据与已存储的数据,且仅存储将存储的数据的独特部 分。独特部分可以是将存储的数据的部分,其并非重复已存储在永久性存储装 置(320)中的数据。举例来说,在将文本文档的第一草稿存储在永久性存储装 置(320)中之后,可对第一草稿作出微小改变。当然后再次将第一草稿存储在 永久性存储装置(320)中时,存储管理器(310)可仅存储第一草稿的改变的 部分。由此,当相比于将数据存储在永久性存储装置(320)中而不执行数据的 重复数据删除时,可在永久性存储装置(320)中存储更多数据。重复数据删除 消耗大量计算资源,包含处理循环、存储器循环和/或存储输入-输出。
[0071] 为了提供前述功能性,存储管理器(310)可执行图4A-4C中所说明的方法 的所有或一部分。
[0072] 在本发明的一个或多个实施例中,存储管理器(310)是包含电路系统的硬 件装置。存储管理器(310)可以是例如数字信号处理器、现场可编程门阵列或 专用集成电路。在不脱离本发明的情况下,存储管理器(310)可为其它类型的 硬件装置。
[0073] 在本发明的一个或多个实施例中,存储管理器(310)被实施为存储在永久 性存储装置上的计算代码,其在由处理器执行时执行存储管理器(310)的功能 性。处理器可以是包含电路系统的硬件处理器,例如,中央处理单元或微控制 器。在不脱离本发明的情况下,处理器可以是用于处理数字信息的其它类型的 硬件装置。
[0074] 在本发明的一个或多个实施例中,远程存储装置管理器(315)编排将对虚 拟机数据的访问提供到即时访问虚拟机。为了这样做,远程存储装置管理器(315)可与在生产主机上执行的远程存储装置客户端协调以确保对所述数据的 及时访问。当对对虚拟机数据的访问的请求由远程存储装置管理器(315)接收 到时,所述远程存储装置管理器(315)可请求由存储管理器(310)从存储在 永久性存储装置(320)中的重复数据删除后的数据检索虚拟机数据。一旦检索, 远程存储装置管理器(315)即可再生虚拟机数据,且合并所述数据以获得即时 访问虚拟机的虚拟机图像。虚拟机图像和用于即时访问虚拟机的差异磁盘可存 储在永久性存储装置(320)中。
[0075] 在本发明的一个或多个实施例中,远程存储装置管理器(315)是包含电路 系统的硬件装置。远程存储装置管理器(315)可以是例如数字信号处理器、现 场可编程门阵列或专用集成电路。在不脱离本发明的情况下,远程存储装置管 理器(315)可为其它类型的硬件装置。
[0076] 在本发明的一个或多个实施例中,远程存储装置管理器(315)被实施为存 储在永久性存储装置上的计算代码,其在由处理器执行时执行远程存储装置管 理器(315)的功能性。处理器可以是包含电路系统的硬件处理器,例如,中央 处理单元或微控制器。在不脱离本发明的情况下,处理器可以是用于处理数字 信息的其它类型的硬件装置。
[0077] 在本发明的一个或多个实施例中,永久性存储装置(320)是存储数据结构 的存储装置。永久性存储装置(320)可以是物理或虚拟装置。举例来说,永久 性存储装置(320)可包含固态驱动器、固态驱动器、磁带机和其它组件以提供 数据存储功能性。替代地,永久性存储装置(320)可以是利用其它组件的物理 计算资源的虚拟装置,以提供数据存储功能性。
[0078] 在本发明的一个或多个实施例中,永久性存储装置(320)存储重复数据删 除后的虚拟机备份数据(330)和即时访问虚拟机数据(340)。重复数据删除后 的虚拟机备份数据(330)可包含与由生产主机托管的虚拟机相关联的数据(例 如,332A、332N),和/或与由将实例备份存储装置(300)用于数据存储服务的 生产主机托管的虚拟机相关联的数据(例如,334A、334N)。即时访问虚拟机 数据(340)可包含由任何数目个即时访问虚拟机利用的即时访问数据(例如, 340A、340N)。即时访问虚拟机数据(340)可反映重复数据删除后的即时访问 虚拟机备份数据(334A、334N)。因此,在本发明的一个或多个实施例中,实 例备份存储装置存储用于即时访问虚拟机的备份数据的重复数据删除后的复本 和用于即时访问虚拟机的虚拟机数据。
[0079] 虽然单独地说明实例备份存储装置(300),但在不脱离本发明的情况下, 多个备份存储装置可合作以对虚拟机提供服务。举例来说,在一些情境中,多 个备份存储装置可各自包括用于虚拟机的备份数据。即时访问虚拟机中的任一 个可对即时访问虚拟机提供存储资源。备份存储装置或图1的系统的另一实体 可选择备份存储装置用于存储资源的提供。这样做可使系统能够负载平衡,从 而将存储资源提供到多个即时访问虚拟机。
[0080] 另外,虽然关于提供对备份数据的访问来论述,但在不脱离本发明的情况 下,实例备份存储装置(300)可针对其它类型的数据提供存储服务。举例来说, 实例备份存储装置(300)可存储多个实体需要访问的介质文件。多个实体中的 每一个可执行不同操作系统。通过提供对存储在实例备份存储装置(300)中的 数据的访问,实例备份存储装置(300)可使实体能够访问数据,而不管实体与 实例备份存储装置(300)是否在运行相同操作系统。因此,本发明的实施例可 提供针对任何数目个和类型的实体数据恢复的操作系统不可知方法。
[0081] 如上所论述,图1的系统的组件可执行用于存储虚拟机的备份和恢复虚拟 机的方法,外加其它功能。图4A-4C展示根据本发明的一个或多个实施例的可 由图1的系统的组件执行的方法。
[0082] 图4A展示根据本发明的一个或多个实施例的方法的流程图。根据本发明 的一个或多个实施例,图4A中描绘的方法可用以恢复虚拟机。图4A中展示的 方法可由例如远程代理(例如,110,图1)执行。在不脱离本发明的情况下, 图1中所说明的系统的其它组件可执行图4A的方法的全部或一部分。
[0083] 在步骤400中,获得对虚拟机的即时访问请求。
[0084] 在本发明的一个或多个实施例中,即时访问请求可从接收自客户端的消息 获得。在不脱离本发明的情况下,即时访问请求可从其它实体获得。
[0085] 在本发明的一个或多个实施例中,通过识别虚拟机的故障来获得即时访问 请求。响应于故障,远程代理可处理所述故障,作为即时访问请求。
[0086] 在本发明的一个或多个实施例中,即时访问请求为对虚拟机的恢复的请求。 可基于即时访问请求中包含的识别符或其它指示符从其它虚拟机即时访问请求 辨别出所述即时访问请求。
[0087] 在步骤402中,使用与虚拟机相关联的虚拟机数据在备份存储装置中产生 即时访问虚拟机数据。
[0088] 在本发明的一个或多个实施例中,即时访问虚拟机数据是经由图4B中说 明的方法产生。在不脱离本发明的情况下,可经由其它方法产生即时访问虚拟 机数据。
[0089] 在本发明的一个或多个实施例中,产生即时访问虚拟机数据包含在过去的 时间点产生虚拟机的图像。过去的时间点可基于虚拟机数据。虚拟机数据可存 储在备份存储装置中。虚拟机数据可对照存储在备份存储装置中的其它数据删 除重复数据。
[0090] 在步骤404中,产生的即时访问虚拟机数据在本地安装。
[0091] 在本发明的一个或多个实施例中,产生的即时访问虚拟机数据在本地安装 于将托管恢复的虚拟机的生产主机中。生产主机可通过用于虚拟机的恢复策略 指定。恢复策略可指定目标恢复位置。
[0092] 在本发明的一个或多个实施例中,本地安装产生的即时访问虚拟机数据给 由生产主机托管的应用程序提供对产生的即时访问虚拟机数据的原生访问。本 地安装可提供对备份存储装置的存储资源的访问,所述存储资源包含产生的即 时访问虚拟机数据和用于恢复的虚拟机的差异磁盘。在不脱离本发明的情况下, 本地安装可提供对存储在备份存储装置中的额外、不同和/或更少数据结构的原 生访问。在本发明的一个或多个实施例中,本地安装给虚拟机或其它在生产主 机上执行的实体提供对备份存储装置的存储资源的部分的读写访问。
[0093] 在步骤406中,使用即时访问虚拟机数据将虚拟机在本地实例化。
[0094] 在本发明的一个或多个实施例中,在生产主机中将虚拟机在本地实例化。 生产主机可通过与虚拟机相关联的恢复策略指定。
[0095] 在本发明的一个或多个实施例中,虚拟机在本地实例化,虚拟机将虚拟机 的执行组件装载到生产主机的存储器内。
[0096] 在步骤408中,使用即时访问虚拟机数据执行实例化的虚拟机以获得恢复 的虚拟机。
[0097] 在本发明的一个或多个实施例中,通过在步骤406中装载到存储器内的执 行组件中的全部或一部分的起始的执行,执行即时访问虚拟机。
[0098] 在本发明的一个或多个实施例中,在恢复虚拟机后,将写入到恢复的虚拟 机的数据存储在备份存储装置的差异磁盘中。写入的数据可在传送到差异磁盘 前临时存储在托管恢复的虚拟机的生产主机的本地高速缓冲存储器中。
[0099] 在本发明的一个或多个实施例中,将写入的数据流式传输到本地高速缓冲 存储器。当预定量的数据在本地高速缓冲存储器中时,将所述预定量的数据传 送到备份存储装置且存储在差异磁盘中。将数据存储在差异磁盘中可包含存储 写入作为差异,即,随着时间的流逝对数据的改变,如与在特定时间点的数据 的状态相对。
[0100] 所述方法可在步骤408后结束。
[0101] 图4B展示根据本发明的一个或多个实施例的方法的流程图。图4B中描绘 的方法可用以根据本发明的一个或多个实施例产生即时访问虚拟机数据。在图 4B中展示的方法可由例如远程代理(例如,110,图1)执行。在不脱离本发明 的情况下,图1中所说明的系统的其它组件可执行图4B的方法的全部或一部 分。
[0102] 在步骤410中,识别与虚拟机相关联的重复数据删除后的虚拟机数据。可 通过将虚拟机的识别符发送到存储重复数据删除后的虚拟机数据的备份存储装 置来识别重复数据删除后的虚拟机数据。可基于存储在备份存储装置中的在虚 拟机与重复数据删除后的虚拟机数据之间的关联来识别重复数据删除后的虚拟 机数据。
[0103] 在步骤412中,再生重复数据删除后的虚拟机数据所基于的虚拟机数据。
[0104] 在本发明的一个或多个实施例中,再生虚拟机数据包含获得存储在备份存 储装置中的虚拟机数据的所有独特部分,且将其组合以获得虚拟机数据。备份 存储装置可包含指定再生虚拟机数据所需的存储在备份存储装置中的所有独特 部分的配方或其它数据结构。所述配方还可指定组合独特部分以获得虚拟机数 据的次序。在不脱离本发明的情况下,可使用其它方法再生虚拟机数据。
[0105] 在本发明的一个或多个实施例中,通过将对虚拟机数据的再生的请求发送 到存储重复数据删除后的虚拟机数据的备份存储装置来再生虚拟机数据。备份 存储装置可响应于请求执行再生。
[0106] 在步骤414中,将再生的虚拟机数据存储在即时访问存储装置中。
[0107] 在本发明的一个或多个实施例中,即时访问存储装置为备份存储装置的永 久性存储装置。
[0108] 在本发明的一个或多个实施例中,再生的虚拟机数据包含虚拟机图像。虚 拟机图像可反映在所要的时间点的虚拟机的状态,以用于恢复目的。
[0109] 在本发明的一个或多个实施例中,虚拟机图像是通过合并存储在虚拟机数 据中的虚拟机的一个或多个备份来产生。合并可将由虚拟机数据的一个或多个 差异磁盘和/或日志备份指定的改变应用到虚拟机数据的虚拟机图像。这样做可 产生反映在所要的时间点的虚拟机的状态的虚拟机图像。
[0110] 在步骤416中,在即时访问存储装置中产生与再生的虚拟机数据相关联的 差异磁盘。
[0111] 在本发明的一个或多个实施例中,差异磁盘可为用于将改变(例如,写入 或删除)存储到虚拟机数据的虚拟机图像的数据结构。
[0112] 所述方法可在步骤416后结束。
[0113] 图4C展示根据本发明的一个或多个实施例的方法的流程图。根据本发明 的一个或多个实施例,图4C中描绘的方法可用以对即时访问虚拟机提供存储 服务。图4C中展示的方法可由例如备份存储装置(例如,120,图1)执行。 在不脱离本发明的情况下,图1中所说明的系统的其它组件可执行图4C的方 法的全部或一部分。
[0114] 在步骤430中,获得对重复数据删除后的虚拟机数据的即时访问请求。
[0115] 所述即时访问请求可从客户端、远程代理或图1的另一实体获得。
[0116] 在步骤432中,再生重复数据删除后的虚拟机数据所基于的虚拟机数据。 可以类似于图4B的步骤412的方式的方式再生虚拟机数据,例外的是,备份 存储装置可执行再生而非将请求发送到另一实体。
[0117] 在步骤434中,使用再生的虚拟机数据产生虚拟机图像。
[0118] 在本发明的一个或多个实施例中,通过将虚拟机数据的一个或多个差异磁 盘和/或日志备份与虚拟机数据的虚拟机图像合并来产生虚拟机图像,类似于图 4B的步骤414的描述。
[0119] 在步骤436中,产生与虚拟机图像相关联的差异磁盘。
[0120] 在本发明的一个或多个实施例中,本地存储差异磁盘。
[0121] 在步骤438中,将对虚拟机图像和差异磁盘的即时访问提供到生产主机上 的恢复的虚拟机。
[0122] 在本发明的一个或多个实施例中,通过允许生产主机安装包含虚拟机图像 和差异磁盘的备份存储装置的存储资源来提供即时访问。
[0123] 所述方法可在步骤438后结束。
[0124] 在步骤438后,恢复的虚拟机可将数据直接写入到备份存储装置,以用于 存储目的。类似地,恢复的虚拟机可从备份存储装置直接读取数据,以用于访 问目的。
[0125] 虽然图4A-4C中说明的方法被说明为步骤列表,但在不脱离本发明的情况 下,所述步骤可以不同次序执行,可省略步骤,和可并行地或以部分重叠方式 执行任何数目个步骤。
[0126] 为了进一步澄清本发明的实施例,在图5A-5C中提供非限制性实例。
[0127] 实例
[0128] 考虑图5A中说明的生产主机(500)托管两个虚拟机(502、504)的情境。 为了数据完整性目的,用于虚拟机(502、504)中的每一个的重复数据删除后 的虚拟机备份数据(512、514)可存储在备份存储装置(510)中。
[0129] 备份存储装置(510)还可包含用于由生产主机(500)托管的第三虚拟机 (未展示)的重复数据删除后的虚拟机备份数据(516)。第三虚拟机可出乎意料 地已终止。
[0130] 为了恢复到客户端的由第三虚拟机提供的服务,远程代理(未展示)或图 1的其它实体可起始作为即时访问虚拟机的第三虚拟机的恢复。这样做可减少 恢复虚拟机所需的时间,并且因此,返回对由第三虚拟机提供的服务的访问比 执行传统虚拟机恢复快。
[0131] 为了恢复第三虚拟机作为即时访问虚拟机,备份存储装置(510)产生虚拟 机图像(518)和差异磁盘(520),如在图5B中看出。虚拟机图像(518)和差 异磁盘(520)本地存储在备份存储装置(510)上。
[0132] 在产生虚拟机图像和差异磁盘后,将对前述资源的访问提供到生产主机 (500),且实例化即时访问虚拟机(506),如在图5C中所展示。使用存储在备 份存储装置中的虚拟机图像和差异磁盘在生产主机(500)上恢复即时访问虚拟 机(506)。通过这样做,比通过用于执行恢复的常规方法将可能的速度快地获 得充当第三虚拟机的恢复的即时访问虚拟机C(506)。
[0133] 实例的结尾
[0134] 如上所论述,本发明的实施例可使用计算装置实施。图6展示根据本发明 的一个或多个实施例的计算装置的图。计算装置(600)可包含一个或多个电脑 处理器(602)、非永久性存储装置(604)(例如,易失性存储器,例如随机存 取存储器(RAM)、高速缓冲存储器)、永久性存储装置(606)(例如,硬盘、 例如压缩光盘驱动器(CD)驱动器或数字通用光盘(DVD)驱动器的光学驱动 器、闪存等)、通信接口(612)(例如,蓝牙接口、红外线接口、网络接口、光 接口等)、输入装置(610)、输出装置(608)和众多其它元件(未展示)和功 能性。以下描述这些组件中的每一个。
[0135] 在本发明的一个实施例中,计算机处理器(602)可为用于处理指令的集成 电路。举例来说,计算机处理器可为处理器的一个或多个核心或微核心。计算 装置(600)还可包含一个或多个输入装置(610),例如,触摸屏键盘鼠标、 麦克、触控板、电子笔或任何其他类型的输入装置。另外,通信接口(612) 可包含集成电路,其用于将计算装置(600)连接到网络(未展示)(例如,局 域网(LAN)、例如因特网的广域网(WAN)、移动网络或任何其他类型的网络) 和/或连接到另一装置(例如,另一计算装置)。
[0136] 在本发明的一个实施例中,计算装置(600)可包含一个或多个输出装置 (608),例如,屏幕(例如,液晶显示器(LCD)、等离子显示器、触摸屏、阴 极射线管(CRT)监视器、投影仪或其它显示装置)、打印机、外部存储装置或 任何其它输出装置。输出装置中的一个或多个可与输入装置相同或不同。输入 和输出装置可本地或远程连接到计算机处理器(602)、非永久性存储装置(604) 和永久性存储装置(606)。存在许多不同类型的计算装置,且前述输入和输出 装置可采取其它形式。
[0137] 本发明的一或多个实施例可提供恢复虚拟机的改善过程。与依赖于将大量 备份数据传送到生产主机的当代方法相比,本发明的实施例提供执行不依赖于 将备份数据传送到生产主机的恢复的方法。以此方式,执行恢复的在计算上花 费大的部分(包括但不限于合并多个备份和经由网络传送备份)可以由备份存 储装置在本地执行。通过这样做,需要的时间和执行恢复的对应计算成本大体 上减小了。
[0138] 另外,考虑将恢复虚拟机或应用程序的多个复本的情境。本发明的实施例 可通过本地产生虚拟机图像且然后针对每一虚拟机制作多个本地复本来进一步 减少这个程序需要的时间。在生产主机处实例化多个虚拟机可需要极少计算资 源,因为从重复数据删除后的存储装置获得备份数据和合并获得的数据以获得 虚拟机图像的过程仅需要在针对所有实例化的虚拟机的集中式位置处执行一 次。
[0139] 另外,本发明的实施例可提供用于访问存储在备份存储装置中的虚拟机图 像和/或差异磁盘的改善的生产主机访问机制。所述改善的方法可包含在生产主 机本地的逻辑高速缓冲存储器。所述高速缓冲存储器可利用任何下层存储装置 的资源,例如,生产主机的硬盘、固态驱动器或存储器资源(例如,随机存取 存储器)。通过高速缓冲存储逻辑高速缓冲存储器中的虚拟机图像和/或差异磁 盘的部分,可减少访问两者的计算资源成本。通过在将写入的数据发送到备份 存储装置用于存储在差异磁盘前存储写入到逻辑高速缓冲存储器中的虚拟机的 数据,本发明的实施例可提供用于备份存储装置的优化的写入,其在所述写入 中的每一个中包含优选数量的数据。这样做可防止和/或减少由少量数据的间歇 性频繁写入引起的硬盘颠簸。
[0140] 在本发明的一个或多个实施例中,图1的系统使通过同时实例化即时访问 虚拟机的多个个例能够同时恢复多个应用程序。通过这样做,本发明的实施例 可实现利用多个VM用于其执行以同时恢复的多层级的应用程序,例如,网络 服务器、数据库服务器或应用程序服务器。当与虚拟机或应用程序恢复的当代 方法相比时,这样做可显著减少提供此类服务所需的时间。
[0141] 在本发明的一个或多个实施例中,图1的系统提供原生文件传送协议到已 安装备份存储装置或其它装置的存储资源的实体。通过这样做,本发明的实施 例可使运行不同类型的操作系统的不同类型的计算装置能够直接读取其间的数 据和/或在其间写入数据。
[0142] 本发明的实施例还可提供当与当代分布式系统相比时具有改善的数据完整 性的改善的分布式系统。因为在分布式系统中提供的服务对于系统的操作可为 必要的,所以可为重要的是,确保提供所述服务的实体在其终止出乎意料地执 行时尽可能快速地恢复。本发明的实施例提供执行恢复的新方法,其将用于执 行的计算资源的分配从本地改变到跨系统分布。明确地说,通过跨分布式系统 分布提供到虚拟机的存储资源,实施例可显著地减少对于执行或恢复虚拟机所 需的时间,和因此,恢复虚拟机的服务提供所需的时间。
[0143] 上文所论述的问题应理解为由本文中所公开的本发明的实施例所解决的问 题的实例,且本发明不应限于解决相同/类似问题。本发明大体上适用于解决超 出本文中所论述的那些问题的一系列问题。
[0144] 可使用由数据管理装置的一个或多个处理器执行的指令实施本发明的一个 或多个实施例。另外,此类指令可对应于存储于一个或多个非暂时性计算机可 读介质上的计算机可读指令。
[0145] 虽然上文已关于有限数目个实施例描述本发明,但具有本发明权益的所属 领域的技术人员将了解,可设计不脱离如本文中所公开的本发明的范围的其它 实施例。因此,本发明的范围应只受到随附的权利要求书限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈