CN104662522A - 使用存储系统功能性的全虚拟机备份的系统和方法 - Google Patents

使用存储系统功能性的全虚拟机备份的系统和方法 Download PDF

Info

Publication number
CN104662522A
CN104662522A CN201380050816.9A CN201380050816A CN104662522A CN 104662522 A CN104662522 A CN 104662522A CN 201380050816 A CN201380050816 A CN 201380050816A CN 104662522 A CN104662522 A CN 104662522A
Authority
CN
China
Prior art keywords
backup
storage system
request
dish
snapshot
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.)
Granted
Application number
CN201380050816.9A
Other languages
English (en)
Other versions
CN104662522B (zh
Inventor
W.W.苏
邢健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Inc
EMC Corp
Original Assignee
EMC Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US13/631,774 external-priority patent/US9110604B2/en
Priority claimed from US13/631,794 external-priority patent/US9104331B2/en
Application filed by EMC Inc filed Critical EMC Inc
Publication of CN104662522A publication Critical patent/CN104662522A/zh
Application granted granted Critical
Publication of CN104662522B publication Critical patent/CN104662522B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本文描述对于虚拟机全备份的技术。根据一个实施例,响应于备份客户端的虚拟机(VM)的请求,发出VM备份的请求。VM的一致状态然后经由VM应用程序接口(VM API)识别。随后将请求发送到与客户端关联的存储系统来要求到目标备份存储系统的与VM的一致状态关联的VM盘图像。

Description

使用存储系统功能性的全虚拟机备份的系统和方法
技术领域
本发明的实施例大体上涉及数据存储系统。更特定地,本发明的实施例涉及虚拟机(VM)备份。
背景技术
组织越来越多地在虚拟机(VM)上部署应用来提高信息技术(IT)效率和应用可用性。采用虚拟机的关键益处是它们可以托管在较小数量的物理服务器(VM服务器)上。这导致更高服务器利用但也意味着存在更少的服务器资源可用于执行备份和/或恢复。该问题因在数据和应用中有增无减的增长而更糟,这使得曾经更难以在可用时间窗口内完成备份和/或恢复。
在VM环境中备份和恢复的一个方法是处理每个VM,好像它是物理机一样。这典型地意指在每个VM中安装和运行备份代理。该方法是服务器资源密集型的并且从管理角度来看随着虚拟机数量增加而变得不实用。
另一个方法是通过制作包含VM的存储容器的副本而在存储级备份VM。然而,准确地识别包含VM的存储容器并且使它们处于一致状态是富有挑战的。
另一个方法是在VM级备份。例如VMware等虚拟化供应商对备份应用提供应用编程接口(API)集。可使用VM API(例如VMware数据保护vStorage API(VADP))来将数据从虚拟基础设施提出并且放到备份系统上。这典型地需要通过代理服务器路由数据并且消耗宝贵的IT资源。
在增量备份时,备份软件可遍历文件系统并且找到文件中已经变化的那个。然而,遍历文件系统缓慢并且是资源密集型的。增量备份的另一个常规方法使用由虚拟机监测器或管理器提供的变化块训练(CBT)特征以保持对自上次更新以来变化的数据块的跟踪。然而,CBT特征对VM的操作施加开销,并且可未跟踪跨意外系统关闭的变化。此外,不是所有的虚拟化供应商都提供CBT特征,这限制了该方法的有效使用。
附图说明
本发明的实施例在附图的图中通过示例而非限制的方式图示,其中类似的标号指示相似的元件。
图1是图示根据本发明的一个实施例的全备份过程的框图。
图2是图示根据本发明的一个实施例的全备份过程的另一个框图。
图3是图示根据本发明的一个实施例的备份方法的流程图。
图4是图示根据本发明的一个实施例的备份方法的另一个流程图。
图5是图示根据本发明的一个实施例的恢复过程的框图。
图6是图示根据本发明的一个实施例的恢复方法的流程图。
图7是图示根据本发明的一个实施例的增量VM备份过程的框图。
图8是图示根据本发明的一个实施例的增量VM备份方法的流程图。
图9是图示根据本发明的一个实施例的增量VM备份方法的流程图。
图10是图示根据本发明的一个实施例的片段存储引擎的框图。
具体实施方式
本发明的各种实施例和方面将参考下文论述的细节描述,并且附图将图示各种实施例。下列描述和图说明本发明并且不解释为限制本发明。描述许多具体细节来提供对本发明的各种实施例的全面理解。然而,在某些实例中,未描述众所周知或常规细节以便提供本发明的实施例的简洁论述。
在说明书中对“一个实施例”或“实施例”的引用意指结合实施例描述的特定特征、结构或特性可以包括在本发明的至少一个实施例中。短语“在一个实施例中”在该说明书中各种地方的出现不一定都指相同的实施例。
根据一些实施例,客户端具有一个或多个虚拟机监测器或管理器(VMM),并且每个托管一个或多个VM。在该说明书中,术语“VM监测器”和“VM管理器”能互换地使用。客户端具有与它关联的存储系统来存储数据,并且客户端还包含VM应用编程接口(VM API),经由其来管理VM。VM API的示例是VMware数据保护vStorage API(VADP)。用于备份VM的请求从备份应用服务器发送到客户端。通过VM API,托管VM的VMM建立VM的一致状态。在一个实施例中,这牵涉获取VM的快照,这促使VM静默并且获取与VM关联的盘的快照。备份应用服务器然后经由VM API识别盘快照。在识别盘快照后,备份应用服务器通知包含识别盘快照的存储系统将快照复制到目标备份存储系统。存储系统然后将识别的盘快照复制到目标备份存储系统。最后,备份应用服务器使用VM API来要求VMM删除获取的VM快照,这促使删除对应盘快照。
根据另一个实施例,虚拟中心(VC)管理多个客户端。每个客户端包含一个或多个VM,并且每个客户端访问存储系统。该存储系统将VM的内容文件存储在存储系统的盘中。在一个实施例中,VC存储与VM关联的属性列表并且该属性列表存储为VM配置信息文件。备份应用服务器可将备份VM的备份请求发送到VC。VC然后远程(例如,通过例如因特网等网络)请求托管VM的VMM建立VM的一致状态。之后,备份过程与将请求直接发送到VMM的实施例相似。
在一个实施例中,复制的盘快照在目标备份存储系统中解析。解释盘快照中的元数据来确定关于盘快照中包含的文件的信息。这样的信息包括例如文件名、访问控制信息和关于文件在盘快照内的布局的信息等文件属性。这样的信息然后用于将文件的备份目录填充在备份VM中。复制的盘快照可进一步被去除重复并且作为去除重复片段存储在备份存储系统中。
根据一些实施例,VM可以从目标备份存储系统恢复。备份应用服务器通过备份目录来识别与VM的备份关联的盘快照。在一个实施例中,备份应用服务器然后经由VM API远程请求VMM预备新的VM以成为恢复目标。在一个实施例中,预备新的VM以成为恢复目标包括识别与VM的备份关联的属性列表并且使用识别的属性列表来预备新的VM。在预备新的VM后,备份应用服务器经由VM API将识别的盘快照从目标备份存储系统发送到存储系统。复制的盘快照经由VM API添加到新进预备的VM。然后恢复该VM。
根据一些实施例,用户还可利用备份应用服务器用于VM的增量备份。在一个实施例中,用于增量备份VM的请求从备份应用服务器发送到托管VM的客户端的VMM。备份应用服务器然后通过VM API远程获取VM的快照。这包括使VM静默并且获取VM快照,其促使获取与VM关联的盘快照。备份应用服务器通知包含识别的盘快照的存储系统将识别的盘快照复制到目标备份存储系统。存储系统然后例如通过将VM的盘快照和与相同VM的之前备份关联的盘快照比较来识别自上次备份以来发生的变化。在一个实施例中,存储系统仅将快照之间的变化发送到备份存储系统,而不必传送整个盘快照。
图1是图示根据本发明的一个实施例的备份过程的框图。参考图1,系统100包括但不限于,一个或多个客户端系统101-102,其通过网络103通信地耦合于备份存储系统104、备份应用服务器105和存储系统180。客户端101-102可以是任何类型的客户端,例如服务器、个人计算机(例如,桌上型计算机、膝上型计算机和平板计算机)、“瘦”客户端、个人数字助理(PDA)、Web使能的系统、游戏设备、媒体播放器或移动电话(例如,智能电话)等。网络103可以是任何类型的网络,例如局域网(LAN)、例如因特网等广域网(WAN)、企业内联网、城域网(MAN)、存储区域网(SAN)、总线或其组合,有线和/或无线的。
备份存储系统104可包括任何类型的服务器或服务器群集。例如,备份存储系统104可以是用于各种不同目的中的任一个的存储服务器,例如为了对多个用户提供对共享数据的访问和/或为了备份任务关键数据。备份存储系统104可以是例如文件服务器(例如,用于提供NAS能力的设备)、基于块的存储服务器(例如,用于提供SAN能力)、统一存储设备(例如,结合NAS和SAN能力的设备)、近线存储设备、直接附连存储(DAS)设备、带备份设备或基本上任何其他类型的数据存储设备。备份存储系统104可具有分布式架构,或它的部件中的全部可集成到单个单元内。备份存储系统104可实现为存档和/或备份存储系统的部分,例如从马塞诸塞州霍普金顿的EMC? 公司可获得的去除重复存储系统。
在一个实施例中,备份应用服务器105包括但不限于,备份引擎106,其包含备份目录111。备份应用服务器105与备份存储系统104、存储系统180和客户端101-102配合来运行各种备份操作。备份引擎106可既执行备份又执行恢复功能。
在一个实施例中,备份存储系统104包括但不限于,去除重复存储引擎107,以及通信地耦合于彼此的一个或多个存储单元108-109。存储单元108-109可经由互连120而本地(例如,单节点操作环境)或远程(例如,多节点操作环境)实现,该互连120可以是总线和/或网络。在一个实施例中,存储单元108-109中的一个作为主动存储而操作以接收并且存储外部或新鲜的用户数据,而另一存储单元作为目标存储单元操作以根据存档策略或方案将来自主动存储单元的数据定期存档。存储单元108-109可以是例如常规磁盘、光盘(例如基于CD-ROM或DVD的存储)、磁带存储、磁光(MO)存储介质、固态盘、基于闪速存储器的设备或适合于存储大量数据的任何其他类型的非易失性存储设备。存储单元108-109还可以是这样的设备的组合。在盘存储介质的情况下,存储单元108-109可组织成一卷或多卷廉价冗余盘阵列(RAID)。注意在一个实施例中,备份应用服务器105和备份存储系统104集成到一个单系统内。
响应于数据文件要存储在存储单元108-109中,可选的去除重复存储引擎107配置成根据多种分段策略或规则将数据文件分段成多个片段。如果片段之前还未存储在存储单元中,去除重复存储引擎107仅将片段存储在存储单元中。在之前已经存储片段的情况下,元数据存储使用之前存储的片段来实现文件重建的信息。因此,数据文件的片段采用去除重复的方式存储在存储单元108-109中的每个内或跨存储单元108-109中的至少一些而存储。存储在存储单元中的数据可采用压缩形式存储(例如,无损压缩:Huffman编码、Lempel-Ziv Welch编码;delta编码:对片段的引用加上差异;细分段:子分段列表或对子分段的引用,等)。在一个实施例中,不同的存储单元可使用不同的压缩方法(例如,主或主动存储单元与其他存储单元不同、一个存储单与另一个存储单元不同,等)。
元数据可存储在存储单元108-109中的至少一些中,使得可以独立于另一个存储单元来访问文件。每个存储单元的元数据包括足够的信息来提供对它所包含的文件的访问。在主动存储单元失效时,另一个存储单元中包含的元数据可用于恢复主动存储单元。在一个存储单元不可用(例如,存储单元失效,或正在升级,等)时,系统仍然能提供对未存储在失效存储单元中的任何文件的访问。在删除文件时,与系统中的文件关联的元数据被更新来反映已经删除了文件。
在一个实施例中,元数据信息包括文件名、存储与文件名关联的片段所在的存储单元、使用片段对文件的重建信息和任何其他合适的元数据信息。在一个实施例中,对存储在存储单元上的文件将元数据的副本存储在存储单元上使得存储在存储单元上的文件可以仅使用存储在存储单元上的信息来访问。在一个实施例中,在主要元数据丢失、破坏、损坏等情况下,主要元数据信息集可以通过使用与备份存储系统关联的其他存储单元的信息来重建。对于存储单元的元数据可以使用存储在主存储单元或其他存储单元(例如,副本存储单元)上的元数据信息来重建。元数据信息进一步包括索引信息(例如,对于存储单元中片段的位置信息)。
在一个实施例中,如在图1中示出的备份存储系统可用作存储层次(其包括存储的其他层)中的存储层。在该层次中存储的一个或多个层可利用不同种类的存储设备和/或可对于例如随机更新性能等不同特性而优化。文件基于数据管理策略定期在层之间移动来实现对文件的当前存储要求的成本有效匹配。例如,文件可初始存储在这样的存储层中,其对读和写提供高性能。根据本发明的一个实施例,随着文件变旧,它可移入存储层内。在各种实施例中,层包括不同的存储技术(例如,带、硬驱动器、基于半导体的存储器、光驱动器,等)、不同位置(例如,本地计算机存储、局域网存储、远程网络存储、分布式存储、云存储、存档存储、库存储,等)或对于分级数据存储系统的任何其他合适的存储。
返回参考图1,备份引擎106配置成备份来自客户端系统101-102的数据并且将备份数据存储在备份存储系统104的存储单元108中的一个或多个中,其中数据可通过去除重复存储引擎107而去除重复。在该示例中,用户(例如,管理员)直接或通过备份调度发起VM(例如客户端102内的VM 113)的备份请求。用户发出利用VM(VM 113)的识别的请求。
如在图1中示出的,要备份VM 113驻存在客户端102处。客户端102包括由VMM 112托管的一个或多个VM 113-114。VMM 112还包括应用编程接口(API)132,VMM 112通过其来管理VM 113-114。在一个实施例中,API是VM API,例如VMware数据保护vStorage API(VADP)。另外,客户端102与存储系统180通信耦合。
存储系统180可包括任何类型的服务器或服务器群集。例如,存储系统180可以是用于各种不同目的中的任一个的存储服务器,例如为了对多个用户提供对共享数据的访问和/或为了备份任务关键数据。存储系统180可以是例如文件服务器(例如,用于提供NAS能力的设备)、基于块的存储服务器(例如,用于提供SAN能力)、统一存储设备(例如,结合NAS和SAN能力的设备)、近线存储设备、直接附连存储(DAS)设备或基本上任何其他类型的数据存储设备。存储系统180可具有分布式架构,或它的部件中的全部可集成到单个单元内。存储系统180可实现为从马塞诸塞州霍普金顿的EMC? 公司可获得的存储系统的部分。
存储系统180包含备份逻辑184,其既管理备份又恢复存储系统内的过程。存储系统180还包含VM盘文件186,其是VM的内容文件。注意客户端的存储系统也可叫作客户端的主要存储,用于区分存储与备份存储系统。
虚拟机代表具有与之关联的专用虚拟资源集的完全隔离操作环境。虚拟机可作为主机操作系统(OS)或管理程序所托管的客户OS而安装或启动。典型地,主机OS或管理程序代表用于管理托管的虚拟机的虚拟机监测器(VMM)。虚拟机可以是任何类型的虚拟机,例如硬件仿真、完全虚拟化、半虚拟化和操作系统级虚拟化虚拟机。服务器所托管的不同虚拟机可具有相同或不同的特权级用于访问不同的资源。在这里,VMM 112管理VM 113和VM 114两者。
返回参考图1,任务盒1至5图示根据本发明的一个实施例执行操作所采用的顺序。过程以请求备份VM而发起。该请求可基于备份调度来自客户端,或它可通过用户界面直接来自用户。在任务盒1处,备份引擎106向VMM 112发出利用VM标识符(其在该示例中指示VM 113)备份的请求,该VMM 112托管要备份VM 113。在备份应用服务器105知道VM位置信息时,备份引擎106将请求指示给VMM 112。备份应用服务器105可通过各种方式获得VM信息。例如,备份应用服务器105可与VMM 112远程同步。前往任务盒2,VMM 112然后建立VM 113的一致状态。在一个实施例中,VMM 112通过获取VM快照来建立VM 113的一致状态。VM快照在存储系统180中和/或由存储系统180触发与VM(例如,VM盘图像)关联的内容文件的一个或多个快照的创建。这样的快照在该说明书中称为盘快照。在任务盒3中,经由API 132,备份引擎106远程识别VM 113的一致状态,其在一个实施例中包括在存储系统180中创建的盘快照的列表。在任何盒4处,备份引擎106然后请求存储系统180向目标备份存储发送与VM的一致状态关联的VM盘图像。在一个实施例中,VM盘图像是由VMM 112发起的VM快照所产生的盘快照。最后在任务盒5处,备份逻辑184然后识别请求的VM盘图像。在该示例中,它们由VM盘文件186表示。VM盘文件186可采取由VMware提供的虚拟机盘(VMDK)的格式。备份逻辑184将于VM 113关联的VM盘文件186复制到备份存储系统104。在一个实施例中,对于VM 113的盘快照被解析并且解释盘快照中的元数据来确定关于盘快照中所包含的文件的信息。这样的信息包括例如文件名、访问控制信息和关于文件在盘快照内的布局的信息等文件属性。信息然后用于将文件的备份目录111填充在被备份的VM中。盘快照然后作为VM备份文件142保存在存储单元108中。根据一个实施例,备份内容可进一步去除重复成去除重复的片段并且这些去除重复的片段然后存储在备份存储系统的一个或多个物理盘中。在一个实施例中,备份存储系统104远程请求VMM 112删除所获取的VM 113的VM快照,这促使删除VM 113的对应盘快照。注意在一个实施例中,目标备份存储系统可以是代理服务器。在一个实施例中,在存储系统180和备份存储系统104不兼容时利用代理服务器。
在一个实施例中,存储系统180将盘快照分成片段并且在备份存储系统104是去除重复存储系统时仅复制在备份存储系统104中已经不存在的片段。在一个实施例中,片段大小可变并且片段边界由数据内容限定。这样的片段(也称为块)可使用预定分块算法在存储系统180内分段。对于片段中的每个,使用预定哈希函数生成指纹。存储系统180初始将片段的指纹传送到备份存储系统104而不传送实际片段。基于从存储系统180接收的指纹,去除重复存储引擎107可确定片段中的哪些已经存储在存储单元108-109中,例如通过比较从存储系统180接收的指纹和备份存储系统104内本地维持的那些。对于还未存储在存储单元108-109中的那些片段,备份存储系统104将缺失片段的识别信息传送到存储系统180,例如缺失片段的指纹。作为响应,存储系统180基于从备份存储系统104接收的识别信息来识别缺失片段并且仅将缺失片段传送到备份存储系统104。
在一个实施例中,经由API 132,备份引擎106收集与被备份的VM关联的属性(例如,CPU、存储器、盘配置)并且将VM属性存储在备份目录111中。这些属性随后用于使新的VM规定为恢复目标。
图2是图示根据本发明的一个实施例的全备份过程的另一个框图。图2中的系统与图1中的系统相似并且相同或相似的引用指示具有相同或相似功能性的元件或部件。还与图1相似,任务盒1至6图示根据本发明的一个实施例执行操作所采用的顺序。如在图2中示出的,虚拟中心150管理客户端102(在这里驻存要备份VM 113)的VM配置信息。虚拟中心可管理多个客户端的VM配置信息,并且每个客户端包含由其中运行的VMM所管理的一个或多个VM。虚拟中心可与客户端、备份应用服务器和备份存储系统通信耦合。VC 150可通过多种方式获得VM信息。例如,VC 150可在网络内与VMM远程同步,或VMM可每当VM发生状态改变时更新VC 150。在该示例中,虚拟中心150与备份应用服务器105以及客户端101和102通信耦合。备份引擎106向VC 150发出利用VM标识符(其在该示例中指示VM 113)备份的请求。VC 150识别客户端102管理VMM 112,其托管VM 113。然后在任务盒2处,VC 150请求VMM 112建立VM 113的一致状态。任务盒3-6中的下列步骤与任务盒2-5相似,如在图1中图示的。
图3是图示根据本发明的一个实施例的备份方法的流程图。方法300可由备份应用服务器105、更具体地由备份引擎106执行,该备份引擎106可在软件、硬件或其组合中实现为处理逻辑。在框302处,方法由备份应用服务器发出利用规定的请求VM标识符的VM备份请求而开始。在一个实施例中,该请求可在备份应用服务器知道VM位置信息时直接发送到托管VM的VMM。在一个实施例中,请求可在备份应用服务器知道VM位置信息时直接发送到托管VM的VMM。在另一个实施例中,请求可在备份应用服务器不知道VM位置信息时发送到虚拟中心。在后面的情况下,虚拟中心然后定位VM和托管VM的VMM并且请求备份。在一个实施例中,建立一致状态的请求牵涉在VMM处生成VM快照。然后在框304处,备份引擎106经由VM API远程识别VM的一致状态。在框306处,备份引擎106然后请求与VM关联的存储系统将与VM关联的VM盘图像复制到目标备份存储系统。在一个实施例中,请求的VM盘图像是基于由托管被备份VM的VMM所发起的VM快照的盘快照。可选地,在框308处,备份引擎106可解析与请求VM关联的复制VM盘图像来确定关于VM盘图像中所包含的文件的信息。基于解析,备份引擎106使VM盘图像中包含的文件与备份目录中VM的备份关联。备份目录然后可以接着静默用于备份和恢复目的。另外,VM盘图像可进一步去除重复成去除重复的片段并且采用去除重复的方式存储在备份存储系统的存储单元中。注意在一个实施例中,来自存储系统的备份VM盘图像可在它们存储在备份存储系统中之前首先复制到代理服务器。
图4是图示根据本发明的一个实施例的备份方法的另一个流程图。方法400可由存储系统180、更具体地由备份逻辑184执行。在框402处,方法以接收与规定VM关联的用于备份VM盘图像的请求而开始。在一个实施例中,请求VM盘图像是基于由托管被复制VM的VMM所发起的VM快照的盘快照。然后在框404处,识别请求的VM盘图像。在框406处,识别的盘快照然后发送到目标备份存储系统。注意在一些实施例中,识别的VM盘图像可相反发送到代理服务器。在识别盘快照后,可选地在一个实施例中,当VM盘图像是盘快照时,在框408处可擦除盘快照。在一个实施例中,盘快照的擦除通过由备份应用服务器经由VM API远程发起的删除VM快照而触发。注意在目标存储是去除重复备份存储时,存储系统180可将盘快照分成片段并且仅发送目标存储中已经不存在的片段,如上文描述的。在一个实施例中,片段大小可变并且片段边界由数据内容限定。
图5是图示根据本发明的一个实施例的恢复过程的框图。图5中的系统与图1中的系统相似并且相同或相似的引用指示具有相同或相似功能性的元件或部件。还与图1相似,任务盒1至5图示根据本发明的一个实施例执行操作所采用的顺序。在该示例中,在客户端102处请求VM 113恢复。在任务盒1处,备份引擎106接收利用VM识别来恢复的请求,该VM识别指示请求的VM是VM 113。请求可基于用户请求来自客户端,或它可通过用户界面直接来自用户。在任务盒2处,备份引擎106识别与VM的备份关联的VM盘图像。在一个实施例中,与VM的备份关联的VM盘图像是盘快照。在一个实施例中,它可通过备份目录111得到关于VM盘图像的信息。备份目录111包含文件名、访问控制信息和关于文件在特定VM盘图像内的布局的信息。通过备份目录111,备份引擎106识别请求的VM盘图像,其在该示例中是存储在存储单元108中的VM备份文件142。然后在任务盒3处,备份引擎106请求VMM 112(在这里将托管VM 113)经由API 132创建要成为恢复目标的新的VM。在一个实施例中,存储在备份目录111中的VM属性发送到VMM 112。VMM 112然后创建VM并且使用由备份引擎106发送的VM属性来预备VM。在任务盒4处,备份引擎106请求备份存储系统104将与VM 113(其作为VM备份文件142存储在备份存储系统104中)关联的VM盘图像复制到存储系统180。在存储系统180中,VM盘图像然后将与新的预备VM关联。注意在一个实施例中,存储系统180是去除重复存储系统。在该情况下,备份存储系统104将保存的VM盘图像(在示例中,VM备份文件142)分成片段并且仅发送在存储系统180中已经不存在的片段。过程中的最后的步骤是任务盒5,其中复制过来的VM盘图像然后与新进规定的VM 113关联。
本发明的实施例还可用于在备份VM内恢复文件。图6是图示根据本发明的一个实施例的恢复方法的流程图。方法600可由备份应用服务器105、更具体地由备份引擎106执行。在框602处,在备份应用服务器处接收在VM内恢复文件的请求,并且备份应用服务器与包含文件备份的备份存储系统通信耦合。请求可基于用户请求来自客户端,或它可通过用户界面直接来自用户。备份应用服务器的备份引擎然后通过备份目录识别VM盘图像,其包含与请求文件关联的请求文件或去除重复片段。在一个实施例中,VM盘图像是与VM关联的盘快照。盘快照可作为VM备份文件142的部分存储在备份存储系统的存储单元(例如存储单元108)中,如在图5中示出的。在框606处,备份引擎然后通过备份目录或其他元数据(例如去除重复片段的指纹)来确定请求文件的布局。在框608处,识别的文件然后复制到与请求客户端关联的存储系统。在一个实施例中,基于请求文件的布局,文件在备份存储系统处重建并且然后发送到存储系统。在存储系统处,文件然后复制到规定位置并且请求恢复的VM然后将能够访问文件。在去除重复存储系统中,文件可由去除重复存储引擎107使用元数据(例如指纹)从去除重复片段重建。备选地,元数据可传送到存储系统180并且文件由存储系统180基于元数据位重建。如果存储系统180是去除重复的存储系统,仅存储系统180中不存在的片段可从备份存储系统104传送。
根据一个实施例,存储系统执行被识别VM盘图像和与VM之前的快照关联的对应VM盘图像的比较(例如,“diff”操作)来确定自上次备份以来的变化(例如,VM盘图像与上次备份之间的delta)。在一个实施例中,VM盘图像是盘快照。在另一个实施例中,存储系统跟踪自获取上次盘快照以来盘的变化并且通过使用该跟踪信息来确定自上次备份以来的变化。
自上次备份以来的变化被复制到备份存储系统用于备份。在一个实施例中,备份存储系统在备份存储系统中创建之前的全备份的副本并且将复制的改变应用于之前的全备份的副本来获得合成全备份。在另一个实施例中,存储系统将自上次备份以来的变化连同配方一起发送到备份存储系统以使备份存储系统能够基于之前的全备份的内容来创建合成全备份。
图7是图示根据本发明的一个实施例的增量VM备份过程的框图。图7中的系统与图1中的系统相似并且相同或相似的引用指示具有相同或相似功能性的元件。还与图1相似,任务盒1至6图示根据本发明的一个实施例执行操作所采用的顺序。过程以在任务盒1处的VM增量备份的请求而开始。请求可基于用户请求来自客户端,或它可通过用户界面直接来自用户。在任务盒1处,备份引擎106向VMM 112发出利用VM标识符(其在该示例中是VM 113)对VM配置信息的请求,该VMM 112在客户端102处托管VM 113。注意在备份应用服务器105不清楚VM位置时,它可将增量VM备份请求发送到虚拟中心105,其管理网络的客户端,相似地如在图2中示出的。然后在任务盒2处,VMM建立VM 113的一致状态。VM 113的一致状态可通过获取VM快照通过VM API 132建立。VM快照可导致在存储系统180中和/或由存储系统180创建一个或多个盘快照。前往任务盒3,备份应用服务器105然后经由API 132识别VM一致状态。备份应用服务器105然后在任务盒4处利用规定的一致VM状态信息将对增量备份的请求发送到存储系统180。
在任务盒5处,识别与VM关联的VM盘图像。在一个实施例中,VM盘图像是基于由VMM 112获取的VM快照的盘快照。备份逻辑184识别与VM关联的VM盘图像,并且它们由VM盘文件186表示。VM盘文件186可采取由VMware所提供的虚拟机盘(VMDK)的格式。对于每个识别的VM盘图像,盘变化跟踪器788确定自上次备份以来的变化。在一个实施例中,盘变化跟踪器788进行被识别盘快照和与VM之前的快照关联的对应盘快照的比较(例如,“diff”操作)来确定自上次备份以来的变化。在另一个实施例中,盘变化跟踪器788跟踪自获取上次盘快照以来盘的改变并且通过使用该跟踪信息来确定自上次备份以来的变化。在任务盒6处,识别的VM盘图像的改变被备份到备份存储系统104。在一些实施例中,当VM盘图像是基于VM快照的盘快照时,在完成备份后,可选地备份应用服务器105向VMM 112发送删除获取的VM快照的请求并且促使存储系统180删除对应的盘快照。注意在一个实施例中,VMM可保持对关联存储系统内的盘变化的跟踪。在示例中,VMM 112可保持对存储系统180内的盘变化的跟踪。
图8是图示根据本发明的一个实施例对于增量VM备份的方法的流程图。方法800可由图1的备份引擎106执行,该备份引擎106可在软件、硬件或其组合中实现为处理逻辑。参考图8,在框802处,备份应用服务器的备份引擎在备份存储系统处接收对VM的增量备份的请求。在框804处,备份引擎然后发送建立VM的一致状态的请求。在一个实施例中,请求可直接发送到托管VM的VMM。在另一个实施例中,请求可利用网络发送到管理客户端的虚拟中心,其中虚拟中心包含VM位置信息。VM一致状态可通过获取VM快照由托管VMM建立。VM快照可在与管理VM的客户端关联的存储系统处导致与VM关联的盘快照。一旦建立VM一致状态,在框806处,备份应用服务器可经由VM API来远程识别VM的一致状态。然后备份引擎请求存储系统将与VM关联的增量VM盘图像复制到目标备份存储系统。
图9是图示根据本发明的一个实施例对于增量VM备份的方法的流程图。方法900可由图7的存储系统108执行。在框902处,方法以在存储系统处接收利用VM的已知一致状态信息来增量备份VM的请求而开始。如在图7中示出的,VM的已知一致状态信息可从备份应用服务器(像备份应用服务器105)接收。在一个实施例中,VM的已知一致状态信息是由VM快照产生的VM盘快照。在框904处识别已经从已知盘状态改变的一个或多个VM盘图像。随后,在框906处,方法确定VM盘图像从已知盘状态的改变。在一个实施例中,盘变化跟踪器788可执行框906和808的操作。在另一个实施例中,盘变化跟踪器788与备份逻辑184集成,并且备份逻辑184执行两个操作。在一个实施例中,VM盘图像是盘快照,并且盘快照的变换可通过被识别盘快照和与VM之前的快照关联的对应盘快照的比较(例如,“diff”操作)来确定。在另一个实施例中,盘快照的变化由盘变化跟踪器788或备份逻辑184跟踪。在框908处,VM盘图像的变化然后被备份到目标备份存储系统。注意即使在图7的实施例中,盘变化跟踪器788图示为在存储系统内实现,盘变化跟踪器可在客户端处实现,并且它可与管理VM的VMM关联。VMM可保持对关联存储系统的盘变化的跟踪。在盘快照的变化被备份后,可选地,在框910处,当VM盘图像在一个实施例中是盘快照时,备份存储系统可经由VM API远程删除获取的VM快照,并且删除导致盘快照被擦除。
图10是图示根据本发明的一个实施例的片段存储引擎的框图。例如,去除重复存储引擎1000可如上文描述的那样实现为去除重复存储系统的部分,例如图1的去除重复存储引擎107。参考图10,在一个实施例中,去除重复存储引擎1000包括文件服务接口1002、分段器1004、复制消除器1006、文件系统控制1008和存储单元接口1012。去除重复存储引擎1000经由文件服务接口1002接收文件或多个文件(或一个或多个数据项),该文件服务接口1002可以是与接触复制存储引擎1000关联的文件系统的文件系统命名空间的部分。文件系统命名空间指识别文件并且在系统中组织文件的方式。示例是分层次地将文件组织到目录或文件夹内。文件服务接口1002支持多种协议,其包括网络文件系统(NFS)、通用因特网文件系统(CIFS)和虚拟磁带库接口(VTL),等。
一个或多个文件由分段器1004和文件系统控制1008处理。分段器1004基于多种规则或考量将一个或多个文件分成长度可变的片段。例如,一个或多个文件可通过使用基于内容的技术(例如,计算文件的各种位置处的函数,这时该函数等于值或该值是相对于对文件计算的其他函数值是最小、最大或其他值)、基于非内容的技术(例如,基于片段的大小)或任何其他合适的技术来识别片段边界而分成片段。在一个实施例中,片段局限于最小和/或最大长度、每文件最小或最大数量的片段或任何其他合适的限制。
在一个实施例中,文件系统控制1008处理信息来指示与文件关联的一个或多个片段。在一些实施例中,指纹列表用于指示与文件关联的一个或多个片段。文件系统控制1008将片段关联信息(例如,代表性数据(例如指纹))传递到索引(未示出)。该索引用于经由存储单元接口1012定位存储单元1010中的存储片段。复制消除器1006识别新近接收的片段是否已经存储在存储单元1010中。在片段已经存储在一个或多个存储单元中的情况下,将对之前存储的片段的引用存储在例如与文件关联的片段树中,来代替存储新近接收的片段。文件的片段树可包括一个或多个节点并且每个节点代表或引用组成文件的存储单元1010中所存储的去除重复片段中的一个。片段然后由容器管理器(未示出)装入存储单元1010中所存储的一个或多个存储容器内。去除重复片段可在存储之前使用压缩算法(例如,Lempel-Ziv算法)的变化形式进一步压缩。
当要检索文件时,文件服务接口1002配置成与文件系统控制1008通信以经由存储单元接口1012识别存储在存储单元1010中的合适的片段。存储单元接口1012可实现为容器管理器的部分。文件系统控制1008与索引(未示出)通信以经由存储单元接口1012定位存储单元中存储的合适的片段。合适的片段经由容器管理器从关联的容器检索并且用于构造请求文件。响应于请求经由接口1002提供文件。在一个实施例中,文件系统控制1008利用基于内容的标识符(例如,指纹)的树来使文件与数据片段以及它们在一个或多个存储单元中的位置关联。在与指定文件关联的片段或文件变化的情况下,因为合适的基于内容的标识符使用树结构而容易识别,基于内容的标识符将改变并且这些改变将有效地从与文件关联的树的底部波及到顶部。
前面的详细描述的一些部分已经从对计算机存储器内的数据位的操作的算法和符号表示方面呈现。这些算法描述和表示是数据处理领域内的技术人员最有效地向本领域内其他技术人员传达他们的工作实质所使用的方式。算法在这里并且一般设想为导致期望结果的操作的自洽顺序。这些操作是需要物理操纵物理量的那些。
然而,应该牢记所有这些和相似的术语要与适当的物理量关联并且仅仅是应用于这些量的方便标签。除非另外具体阐述(如从上文论述而显而易见的),意识到在整个描述中,利用例如在下文的权利要求中阐述的那些等术语的论述指计算机系统或相似的电子计算设备的行为和进程,其操纵表示为计算机系统的寄存器和存储器内的物理(电子)量的数据并且将其转换为相似地表示为计算机系统存储器或寄存器或其他这样的信息存储、传输或显示设备内的物理量的其他数据。
本发明的实施例还涉及用于执行本文的操作的装置。这样的计算机程序存储在非暂时性计算机可读介质。机器可读介质包括用于采用机器(例如,计算机)可读形式存储信息的任何机构。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪速存储器设备)。
在前面的图中描绘的过程或方法可由处理逻辑执行,其包括硬件(例如,电路、专用逻辑,等)、软件(例如,包含在非暂时性计算机可读介质上)或其组合。尽管过程或方法在上文从一些顺序操作方面描述,应意识到描述的操作中的一些可采用不同顺序执行。此外,一些操作可并行而不是相继执行。
本发明的实施例未参考任何特定编程语言描述。将意识到多种编程语言可用于实现如本文描述的本发明的实施例的教导。
在前面的说明书中,本发明的实施例已经参考其具体示范性实施例描述。可对其做出各种修改而不偏离如在接着的权利要求中阐述的本发明的更广泛精神和范围,这将是明显的。因此,说明书和图在说明性而非限制性意义上来看待。
权利要求书(按照条约第19条的修改)
1.一种在备份应用服务器上实现的计算机实现的方法,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM,所述方法包括:
响应于在所述备份应用服务器处备份虚拟机(VM)的请求而发送VM备份的请求;
经由与所述VM关联的VM应用程序接口(VM API)来远程识别所述VM的一致状态;以及
请求与所述客户端关联的存储系统向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
2.如权利要求1所述的方法,其中所述VM备份的请求发送到托管所述VM的VMM和管理所述VM的虚拟中心(VC)中的一个,并且其中所述VM备份的请求是全VM备份和增量VM备份中的一个。
3.如权利要求1或2所述的方法,其中所述VM的一致状态基于由所述VMM捕捉的VM快照而生成。
4.如权利要求1所述的方法,其中所述存储系统响应于从所述备份应用服务器接收请求而向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
5.如权利要求4所述的方法,其中与所述VM的一致状态关联的一个或多个VM盘图像是在所述存储系统处存储的盘快照。
6.如权利要求5所述的方法,进一步包括经由所述VM API请求所述VMM删除获取的VM快照,这促使去除对应的盘快照。
7.如权利要求1所述的方法,其中所述存储系统仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段。
8.如权利要求7所述的方法,其中仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段包括:
在所述存储系统处接收对于所述VM的所述VM备份的请求,其中所述VM备份的请求是对于所述VM的增量备份的请求,所述请求识别与所述VM的一致状态关联的请求VM盘图像;
确定所述请求VM盘图像与代表之前VM备份的之前VM盘图像之间的差异;以及
将所述请求VM盘图像与所述之前VM盘图像之间的变化传送到所述目标备份存储系统。
9.如权利要求8所述的方法,其中所述VM盘图像是基于在所述VMM处创建的VM快照而在所述存储系统处创建的一个或多个盘快照。
10.如权利要求9所述的方法,进一步包括在所述变化已经传送到所述目标备份存储系统之后删除所述一个或多个盘快照。
11.如权利要求10所述的方法,其中所述一个或多个盘快照的删除通过擦除由所述VMM发起的VM快照而执行。
12.如权利要求9所述的方法,其中所述盘快照与所述之前盘快照之间的差异由所述存储系统基于盘变化跟踪而确定。
13.如权利要求7所述的方法,进一步包括基于传送的变化和之前的VM盘图像在所述备份存储系统处创建请求的VM盘图像。
14.如权利要求1所述的方法,进一步包括调用去除重复的片段存储引擎来存储还未在所述目标备份存储系统中存储的请求VM盘图像的片段。
15.如权利要求1所述的方法,进一步包括解析与所述VM关联的接收VM盘图像来确定关于所述接收VM盘图像中包含的文件的信息并且将确定的文件信息保存在备份目录中。
16.一种非暂时性计算机可读存储介质,其具有存储在其中的指令,所述指令在由处理器执行时促使所述处理器执行如权利要求1所述的方法,所述处理器在备份应用服务器上实现,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM。
17.一种备份应用服务器,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM,所述备份应用服务器包括:
备份引擎,其配置成响应于在所述备份应用服务器处备份虚拟机(VM)的请求而发送VM备份的请求,
经由与所述VM关联的VM应用程序接口(VM API)来远程识别所述VM的一致状态,以及
请求与所述客户端关联的存储系统向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
18.如权利要求17所述的备份应用服务器,其中所述VM备份的请求发送到托管所述VM的VMM和管理所述VM的虚拟中心(VC)中的一个,并且其中所述VM备份的请求是全VM备份和增量VM备份中的一个。
19.如权利要求17或18所述的备份应用服务器,其中所述VM的一致状态基于由所述VMM捕捉的VM快照而生成。
20.如权利要求17所述的备份应用服务器,其中所述存储系统响应于从所述备份应用服务器接收请求而向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
21.如权利要求20所述的备份应用服务器,其中与所述VM的一致状态关联的一个或多个VM盘图像是存储在所述存储系统处的盘快照。
22.如权利要求21所述的备份应用服务器,其中所述备份应用服务器进一步配置成经由VM API请求所述VMM删除获取的VM快照,这促使去除对应的盘快照。
23.如权利要求17所述的备份应用服务器,其中所述存储应用服务器调用去除重复的片段存储引擎来备份还未在所述目标存储系统中存储的请求VM图像的片段。
24.如权利要求17所述的备份应用服务器,其中所述存储系统仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段。
25.如权利要求24所述的备份应用服务器,其中仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段包括:
在所述存储系统处接收对于所述VM的所述VM备份的请求,其中所述VM备份的请求是对于所述VM的增量备份的请求,所述请求识别与所述VM的一致状态关联的请求VM盘图像;
确定所述请求VM盘图像与代表之前VM备份的之前VM盘图像之间的差异;以及
将所述请求VM盘图像与所述之前VM盘图像之间的变化传送到所述目标备份存储系统。
26.如权利要求25所述的方法,其中所述VM盘图像是基于在所述VMM处创建的VM快照而在所述存储系统处创建的一个或多个盘快照。
27.如权利要求25或26所述的方法,其中所述盘快照与所述之前盘快照之间的差异由所述存储系统基于盘变化跟踪而确定。
28.如权利要求25所述的方法,进一步包括基于传送的变化和之前的VM盘图像在所述备份存储系统处创建请求的VM盘图像。
29.如权利要求17所述的备份应用服务器,进一步包括备份目录,其中与所述VM关联的接收VM盘图像被解析以确定关于所述接收VM盘图像中所包含的文件的信息并且将确定的文件信息保存到所述备份目录。

Claims (29)

1. 一种在备份应用服务器上实现的计算机实现的方法,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM,所述方法包括:
响应于在所述备份应用服务器处备份虚拟机(VM)的请求而发送VM备份的请求;
经由与所述VM关联的VM应用程序接口(VM API)来远程识别所述VM的一致状态;以及
请求与所述客户端关联的存储系统向目标备份存储系统发送与所述VM的所述一致状态关联的一个或多个VM盘图像。
2. 如权利要求1所述的方法,其中所述VM备份的请求发送到托管所述VM的VMM和管理所述VM的虚拟中心(VC)中的一个,并且其中所述VM备份的请求是全VM备份和增量VM备份中的一个。
3. 如权利要求1或2所述的方法,其中所述VM的一致状态基于由所述VMM捕捉的VM快照而生成。
4. 如权利要求1至3中任一项所述的方法,其中所述存储系统响应于从所述备份应用服务器接收请求而向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
5. 如权利要求4所述的方法,其中与所述VM的一致状态关联的一个或多个VM盘图像是在所述存储系统处存储的盘快照。
6. 如权利要求5所述的方法,进一步包括经由所述VM API请求所述VMM删除获取的VM快照,这促使去除对应的盘快照。
7. 如权利要求1至6中任一项所述的方法,其中所述存储系统仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段。
8. 如权利要求7所述的方法,其中仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段包括:
在所述存储系统处接收对于所述VM的所述VM备份的请求,其中所述VM备份的请求是对于所述VM的增量备份的请求,所述请求识别与所述VM的一致状态关联的请求VM盘图像;
确定所述请求VM盘图像与代表之前VM备份的之前VM盘图像之间的差异;以及
将所述请求VM盘图像与所述之前VM盘图像之间的变化传送到所述目标备份存储系统。
9. 如权利要求8所述的方法,其中所述VM盘图像是基于在所述VMM处创建的VM快照而在所述存储系统处创建的一个或多个盘快照。
10. 如权利要求9所述的方法,进一步包括在所述变化已经传送到所述目标备份存储系统之后删除所述一个或多个盘快照。
11. 如权利要求10所述的方法,其中所述一个或多个盘快照的删除通过擦除由所述VMM发起的VM快照而执行。
12. 如权利要求9至11中任一项所述的方法,其中所述盘快照与所述之前盘快照之间的差异由所述存储系统基于盘变化跟踪而确定。
13. 如权利要求7至12中任一项所述的方法,进一步包括基于传送的变化和之前的VM盘图像在所述备份存储系统处创建请求的VM盘图像。
14. 如权利要求1至13中任一项所述的方法,进一步包括调用去除重复的片段存储引擎来存储还未在所述目标备份存储系统中存储的请求VM盘图像的片段。
15. 如权利要求1至14中任一项所述的方法,进一步包括解析与所述VM关联的接收VM盘图像来确定关于所述接收VM盘图像中包含的文件的信息并且将确定的文件信息保存在备份目录中。
16. 一种非暂时性计算机可读存储介质,其具有存储在其中的指令,所述指令在由处理器执行时促使所述处理器执行如权利要求1至15中任一项所述的方法,所述处理器在备份应用服务器上实现,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM。
17. 一种备份应用服务器,所述备份应用服务器与管理虚拟机监测器(VMM)的客户端通信耦合,所述虚拟机监测器(VMM)托管一个或多个VM,所述备份应用服务器包括:
备份引擎,其配置成响应于在所述备份应用服务器处备份虚拟机(VM)的请求而发送VM备份的请求,
经由与所述VM关联的VM应用程序接口(VM API)来远程识别所述VM的一致状态,以及
请求与所述客户端关联的存储系统向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
18. 如权利要求17所述的备份应用服务器,其中所述VM备份的请求发送到托管所述VM的VMM和管理所述VM的虚拟中心(VC)中的一个,并且其中所述VM备份的请求是全VM备份和增量VM备份中的一个。
19. 如权利要求17或18所述的备份应用服务器,其中所述VM的一致状态基于由所述VMM捕捉的VM快照而生成。
20. 如权利要求17至19中任一项所述的备份应用服务器,其中所述存储系统响应于从所述备份应用服务器接收请求而要向目标备份存储系统发送与所述VM的一致状态关联的一个或多个VM盘图像。
21. 如权利要求20所述的备份应用服务器,其中与所述VM的一致状态关联的一个或多个VM盘图像是存储在所述存储系统处的盘快照。
22. 如权利要求21所述的备份应用服务器,其中所述备份应用服务器进一步配置成经由VM API请求所述VMM删除获取的VM快照,这促使去除对应的盘快照。
23. 如权利要求17至22中任一项所述的备份应用服务器,其中所述存储应用服务器调用去除重复的片段存储引擎来备份还未在所述目标存储系统中存储的请求VM图像的片段。
24. 如权利要求17至23中任一项所述的备份应用服务器,其中所述存储系统仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段。
25. 如权利要求24所述的备份应用服务器,其中仅发送还未在所述目标备份存储系统中存储的请求VM图像的片段包括:
在所述存储系统处接收对于所述VM的所述VM备份的请求,其中所述VM备份的请求是对于所述VM的增量备份的请求,所述请求识别与所述VM的一致状态关联的请求VM盘图像;
确定所述请求VM盘图像与代表之前VM备份的之前VM盘图像之间的差异;以及
将所述请求VM盘图像与所述之前VM盘图像之间的变化传送到所述目标备份存储系统。
26. 如权利要求25所述的方法,其中所述VM盘图像是基于在所述VMM处创建的VM快照而在所述存储系统处创建的一个或多个盘快照。
27. 如权利要求25至26中任一项所述的方法,其中所述盘快照与所述之前盘快照之间的差异由所述存储系统基于盘变化跟踪而确定。
28. 如权利要求25至27中任一项所述的方法,进一步包括基于传送的变化和之前的VM盘图像在所述备份存储系统处创建请求的VM盘图像。
29. 如权利要求17至28中任一项所述的备份应用服务器,进一步包括备份目录,其中与所述VM关联的接收VM盘图像被解析以确定关于所述接收VM盘图像中所包含的文件的信息并且将确定的文件信息保存到所述备份目录。
CN201380050816.9A 2012-09-28 2013-09-24 使用存储系统功能性的全虚拟机备份的系统和方法 Active CN104662522B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/631794 2012-09-28
US13/631,774 US9110604B2 (en) 2012-09-28 2012-09-28 System and method for full virtual machine backup using storage system functionality
US13/631774 2012-09-28
US13/631,794 US9104331B2 (en) 2012-09-28 2012-09-28 System and method for incremental virtual machine backup using storage system functionality
PCT/US2013/061478 WO2014052333A1 (en) 2012-09-28 2013-09-24 System and method for full virtual machine backup using storage system functionality

Publications (2)

Publication Number Publication Date
CN104662522A true CN104662522A (zh) 2015-05-27
CN104662522B CN104662522B (zh) 2018-11-02

Family

ID=50388912

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380050816.9A Active CN104662522B (zh) 2012-09-28 2013-09-24 使用存储系统功能性的全虚拟机备份的系统和方法

Country Status (2)

Country Link
CN (1) CN104662522B (zh)
WO (1) WO2014052333A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068856A (zh) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 基于镜像快照的虚拟机备份系统及备份方法
CN110413369A (zh) * 2018-04-27 2019-11-05 Emc知识产权控股有限公司 用于虚拟化环境中的备份的系统和方法
CN111124252A (zh) * 2018-10-30 2020-05-08 伊姆西Ip控股有限责任公司 用于支持和执行虚拟机的数据复制的方法、装置和计算机程序产品
CN111651305A (zh) * 2020-08-05 2020-09-11 腾讯科技(深圳)有限公司 一种虚拟机备份方法、组件及云计算系统
CN111831620A (zh) * 2019-04-16 2020-10-27 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331318B (zh) * 2014-10-27 2018-04-06 上海斐讯数据通信技术有限公司 一种嵌入式双系统及其工作方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344863A (zh) * 2006-12-20 2009-01-14 赛门铁克运营公司 备份系统和方法
CN101609419A (zh) * 2009-06-29 2009-12-23 北京航空航天大学 虚拟机持续在线迁移的数据备份方法及装置
US20100049929A1 (en) * 2008-08-25 2010-02-25 Nagarkar Kuldeep S Efficient Management of Archival Images of Virtual Machines Having Incremental Snapshots
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
CN102576322A (zh) * 2009-08-21 2012-07-11 赛门铁克公司 Nas设备上虚拟磁盘镜像文件的代理备份
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统
CN102594849A (zh) * 2011-01-06 2012-07-18 阿里巴巴集团控股有限公司 数据备份、恢复方法、虚拟机快照删除、回滚方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321377B2 (en) * 2006-04-17 2012-11-27 Microsoft Corporation Creating host-level application-consistent backups of virtual machines
US8046550B2 (en) * 2008-07-14 2011-10-25 Quest Software, Inc. Systems and methods for performing backup operations of virtual machine files
US8037032B2 (en) * 2008-08-25 2011-10-11 Vmware, Inc. Managing backups using virtual machines
US20120158806A1 (en) * 2010-12-20 2012-06-21 Verizon Patent And Licensing Inc. Provisioning network-attached storage

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101344863A (zh) * 2006-12-20 2009-01-14 赛门铁克运营公司 备份系统和方法
US20100049929A1 (en) * 2008-08-25 2010-02-25 Nagarkar Kuldeep S Efficient Management of Archival Images of Virtual Machines Having Incremental Snapshots
CN101609419A (zh) * 2009-06-29 2009-12-23 北京航空航天大学 虚拟机持续在线迁移的数据备份方法及装置
CN102576322A (zh) * 2009-08-21 2012-07-11 赛门铁克公司 Nas设备上虚拟磁盘镜像文件的代理备份
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
CN102834822A (zh) * 2010-04-12 2012-12-19 微软公司 由虚拟机共享的群集的快速-完整备份
CN102594849A (zh) * 2011-01-06 2012-07-18 阿里巴巴集团控股有限公司 数据备份、恢复方法、虚拟机快照删除、回滚方法及装置
CN102591982A (zh) * 2011-01-07 2012-07-18 赛门铁克公司 执行增量sql服务器数据库备份的方法和系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068856A (zh) * 2015-07-16 2015-11-18 武汉噢易云计算有限公司 基于镜像快照的虚拟机备份系统及备份方法
CN110413369A (zh) * 2018-04-27 2019-11-05 Emc知识产权控股有限公司 用于虚拟化环境中的备份的系统和方法
CN110413369B (zh) * 2018-04-27 2023-11-07 Emc知识产权控股有限公司 用于虚拟化环境中的备份的系统和方法
CN111124252A (zh) * 2018-10-30 2020-05-08 伊姆西Ip控股有限责任公司 用于支持和执行虚拟机的数据复制的方法、装置和计算机程序产品
CN111124252B (zh) * 2018-10-30 2023-12-05 伊姆西Ip控股有限责任公司 用于支持和执行虚拟机的数据复制的方法、装置和计算机程序产品
CN111831620A (zh) * 2019-04-16 2020-10-27 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品
CN111831620B (zh) * 2019-04-16 2024-04-19 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品
CN111651305A (zh) * 2020-08-05 2020-09-11 腾讯科技(深圳)有限公司 一种虚拟机备份方法、组件及云计算系统
CN111651305B (zh) * 2020-08-05 2020-11-03 腾讯科技(深圳)有限公司 一种虚拟机备份方法、组件及云计算系统

Also Published As

Publication number Publication date
WO2014052333A1 (en) 2014-04-03
CN104662522B (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
US9477415B2 (en) System and method for full virtual machine backup using storage system functionality
US9348702B2 (en) System and method for incremental virtual machine backup using storage system functionality
US10572468B2 (en) Restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations
US10452303B2 (en) Efficient live-mount of a backed up virtual machine in a storage management system
US10437505B2 (en) Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations
US11921594B2 (en) Enhanced file indexing, live browsing, and restoring of backup copies of virtual machines and/or file systems by populating and tracking a cache storage area and a backup index
US20150227601A1 (en) Virtual data backup
US20210064486A1 (en) Access arbitration to a shared cache storage area in a data storage management system for live browse, file indexing, backup and/or restore operations
US11914477B2 (en) Lightweight metadata handling for file indexing and live browse of backup copies
CN104662522A (zh) 使用存储系统功能性的全虚拟机备份的系统和方法
US11886226B2 (en) Consolidating snapshots using partitioned patch files

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant