CN102646064A - 支持迁移的增量虚拟机备份 - Google Patents
支持迁移的增量虚拟机备份 Download PDFInfo
- Publication number
- CN102646064A CN102646064A CN201210033486XA CN201210033486A CN102646064A CN 102646064 A CN102646064 A CN 102646064A CN 201210033486X A CN201210033486X A CN 201210033486XA CN 201210033486 A CN201210033486 A CN 201210033486A CN 102646064 A CN102646064 A CN 102646064A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- virtual
- snapshot
- change
- record
- 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
Links
Images
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/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- 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/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- 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)
- 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
本发明涉及支持迁移的增量虚拟机备份。保留自从虚拟机上次被备份以来所接收的虚拟机的虚拟机数据的改变的记录和虚拟机的快照的改变的记录。响应于到了执行虚拟机的增量备份的时间,而根据虚拟机数据的改变的记录对一部分虚拟机数据进行备份,以及根据快照的改变的记录对一部分快照进行备份。响应于到了将虚拟机迁移到第二主机设备的时间,而将虚拟机数据、虚拟机数据的改变的记录、快照的改变的记录和快照中的一个或多个迁移到第二主机设备。
Description
背景技术
虚拟机是类似于物理设备的、可以运行程序的物理设备的软件实现。虚拟机提供各种好处,但也不是没有它们的问题。一个这样的问题是,可能希望将虚拟机的数据和状态进行备份,但这样的备份会是费时的,并且由于被备份的信息(虚拟机的数据和状态)的量而需要大量存储空间。另外,这样的备份可能由于许多虚拟机被迁移或被移动到不同的物理主机设备的能力,和/或由虚拟机所使用的底层物理存储设备被改变的能力,而难以实施。
发明内容
本概要是为了以简化的形式介绍构思的选择而提供的,这些构思还将在下面的详细说明中进行描述。本概要既不打算标识所要求保护的主题的关键特征或必要特征,也不打算被使用来限制所要求保护的主题的范围。
按照一个或多个方面,接收在第一主机设备上的虚拟机的虚拟机数据的改变,以及保留自从虚拟机数据上次被备份以来所接收的该虚拟机数据的改变的记录。识别执行虚拟机的增量备份(incremental backup)的时间,并且响应于到了执行增量备份的时间,而根据所述改变的记录,对一部分虚拟机数据进行备份。还识别将虚拟机迁移到第二主机设备的时间,并且响应于到了将虚拟机迁移到第二主机设备的时间,而将该虚拟机数据和该虚拟机数据的改变的记录迁移到第二主机设备。
按照一个或多个方面,接收在第一主机设备上的虚拟机的快照(snapshot)的改变,以及保留自从虚拟机上次被备份以来所接收的所述快照的改变的记录。识别执行虚拟机的增量备份的时间,并且响应于到了执行增量备份的时间,而根据所述改变的记录,对一部分快照进行备份。还识别将虚拟机迁移到第二主机设备的时间,并且响应于到了将虚拟机迁移到第二主机设备的时间,而将所述快照的改变的记录和所述快照中的一个或多个迁移到第二主机设备。
附图说明
相同的标号在所有的图上被使用来给相同的特征加附注。
图1是图示按照一个或多个实施例的、实施支持迁移的增量虚拟机备份的示例性计算设备的框图。
图2是图示按照一个或多个实施例的、实施支持迁移的增量虚拟机备份的示例性***的框图。
图3是图示按照一个或多个实施例的、用于支持迁移的增量虚拟机备份的示例性过程的流程图。
图4是图示按照一个或多个实施例的、用于支持迁移的增量虚拟机备份的另一个示例性过程的流程图。
图5图示可被配置成按照一个或多个实施例来实施支持迁移的增量虚拟机备份的示例性计算设备。
具体实施方式
这里讨论支持迁移的增量虚拟机备份。保留自从虚拟机数据上次被备份以来由虚拟机中运行的应用做出的数据(也称为虚拟机数据)改变的记录。这个记录被使用来确定当执行增量备份时哪个虚拟机数据要被备份。即使在虚拟机被移动到新的主机设备和/或由虚拟机使用的物理存储设备被改变的情形下,这个记录仍保持与该虚拟机相关联。
同样地,可以捕获虚拟机的当前状态,其被称为虚拟机的元数据。这个当前状态可以包括由虚拟机使用的存储设备(storage device)的当前状态、由虚拟机使用的存储器设备(memory device)的当前状态和用于虚拟机的配置信息的当前状态。所捕获的虚拟机的当前状态(也称为快照)被存储,以及可被备份。有关哪些快照以前被备份的记录被保留,并且当执行增量备份时,以前已被备份的快照不需要作为增量备份的一部分被备份。即使在虚拟机被移动到新的主机设备和/或由虚拟机使用的物理存储装置和/或存储器部件被改变的情形下,这个记录仍保持与该虚拟机相关联。
图1是图示按照一个或多个实施例的、实施支持迁移的增量虚拟机备份的示例性计算设备100的框图。计算设备100可以是各种各样不同类型的设备。例如,计算设备100可以是台式计算机、服务器计算机、膝上型或上网本计算机、平板或笔记本计算机、移动站、娱乐电器、通信地耦合到显示设备、电视机或其它显示设备的机顶盒、蜂窝电话或其它无线电话、游戏控制台、车载计算机等等。
计算设备100包括虚拟机管理器102和一个或多个部件104。虚拟机管理器102和/或主机操作***(未示出)管理对于部件104提供的功能性的访问。部件104可以是各种各样不同的处理器部件、输入/输出(I/O)部件和/或其它部件或设备。例如,部件104可以包括一个或多个处理器或处理器核、一个或多个存储器部件(例如,易失性和/或非易失性存储器)、一个或多个存储设备(例如,光盘和/或磁盘、闪速存储器驱动器)、通信部件(例如,有线和/或无线网适配器)、它们的组合等等。虽然被图示为计算设备100的一部分,但一个或多个部件104(例如,一个或多个存储设备)可以在计算设备100的外部实施。在计算设备100上运行的各种部件或模块――包括虚拟机管理器102――可以直接地和/或经由其它部件或模块间接地访问由部件104管理的这个功能性。
虚拟机管理器102允许虚拟机106在计算设备100上运行。在计算设备100上图示了单个的虚拟机106,虽然替换地可以有多个虚拟机在计算设备100上运行。虚拟机是指可以类似于物理计算设备那样运行程序的计算设备(或其它机器或***)的软件实现。虚拟机包括类似于部件104(但是是部件104的软件实现)的一个或多个虚拟处理器部件。操作***以及其它应用可以通过使用虚拟部件而执行,就像它们通过使用部件104那样,包括在虚拟处理器或虚拟处理器核上运行。在虚拟机106上执行的操作***和其它应用不需要知道它们正在虚拟机上执行。
虚拟机106包括客户操作***(guest operating system)112、一个或多个应用114和一个或多个虚拟部件116。客户操作***112在被包括作为部件116中的一个或多个的一个或多个虚拟处理器或处理器核上运行或执行,并管理应用114的执行。
虚拟机管理器102包括虚拟机(VM)控制模块122、VM改变跟踪模块124和VM备份模块126。虚拟机控制模块122管理虚拟部件116到部件104的映射,包括调度虚拟处理器或处理器核来在物理处理器或处理器核上执行。虚拟机改变跟踪模块124保留自从虚拟机106上次被备份以来所发生的虚拟机数据和/或元数据的改变的记录。虚拟机备份模块126管理虚拟机106的备份,包括备份虚拟机数据以及虚拟机元数据。
虚拟机备份模块126管理虚拟机106的备份。备份虚拟机106是指把虚拟机106的虚拟机数据和/或虚拟机106的虚拟机元数据复制到备份存储设备130。虚拟机数据是指由在虚拟机中运行的应用所读出和/或写入的数据。虚拟机106的元数据是指虚拟机106的当前状态。
备份存储设备130可以经由诸如局域网、互联网、蜂窝或其它无线电话网、SAN(存储域网络,诸如光纤信道网络、SCSI(小计算机***接口)网络等等)、它们的组合等等那样的网络被耦合到计算设备100。替换地,备份存储设备130可以以其他方式,诸如经由通用串行总线(USB)连接、无线USB连接等等,被耦合到计算设备100。虽然在图1上图示了单个备份存储设备130,但应当意识到,虚拟机备份模块126可以把虚拟机106备份到多个存储设备和/或备份到包括一个或多个存储设备的备份服务。
计算设备100还包括备份应用模块128,其管理备份虚拟机106的各种方面。备份应用模块128可以以不同的方式确定备份虚拟机106的时间。在一个或多个实施例中,备份应用模块128被配置以或可以访问指示虚拟机106要被备份的时间(例如,特定的星期、特定的日子、某些天内特定的小时等等)的备份时间表。替换地,备份应用模块128可以接收来自用户的、关于虚拟机106要被备份的时间的指示。替换地,备份应用模块128可以接收来自计算设备100的另一个部件或模块的或来自另一个设备的、关于虚拟机106要被备份的时间的指示。
VM备份模块126支持增量备份和完全备份。完全备份是指把虚拟机106的虚拟机数据和/或虚拟机106的虚拟机元数据全部复制到备份存储设备130。增量备份是指把自从虚拟机106上次被备份以来发生改变的、虚拟机106的部分的虚拟机数据和/或虚拟机106的部分的虚拟机元数据复制到备份存储设备130。增量备份还可包括复制自从虚拟机106上次被备份以来没有改变的、虚拟机106的某些虚拟机数据和/或虚拟机106的某些虚拟机元数据;然而,增量备份所复制的要少于全部的虚拟机106的虚拟机数据和/或虚拟机106的虚拟机元数据。备份应用模块128可以类似于以上讨论的确定备份虚拟机106的时间的,以各种各样不同的方式确定是要执行增量备份还是要执行完全备份。
VM备份模块126根据从备份应用模块128接收的指示或请求来对虚拟机106进行备份。备份应用模块128在适当的时间发起虚拟机106的备份,响应于此,VM备份模块126执行虚拟机106的适当的备份(例如,完全的或增量的)。为了执行备份,VM备份模块126向备份应用模块128提供或标识虚拟机106的适当的数据(根据是完全备份还是增量备份)。备份应用模块128进而又把数据复制到备份存储装置130。虽然被图示为分开的模块,但替换地,备份应用模块128的各种功能性可以被合并到VM备份模块126,和/或VM备份模块126的各种功能性可以被合并到备份应用模块128。
虚拟机控制模块122还支持对虚拟机106的快照的保存。虚拟机106的快照是虚拟机106的当前状态,它也被称为虚拟机106的元数据。虚拟机106的这个当前状态包括由虚拟机106使用的存储设备的当前状态、由虚拟机106使用的存储器设备的当前状态和/或用于虚拟机106的配置信息的当前状态。由虚拟机106使用的存储设备的当前状态是指由包括应用114、客户操作***112和虚拟部件116在内的虚拟机106的任何部件或模块在存储设备(例如,磁盘或光盘、闪速存储器驱动器)中存储的任何数据、指令和/或其它信息。由虚拟机106使用的存储器设备的当前状态是指由包括应用114、客户操作***112和虚拟部件116在内的虚拟机106的任何部件或模块在存储器设备(例如,RAM、闪速存储器)中存储的任何数据、指令和/或其它信息。用于虚拟机106的配置信息是指由虚拟机106的部件或模块和/或虚拟机管理器102使用来实施虚拟机106的数据、指令和/或其它信息。
为了保存在特定的时间点的虚拟机106的快照,在那个特定的时间点的虚拟机106的元数据被捕获或以另外的方式被识别和被保存为在那个特定的时间点的快照。快照典型地被保存在计算设备100的存储设备(例如,部件104)上,虽然替换地可以被保存在计算设备100的另外的部件或另外的设备上。
图2是图示按照一个或多个实施例的、实施支持迁移的增量虚拟机备份的示例性***200的框图。***200包括虚拟机改变跟踪模块202,其可以是图1的虚拟机改变跟踪模块124。虚拟机改变跟踪模块202包括虚拟机数据改变跟踪模块204和虚拟机元数据改变跟踪模块206。
虚拟机数据改变跟踪模块204保留由虚拟机(例如,图1的虚拟机106)做出的虚拟机数据的改变的记录。VM数据改变跟踪模块204识别或被告知由虚拟机上运行的应用所写入的虚拟机数据。VM数据改变跟踪模块204保留VM数据改变记录214,VM数据改变记录214是自从虚拟机上次被备份以来虚拟机数据的改变的记录。在一个或多个实施例中,VM数据改变跟踪模块204确定每次虚拟机数据被应用写入时虚拟机数据发生的改变。
应用可以从作为存储设备(例如,磁盘或光盘、闪速存储器设备等等)的虚拟部件读出数据和/或把数据写入到虚拟部件,并且所述虚拟部件通过虚拟机控制模块被映射到物理存储设备。在一个或多个实施例中,VM数据改变跟踪模块204被包括以作为虚拟机管理器的一部分,并监视(例如,识别或被告知)虚拟机中的应用何时把数据写入到物理存储设备。VM数据改变跟踪模块204把物理存储设备的这些改变的指示保留在VM数据改变记录214中。因此,在这样的实施例中,VM数据改变记录214标识一个或多个虚拟部件被映射到的一个或多个物理存储设备的改变。
在其他实施例中,VM数据改变跟踪模块204监视(例如,识别或被告知)数据何时被写入到虚拟机的虚拟存储设备。VM数据改变跟踪模块204把虚拟存储设备的这些改变的指示保留在VM数据改变记录214中。因此,在这样的实施例中,VM数据改变记录214标识一个或多个虚拟存储设备的改变。
VM数据改变记录214可以以各种各样不同的方式被实施。在一个或多个实施例中,VM数据改变记录214被实施为差分盘(differencing disk)。当使用差分盘时,在虚拟机被备份后由应用所写入的改变被写入到被称为差分盘的存储设备,而不是被写入到由应用将所要写入的数据引导到的存储设备。虚拟机管理器保留差分盘,并且应用和/或虚拟机不需要知道差分盘的存在。在差分盘上以及在由应用把所要写入的数据引导到的存储设备上的数据可以被虚拟机中的应用读回。自从虚拟机上次被备份以来改变的数据从差分盘被读出,并且被返回给应用,以及自从虚拟机上次被备份以来没有改变的数据从由应用把所要读出的数据引导到的存储设备中被读出,并且被返回给应用。
在差分盘上的数据也可以与来自由应用把所要读出和/或写入的数据引导到的存储设备的数据相组合,这取决于在差分盘上的数据的粒度。例如,VM数据改变跟踪模块204可以按块地跟踪改变。一个块例如可以是1兆字节或2兆字节(虽然替换地,可以使用其它尺寸的块)。如果应用写入小于一个块的数据,则VM数据改变跟踪模块204(或虚拟机管理器的另一个模块)检索包括来自存储设备的所述数据的那个块的剩余部分,并把该块的那个剩余部分连同由应用所写入的数据一起存储在差分盘上。
当执行虚拟机的增量备份时,存储差分盘(例如到图1的备份存储设备130)。在差分盘上的数据也可以盖写在存储设备的对应部分上的数据,以及差分盘可被清除(clear)。替换地,可以创建附加的差分盘,在其上写入在虚拟机的增量备份后由应用所写入的改变。因此,可以生成多个差分盘的分级结构,令自从上次增量备份以来做出的虚拟机数据的改变被存储在分级结构的每个级别上。
当执行虚拟机的完全备份时,差分盘与由应用把要被读出和/或写入的数据引导到的存储设备相组合。对于存储设备的备份拷贝,在差分盘上的数据替代被存储在存储设备的对应部分上的数据。在差分盘上的数据也可以盖写在存储设备的对应部分上的数据,以及差分盘可被清除。
例如,假设应用从特定的存储设备读取来自块1-100的数据,改变数据中的某些,然后把改变写回到块12和57。虚拟机管理器把用于块12和57的数据存储在差分盘上,而不是存储在从其读出所述块的特定存储装置上。再假设应用随后再次从那个特定存储设备读取来自块1-100的数据。虚拟机管理器把来自差分盘的块12和57的数据和来自那个特定存储设备的块1-11、13-56和58-100的数据返回给应用。同样地,当执行虚拟机的增量备份时,那个特定存储设备的备份拷贝包括来自差分盘的块12和57的数据。差分盘的块12和57可以替代在那个特定存储设备上的块12和57,以及块12和57可以从差分盘被删除(差分盘可以被清除)。替换地,可以创建新的差分盘,以及在增量备份后被写入到那个特定存储设备的改变可以被写入到新的差分盘。
替换地,不是用差分盘,VM数据改变记录214可以以不同的方式被实施。在一个或多个实施例中,VM数据改变记录214被实施为位图,令位图的每个位置对应于存储设备的一个块(例如,1或2兆字节)。当应用把数据写入到存储设备的块时,位图的对应位置被设置(例如,为值“1”)以指示:自从虚拟机上次被备份以来该数据块已改变。当虚拟机再次被备份时,位图的位置然后可以被清除(例如,被设置成值“0”)。因此,在任何给定的时间,位图指示自从虚拟机上次被备份以来存储设备的哪些块已改变和哪些块没有改变。
替换地,VM数据改变记录214可以被实施为块标识符列表。每个块标识符标识存储设备的一个块(例如,1或2兆字节)。块标识符可以以各种方式被实施(例如,实施为数字标识符或数字字母标识符),它允许标识在存储设备上的不同的块。当应用把数据写入到存储设备的块时,数据被写入到的块的标识符被加到块标识符列表。当虚拟机再次被备份时,这个列表然后可以被清除(腾空)。因此,在任何给定的时间,块标识符列表指示自从虚拟机上次被备份以来存储设备的哪些块已改变,和自从存储设备上次被备份以来任何不在列表上的块均没有改变。
VM数据改变记录214可以在执行虚拟机的增量备份时被使用。当执行虚拟机的增量备份时,保存自从虚拟机上次被备份以来虚拟机数据的改变。VM数据改变记录214是自从虚拟机上次被备份以来虚拟机数据的改变的记录,因此,VM数据改变记录214容易地把要被备份的虚拟机数据标识为虚拟机的增量备份的一部分。VM数据改变记录214本身可以被复制到备份存储装置以作为增量备份的一部分,诸如在VM数据改变记录214是差分盘的情形下。替换地,VM数据改变记录214可以标识存储设备的哪些块或其它部分要被复制到备份存储装置以作为增量备份的一部分,诸如在VM数据改变记录214是位图或块标识符列表的情形下。
虚拟机元数据改变跟踪模块206保留虚拟机(例如,图1的虚拟机106)的元数据的改变的记录。VM元数据改变跟踪模块206识别或被告知被捕获和保存的虚拟机的每个快照。VM元数据改变跟踪模块206保留VM元数据改变记录216,该VM元数据改变记录216是自从虚拟机上次被备份以来做出的所保存的快照的改变的记录。在一个或多个实施例中,所保存的快照的改变的这个记录是自从虚拟机上次被备份以来所捕获和保存的快照的指示。
VM元数据改变记录216可以以各种各样不同的方式被实施。在一个或多个实施例中,VM元数据改变记录216被实施为与每个快照相关联的标记值。这个标记值可以作为存储快照的数据结构的一部分被包括,或替换地,可以以其它方式被实施(例如,作为与存储快照的数据结构相关联的数据,作为位图,令该位图的每个位置对应于所捕获和保存的快照,等等)。当快照被捕获和被保存时,与快照相关联的标记值可以被设置(成例如,值“1”),以便指示:相关联的快照自从被捕获和保存以来没有被备份。当相关联的快照被备份时,与快照相关联的标记值然后可以被清除(例如,被设置成值“0”),以便指示:相关联的快照已被备份。因此,在任何给定的时间,与快照相关联的标记值指示哪些快照已被备份和哪些快照尚未被备份。
替换地,不是用标记值,VM元数据改变记录216可以以不同的方式被实施。在一个或多个实施例中,VM元数据改变记录216被实施为快照标识符列表。每个快照标识符标识已被捕获和保存的特定的快照。快照标识符可以以各种方式被实施(例如,作为数字标识符或数字字母标识符),其允许标识用于虚拟机的被捕获和保存的不同的快照。当快照被捕获和保存时,快照的标识符被加到快照标识符列表。当虚拟机再次被备份时,这个列表然后可以被清除(腾空)。因此,在任何给定的时间,快照标识符列表指示哪些快照已被备份和哪些快照尚未被备份。
VM元数据改变记录216可以在执行虚拟机的增量备份时被使用。VM元数据改变记录216是自从虚拟机上次被备份以来做出的所保存的快照的改变的记录,因此,VM元数据改变记录216容易地把要被备份的快照标识为虚拟机的增量备份的一部分。VM元数据改变记录216标识哪些快照还没有被备份,以及还没有被备份的快照是要作为增量备份的一部分被复制到备份存储装置的快照。
回到图1,虚拟机控制模块122还保留在计算设备100上运行的虚拟机(诸如虚拟机106)的记录,并支持在计算设备100上运行的虚拟机迁移到其它设备以及在其它设备上运行的虚拟机迁移到计算设备100。运行特定的虚拟机的计算设备也被称为该虚拟机的主机或主机设备。虚拟机可以移动到或迁移到不同的主机设备,从而允许运行特定虚拟机的特定计算设备随时间而改变。虚拟机控制模块122可以以各种各样不同的方式来确定将虚拟机迁移到另一个主机设备的时间,诸如响应于来自主机设备的用户的请求、响应于来自主机设备的另一个模块或部件的指示、响应于来自另一个设备或服务的指示等等。
虚拟机控制模块122管理虚拟机迁移到和/或迁移自计算设备100。这个迁移包括将虚拟机的当前状态迁移到和/或迁移自另一个主机设备。另外,VM改变跟踪模块124将改变跟踪信息(例如,图2的VM数据改变记录214和VM元数据改变记录216)与虚拟机相关联。因此,由VM改变跟踪模块124为特定的虚拟机保留的改变跟踪信息,连同虚拟机的当前状态一起,迁移到新的主机,从而允许为虚拟机执行增量备份,而不管虚拟机到另一个主机设备的迁移如何。
在一个或多个实施例中,被迁移到新的主机设备的虚拟机的标识符已为新的主机设备和虚拟机从其迁移出的主机设备所知。这两个主机设备把由VM改变跟踪模块保留的改变跟踪信息与虚拟机相关联,从而允许改变跟踪信息连同虚拟机一起被迁移。
可以各种各样不同的方式使虚拟机的标识符为新的主机设备和虚拟机从其迁移出的主机设备所知。在一个或多个实施例中,配置管理服务(例如,在主机设备外部)保留虚拟机标识符和哪些虚拟机正在哪些主机设备上运行的记录。当虚拟机被迁移到新的主机设备时,配置管理服务被告知以新的主机以及虚拟机的标识符(或替换地,配置管理服务可以向新的主机设备和虚拟机从其迁移出的主机设备告知要被迁移的虚拟机的标识符以及用于该虚拟机的新的主机设备)。配置管理服务可以把在主机设备上运行的一个或多个虚拟机的标识符提供给那个主机设备上的虚拟机管理器。
替换地,各个备份应用模块可以互相交流哪些设备宿有哪些虚拟机的标识符。在主机设备上的备份应用模块可以替换地接收迁移事件的通知,从而允许备份应用模块把改变跟踪信息和备份与适当的虚拟机相关联。这些迁移事件通知可以从在各种主机设备上支持虚拟机的虚拟化基础结构被接收,或从其它***或服务(例如,从数据中心管理解决方案,诸如***中心虚拟机管理器(从华盛顿州雷蒙德市的微软公司可得到的),它留意哪些虚拟机位于哪些计算设备上)被接收。在计算设备上的备份应用模块可以针对这样的迁移事件通知进行登记,并使用它们来相关从一个主机迁移到另一个主机的虚拟机。
图3是图示按照一个或多个实施例的、用于支持迁移的增量虚拟机备份的示例性过程300的流程图。过程300由诸如图1的设备100那样的一个或多个设备实行,并且可以以软件、固件、硬件或它们的组合而被实施。过程300被显示为一组动作,但不限于所显示的、用于执行各个动作的操作的次序。过程300是对于支持迁移的增量虚拟机备份的示例性过程;支持迁移的增量虚拟机备份的另外的讨论参照不同的附图被包括在这里。
在过程300,接收虚拟机的虚拟机数据的改变(动作302)。这些改变例如由诸如图1的模块124或图2的模块202那样的虚拟机改变跟踪模块接收。
保留自从虚拟机数据上次被备份以来所接收的虚拟机数据的改变的记录(动作304)。这个记录可以以如上所讨论的不同的方式,诸如通过使用差分盘、位图等等而被保留。
识别执行虚拟机的增量备份的时间(动作306)。这个时间可以以如上所讨论的不同的方式被识别。
响应于到了执行增量备份的时间,根据保留的改变的记录,对一部分虚拟机数据进行备份(动作308)。这个部分可以是保留的改变的记录(例如,差分盘)或由改变的记录所标识的存储设备的部分(例如,由位图或标识符列表标识的),正如以上讨论的。
另外,识别将虚拟机迁移到新的主机设备的时间(动作310)。这个时间可以以如上所讨论的不同的方式被识别。
响应于到了将虚拟机迁移到新的主机设备的时间,把虚拟机数据和改变的记录迁移到新的主机设备(动作312)。虚拟机数据的改变继续被接收(动作302),以及那些改变的记录被保留(动作304)在新的主机设备。
图4是图示按照一个或多个实施例的、用于支持迁移的增量虚拟机备份的示例性过程400的流程图。过程400由诸如图1的设备100那样的一个或多个设备实行,且可以以软件、固件、硬件或它们的组合而被实施。过程400被显示为一组动作,并且不限于所显示的、用于执行各种动作的操作的次序。过程400是对于支持迁移的增量虚拟机备份的示例性过程;支持迁移的增量虚拟机备份的另外的讨论参照不同的附图被包括在这里。
在过程400,接收虚拟机的快照的改变(动作402)。这些改变例如由诸如图1的模块124或图2的模块202那样的虚拟机改变跟踪模块接收。这些改变例如是如以上讨论的、虚拟机的新捕获和保存的快照。
保留自从虚拟机上次被备份以来所接收的虚拟机的快照的改变的记录(动作404)。这个记录可以以如上所讨论的不同的方式而被保留,诸如通过使用标记值、标识符列表等等。
识别执行虚拟机的增量备份的时间(动作406)。这个时间可以以如上所讨论的不同的方式被识别。
响应于到了执行增量备份的时间,而根据保留的改变的记录,对虚拟机的一部分快照进行备份(动作408)。这个部分例如是还没有被备份的快照(正如由在动作404被保留的改变的记录所标识的),正如以上讨论的。
另外,识别将虚拟机迁移到新的主机设备的时间(动作410)。这个时间可以以如上所讨论的不同的方式被识别。
响应于到了将虚拟机迁移到新的主机设备的时间,而把虚拟机的快照和改变的记录迁移到新的主机设备(动作412)。在动作412被迁移的这些快照包括在动作408还没有被备份的快照,以及在动作408已被备份的快照。虚拟机的快照的改变继续被接收(动作402),以及那些改变的记录被保留(动作404)在新的主机设备。
支持迁移的增量虚拟机备份技术支持各种使用情景。虚拟机可以从一个主机设备被迁移到另一个主机设备,备份信息也同样被迁移。可以出现虚拟机本身被迁移到新的主机设备,但一个或多个物理存储设备不改变的情形。在这样的情形下,改变跟踪信息(例如,对于新的主机设备来说不可访问的、被存储在本地存储设备上的VM数据改变记录214和/或VM元数据改变记录216)可被迁移到新的主机设备,或替换地,某些改变跟踪信息(例如,实施VM数据改变记录214的差分盘、被存储在对于新的主机设备以及虚拟机正从其被迁移出的主机设备来说可访问的共享的设备上的改变跟踪位图等等)可不被迁移。尽管被迁移到新的主机设备,虚拟机仍旧把虚拟存储设备映射到没有被改变的一个或多个物理存储设备。
也可以出现虚拟机没有被迁移,但一个或多个物理存储设备被改变的情形。这也被称为一种类型的迁移,因为信息从一个物理存储设备被迁移到另一个物理存储设备。在这样的情形下,因为物理存储设备被改变,所以虚拟存储设备到物理存储设备的映射被更新,以及改变跟踪信息(例如,VM数据改变记录214和/或VM元数据改变记录216)可被迁移到一个或多个新的物理存储设备。改变跟踪信息是否被迁移到新的物理存储设备可以根据该改变跟踪信息被保留在何处而变化。例如,如果改变跟踪信息被存储在正被改变的物理存储设备上(也就是,那个物理设备的内容正被搬出到一个或多个新的物理存储设备),则改变跟踪信息被迁移到该一个或多个新的物理存储设备。然而,如果改变跟踪信息被存储在没有被改变的物理存储设备上(也就是,那个物理存储设备的内容没有被搬出到一个或多个新的物理存储设备),则改变跟踪信息不被迁移到一个或多个新的物理存储设备。
另外,通过在虚拟机管理器中实施虚拟机改变跟踪模块和虚拟机备份模块,物理存储设备(和与那些物理存储设备相关联的任何软件和/或固件驱动器)不需要为了支持增量备份而执行对改变的跟踪。物理存储设备(和与那些物理存储设备相关联的任何软件和/或固件驱动器)甚至不需要知道改变正被跟踪和/或增量备份被支持。在虚拟机迁移到新的主机设备期间,因为改变跟踪信息连同虚拟机一起被迁移到新的主机设备,所以尽管物理存储设备(和与那些物理存储设备相关联的任何软件和/或固件驱动器)像这样地缺乏改变的知识和/或对改变的跟踪,增量备份仍继续得到支持。
图5图示可被配置成实施按照一个或多个实施例的、支持迁移的增量虚拟机备份的示例性计算设备500。计算设备500例如可以是图1的计算设备100。
计算设备500包括一个或多个处理器或处理单元502、一个或多个计算机可读媒体504——其可包括一个或多个存储器和/或存储部件506、一个或多个输入/输出(I/O)设备508和总线510,总线510允许各种部件和设备互相通信。计算机可读媒体504和/或一个或多个I/O设备508可以被包括以作为计算设备500的一部分,或替换地可以被耦合到计算设备500。总线510代表几种类型的总线结构的一种或多种,包括使用各种各样不同的总线体系结构的存储器总线或存储器控制器、***总线、加速的图形接口、处理器或本地总线等等。总线510可包括有线和/或无线总线。
存储器/存储部件506代表一个或多个计算机存储媒体。部件506可包括易失性媒体(诸如随机存取存储器(RAM))和/或非易失性媒体(诸如只读存储器(ROM)、闪速存储器、光盘、磁盘等)。部件506可包括固定的媒体(例如,RAM、ROM、固定硬驱动器等)以及可拆卸媒体(例如,闪速存储器驱动器、可拆卸硬驱动器、光盘等)。
这里讨论的技术可以以软件被实施,令指令由一个或多个处理单元502执行。应当意识到,不同的指令可以被存储在计算设备500的不同部件中,诸如存储在处理单元502、处理单元502的各种高速缓存、设备500的其它高速缓存(未示出)、其它计算机可读媒体等等。另外,应当意识到,在计算设备500中存储指令的位置可以随时间而改变。
一个或多个输入/输出设备508允许用户把命令和信息输入到计算设备500,以及还允许将信息呈现给用户和/或其它部件或设备。输入设备的例子包括键盘、光标控制设备(例如,鼠标)、话筒、扫描仪等等。输出设备的例子包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡等等。
各种技术在这里可以是在软件或程序模块的一般上下文中进行描述的。通常,软件包括例行程序、程序、应用、对象、部件、数据结构等等,它们执行特定的任务或实施特定的抽象数据类型。这些模块和技术的实现可被存储在某种形式的计算机可读媒体上,或通过其被传送。计算机可读媒体可以是能被计算设备访问的任何可得到的介质或媒体。作为例子,而不是限制,计算机可读媒体可包括“计算机存储媒体”和“通信媒体”。
“计算机存储媒体”包括以任何方法或技术被实施、用于存储诸如计算机可读指令、数据结构、程序模块或其它数据那样的信息的易失性和非易失性、可拆卸和非可拆卸媒体。计算机存储媒体包括,但不限于,RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储装置、盒式磁带、磁带、磁盘存储装置或其它磁存储设备、或可被使用来存储想要的信息并可以由计算机访问的任何其它介质。
“通信媒体”典型地将计算机可读指令、数据结构、程序模块、或其它数据具体化为诸如载波或其它输送机制那样的调制的数据信号。通信媒体还包括任何信息传递媒体。术语“调制的数据信号”是指使它的特性中的一个或多个以如下方式设置或改变的信号,即:将信息编码在信号中。作为例子,而不是限制,通信媒体包括诸如有线网络或直接连线连接那样的有线媒体和诸如声学、RF、红外那样的无线媒体,以及其它无线媒体。上述的任何项的组合也应当被包括在计算机可读媒体的范围内。
通常,这里描述的任何功能或技术可以通过使用软件、固件、硬件(例如,固定逻辑电路)、人工处理或这些实现的组合而被实施。当在这里使用时,术语“模块”和“部件”通常代表软件、固件、硬件或它们的组合。在软件实现的情形下,模块或部件代表程序代码,当所述程序代码在处理器(例如,一个或多个CPU)上被执行时其完成规定的任务。程序代码可被存储在一个或多个计算机可读的存储器设备,它们的进一步描述可以参照图5而被发现。这里描述的支持迁移的增量虚拟机备份技术的特征是与平台无关的,这意味着所述技术可以在具有各种各样的处理器的各种各样市面上可买到的计算平台上被实施。
虽然本主题是以特定于结构特征和/或方法动作的语言被描述的,但应当理解在所附权利要求中限定的主题不一定局限于上述的特定特征或动作。而是,上述的特定特征或动作是作为实施权利要求的示例性形式而公开的。
Claims (11)
1.一种方法,包括:
接收(302)在第一主机设备上的虚拟机的虚拟机数据的改变;
保留(304)自从虚拟机数据上次被备份以来所接收的该虚拟机数据的改变的记录;
识别(306)执行虚拟机的增量备份的时间;
响应于到了执行增量备份的时间,而根据改变的记录,对一部分虚拟机数据进行备份(308);
识别(310)将虚拟机迁移到第二主机设备的时间;以及
响应于到了将虚拟机迁移到第二主机设备的时间,而将虚拟机数据和虚拟机数据的改变的记录迁移(312)到第二主机设备。
2.如在权利要求1中陈述的方法,其中改变的记录包括差分盘,其存储自从虚拟机数据上次被备份以来由虚拟机中运行的一个或多个应用所写入的虚拟机数据。
3.如在权利要求1中陈述的方法,其中虚拟机数据包括由虚拟机中运行的一个或多个应用所读出和/或写入的数据。
4.如在权利要求1中陈述的方法,还包括:
接收虚拟机的快照的改变;
保留自从虚拟机上次被备份以来所接收的所述快照的改变的记录;
响应于到了执行增量备份的时间,而根据所述快照的改变的记录,对一部分快照进行备份;以及
响应于到了将虚拟机迁移到第二主机设备的时间,而将所述快照的改变的记录和快照中的一个或多个迁移到第二主机设备。
5.如在权利要求1中陈述的方法,其中对一部分虚拟机数据进行备份包括对自从虚拟机数据上次被备份以来所接收的该虚拟机数据的改变进行备份。
6.一种计算设备,包括:
一个或多个处理器(502);以及
一个或多个计算机可读媒体(504),其上存储有多个指令,所述指令当由所述一个或多个处理器执行时使得所述一个或多个处理器:
接收(402)在第一主机设备上的虚拟机的快照的改变;
保留(404)自从虚拟机上次被备份以来所接收的所述快照的改变的记录;
识别(406)执行虚拟机的增量备份的时间;
响应于到了执行增量备份的时间,而根据改变的记录,对一部分快照进行备份(408);
识别(410)将虚拟机迁移到第二主机设备的时间;以及
响应于到了将虚拟机迁移到第二主机设备的时间,而将快照的改变的记录和快照中的一个或多个迁移(412)到第二主机设备。
7.如在权利要求6中陈述的计算设备,其中保留改变的记录是设置与还没有被备份的每个快照相关联的标记值,以指示该快照还没有进行备份。
8.如在权利要求6中陈述的计算设备,其中虚拟机的每个快照包括:在快照被捕获的时间由虚拟机使用的一个或多个存储设备的当前状态,在快照被捕获的时间由虚拟机使用的一个或多个存储器设备的当前状态,和在快照被捕获的时间用于虚拟机的配置信息的当前状态。
9.如在权利要求6中陈述的计算设备,所述多个指令还使得所述一个或多个处理器:
接收虚拟机的虚拟机数据的改变;
保留自从虚拟机数据上次被备份以来所接收的该虚拟机数据的改变的记录;
响应于到了执行增量备份的时间,而根据虚拟机数据的改变的记录,对一部分虚拟机数据进行备份;以及
响应于到了将虚拟机迁移到第二主机设备的时间,而将虚拟机数据和虚拟机数据的改变的记录迁移到第二主机设备。
10.如在权利要求6中陈述的计算设备,其中将快照中的一个或多个迁移到第二主机设备是将还没有被备份的快照和已被备份的快照迁移到第二主机设备,以及其中将快照的改变的记录迁移到第二主机设备是将哪些快照还没有被备份的指示迁移到第二主机设备。
11.一种计算机可读媒体,包括在其上存储的指令,所述指令响应于由计算设备的执行而使得该计算设备执行按照权利要求1-5中任一项的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/028,649 US8832029B2 (en) | 2011-02-16 | 2011-02-16 | Incremental virtual machine backup supporting migration |
US13/028,649 | 2011-02-16 | ||
US13/028649 | 2011-02-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102646064A true CN102646064A (zh) | 2012-08-22 |
CN102646064B CN102646064B (zh) | 2016-12-21 |
Family
ID=46637680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210033486.XA Active CN102646064B (zh) | 2011-02-16 | 2012-02-15 | 支持迁移的增量虚拟机备份 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8832029B2 (zh) |
CN (1) | CN102646064B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929745A (zh) * | 2012-09-26 | 2013-02-13 | 东软集团股份有限公司 | 一种虚拟设备状态数据的更新方法及装置 |
CN103092673A (zh) * | 2012-11-27 | 2013-05-08 | 北京航空航天大学 | 虚拟机快照处理方法及装置 |
CN103593263A (zh) * | 2013-11-20 | 2014-02-19 | 上海爱数软件有限公司 | 基于备份知识库和文件属性的hyper-v虚拟机备份方法 |
CN103678045A (zh) * | 2013-12-31 | 2014-03-26 | 曙光云计算技术有限公司 | 虚拟机的数据备份方法 |
CN103678037A (zh) * | 2013-11-26 | 2014-03-26 | 上海爱数软件有限公司 | 一种不删除原虚拟机的hyper-v虚拟化平台恢复方法 |
CN103778178A (zh) * | 2012-10-23 | 2014-05-07 | 国际商业机器公司 | 用于重新配置虚拟机的快照的方法和*** |
CN103838639A (zh) * | 2012-11-23 | 2014-06-04 | 华为技术有限公司 | 一种恢复虚拟磁盘元数据的方法、装置及*** |
CN104199687A (zh) * | 2014-08-14 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种在虚拟机***中处理数据的方法和装置 |
CN105745624A (zh) * | 2013-06-10 | 2016-07-06 | 卫盟软件股份公司 | 来自存储快照的虚拟机备份 |
CN105893184A (zh) * | 2016-03-30 | 2016-08-24 | 杭州华三通信技术有限公司 | 一种增量备份方法及装置 |
CN106187355A (zh) * | 2016-08-14 | 2016-12-07 | 余颖恒 | 一种麻栎树种植生物有机肥的制备方法 |
CN106407045A (zh) * | 2016-09-29 | 2017-02-15 | 郑州云海信息技术有限公司 | 一种数据灾难恢复方法、***及服务器虚拟化*** |
CN106484312A (zh) * | 2015-09-01 | 2017-03-08 | 北京金山云网络技术有限公司 | 一种虚拟机磁盘数据迁移方法及装置 |
WO2017092017A1 (zh) * | 2015-12-03 | 2017-06-08 | 华为技术有限公司 | 一种虚拟机备份信息迁移方法、装置和*** |
CN107003893A (zh) * | 2016-02-03 | 2017-08-01 | 华为技术有限公司 | 虚拟机备份方法、备份装置及宿主机 |
CN107111529A (zh) * | 2015-01-12 | 2017-08-29 | 微软技术许可有限责任公司 | 使用逻辑时间中的冗余的变化跟踪 |
CN108268331A (zh) * | 2015-04-16 | 2018-07-10 | 谷歌有限责任公司 | 虚拟机*** |
CN109426548A (zh) * | 2017-08-28 | 2019-03-05 | 三星电子株式会社 | 防止在不期望的主机服务器上运行脏虚拟机的方法和*** |
CN115658392A (zh) * | 2022-12-26 | 2023-01-31 | 国网信息通信产业集团有限公司 | 一种基于信创云底座的分级镜像备份调度方法及装置 |
Families Citing this family (62)
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 |
US9270785B2 (en) * | 2008-12-18 | 2016-02-23 | Citrix Systems, Inc. | System and method for a distributed virtual desktop infrastructure |
US20110252208A1 (en) * | 2010-04-12 | 2011-10-13 | Microsoft Corporation | Express-full backup of a cluster shared virtual machine |
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 |
US9552215B2 (en) * | 2011-03-08 | 2017-01-24 | Rackspace Us, Inc. | Method and system for transferring a virtual machine |
US8904384B2 (en) * | 2011-06-14 | 2014-12-02 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Reducing data transfer overhead during live migration of a virtual machine |
US9372827B2 (en) * | 2011-09-30 | 2016-06-21 | Commvault Systems, Inc. | Migration of an existing computing system to new hardware |
US8762992B2 (en) * | 2011-12-22 | 2014-06-24 | Symantec Corporation | Systems and methods for protecting virtual machines during physical-to-virtual conversions |
KR102081012B1 (ko) | 2012-10-08 | 2020-02-24 | 패트릭 순-시옹 | 분산 저장 시스템 및 방법 |
US20140108588A1 (en) * | 2012-10-15 | 2014-04-17 | Dell Products L.P. | System and Method for Migration of Digital Assets Leveraging Data Protection |
US9262212B2 (en) * | 2012-11-02 | 2016-02-16 | The Boeing Company | Systems and methods for migrating virtual machines |
US9282166B2 (en) | 2012-11-29 | 2016-03-08 | International Business Machines Corporation | Management infrastructure analysis for cloud migration |
US9292330B2 (en) | 2012-11-29 | 2016-03-22 | International Business Machines Corporation | Replacing virtual machine disks |
US9092837B2 (en) | 2012-11-29 | 2015-07-28 | International Business Machines Corporation | Use of snapshots to reduce risk in migration to a standard virtualized environment |
US9742873B2 (en) | 2012-11-29 | 2017-08-22 | International Business Machines Corporation | Adjustment to managed-infrastructure-as-a-service cloud standard |
US20140181038A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to categorize unprotected virtual machines |
US9286086B2 (en) | 2012-12-21 | 2016-03-15 | Commvault Systems, Inc. | Archiving virtual machines in a data storage system |
US9703584B2 (en) | 2013-01-08 | 2017-07-11 | Commvault Systems, Inc. | Virtual server agent load balancing |
US9965357B1 (en) * | 2013-03-13 | 2018-05-08 | EMC IP Holding Company LLC | Virtual backup and restore of virtual machines |
US10541898B2 (en) * | 2013-03-15 | 2020-01-21 | Brian Weinberg | System and method for creating, deploying, and administering distinct virtual computer networks |
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 |
US9436751B1 (en) * | 2013-12-18 | 2016-09-06 | Google Inc. | System and method for live migration of guest |
US10318386B1 (en) * | 2014-02-10 | 2019-06-11 | Veritas Technologies Llc | Systems and methods for maintaining remote backups of reverse-incremental backup datasets |
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 |
US9292327B1 (en) * | 2014-05-29 | 2016-03-22 | Emc Corporation | Optimization for incremental backup of VMS |
US9189342B1 (en) * | 2014-05-29 | 2015-11-17 | Emc Corporation | Generic process for determining child to parent inheritance for fast provisioned or linked clone virtual machines |
WO2015199845A1 (en) * | 2014-06-26 | 2015-12-30 | Hewlett-Packard Development Company, L.P. | Virtual machine data protection |
US11210120B2 (en) * | 2014-06-30 | 2021-12-28 | Vmware, Inc. | Location management in a volume action service |
US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
US20160062780A1 (en) * | 2014-08-27 | 2016-03-03 | Lenovo (Singapore) Pte. Ltd. | Pausing virtual machine based on idle state |
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 |
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 |
US9817686B2 (en) | 2014-12-09 | 2017-11-14 | The Boeing Company | Systems and methods for securing virtual machines |
US9880904B2 (en) * | 2014-12-12 | 2018-01-30 | Ca, Inc. | Supporting multiple backup applications using a single change tracker |
US10078555B1 (en) | 2015-04-14 | 2018-09-18 | EMC IP Holding Company LLC | Synthetic full backups for incremental file backups |
US9946603B1 (en) * | 2015-04-14 | 2018-04-17 | EMC IP Holding Company LLC | Mountable container for incremental file backups |
US9996429B1 (en) | 2015-04-14 | 2018-06-12 | EMC IP Holding Company LLC | Mountable container backups for files |
US9256498B1 (en) * | 2015-06-02 | 2016-02-09 | Zerto Ltd. | System and method for generating backups of a protected system from a recovery system |
US9898325B2 (en) * | 2015-10-20 | 2018-02-20 | Vmware, Inc. | Configuration settings for configurable virtual components |
US10592350B2 (en) | 2016-03-09 | 2020-03-17 | Commvault Systems, Inc. | Virtual server cloud file system for virtual machine restore to cloud operations |
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 |
US10489273B2 (en) | 2016-10-20 | 2019-11-26 | Microsoft Technology Licensing, Llc | Reuse of a related thread's cache while recording a trace file of code execution |
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 |
US10417433B2 (en) * | 2017-01-24 | 2019-09-17 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Encryption and decryption of data owned by a guest operating system |
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 |
US10318332B2 (en) * | 2017-04-01 | 2019-06-11 | Microsoft Technology Licensing, Llc | Virtual machine execution tracing |
US10649856B2 (en) | 2017-09-01 | 2020-05-12 | International Business Machines Corporation | Concurrent writing to a file during backup of the file |
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 |
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 |
US11061732B2 (en) * | 2019-05-14 | 2021-07-13 | EMC IP Holding Company LLC | System and method for scalable backup services |
CN111090399A (zh) * | 2019-12-13 | 2020-05-01 | 北京浪潮数据技术有限公司 | 一种磁盘数据的在线迁移方法、装置、设备及介质 |
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 |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
US11841772B2 (en) * | 2021-02-01 | 2023-12-12 | Dell Products L.P. | Data-driven virtual machine recovery |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414277A (zh) * | 2008-11-06 | 2009-04-22 | 清华大学 | 一种基于虚拟机的按需增量恢复容灾***及方法 |
US20100082922A1 (en) * | 2008-09-30 | 2010-04-01 | Vmware, Inc. | Virtual machine migration using local storage |
US20100228913A1 (en) * | 2009-03-06 | 2010-09-09 | Vmware, Inc. | Method for tracking changes in virtual disks |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7007044B1 (en) | 2002-12-26 | 2006-02-28 | Storage Technology Corporation | Storage backup system for backing up data written to a primary storage device to multiple virtual mirrors using a reconciliation process that reflects the changing state of the primary storage device over time |
US7707372B1 (en) | 2004-06-30 | 2010-04-27 | Symantec Operating Corporation | Updating a change track map based on a mirror recovery map |
US7447854B1 (en) | 2005-12-30 | 2008-11-04 | Vmware, Inc. | Tracking and replicating changes to a virtual disk |
CA2547047A1 (en) | 2006-05-15 | 2007-11-15 | Embotics Corporation | Management of virtual machines using mobile autonomic elements |
US8239646B2 (en) | 2007-07-31 | 2012-08-07 | Vmware, Inc. | Online virtual machine disk migration |
-
2011
- 2011-02-16 US US13/028,649 patent/US8832029B2/en active Active
-
2012
- 2012-02-15 CN CN201210033486.XA patent/CN102646064B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100082922A1 (en) * | 2008-09-30 | 2010-04-01 | Vmware, Inc. | Virtual machine migration using local storage |
CN101414277A (zh) * | 2008-11-06 | 2009-04-22 | 清华大学 | 一种基于虚拟机的按需增量恢复容灾***及方法 |
US20100228913A1 (en) * | 2009-03-06 | 2010-09-09 | Vmware, Inc. | Method for tracking changes in virtual disks |
Cited By (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929745B (zh) * | 2012-09-26 | 2015-02-18 | 东软集团股份有限公司 | 一种虚拟设备状态数据的更新方法及装置 |
CN102929745A (zh) * | 2012-09-26 | 2013-02-13 | 东软集团股份有限公司 | 一种虚拟设备状态数据的更新方法及装置 |
CN103778178A (zh) * | 2012-10-23 | 2014-05-07 | 国际商业机器公司 | 用于重新配置虚拟机的快照的方法和*** |
CN103838639B (zh) * | 2012-11-23 | 2018-04-27 | 华为技术有限公司 | 一种恢复虚拟磁盘元数据的方法、装置及*** |
CN103838639A (zh) * | 2012-11-23 | 2014-06-04 | 华为技术有限公司 | 一种恢复虚拟磁盘元数据的方法、装置及*** |
CN103092673A (zh) * | 2012-11-27 | 2013-05-08 | 北京航空航天大学 | 虚拟机快照处理方法及装置 |
CN103092673B (zh) * | 2012-11-27 | 2015-09-16 | 北京航空航天大学 | 虚拟机快照处理方法及装置 |
CN105745624A (zh) * | 2013-06-10 | 2016-07-06 | 卫盟软件股份公司 | 来自存储快照的虚拟机备份 |
US9823877B2 (en) | 2013-06-10 | 2017-11-21 | Veeam Software Ag | Virtual machine backup from storage snapshot |
CN105745624B (zh) * | 2013-06-10 | 2018-12-07 | 卫盟软件股份公司 | 来自存储快照的虚拟机备份 |
CN103593263A (zh) * | 2013-11-20 | 2014-02-19 | 上海爱数软件有限公司 | 基于备份知识库和文件属性的hyper-v虚拟机备份方法 |
CN103593263B (zh) * | 2013-11-20 | 2017-03-01 | 上海爱数信息技术股份有限公司 | 基于备份知识库和文件属性的hyper‑v虚拟机备份方法 |
CN103678037A (zh) * | 2013-11-26 | 2014-03-26 | 上海爱数软件有限公司 | 一种不删除原虚拟机的hyper-v虚拟化平台恢复方法 |
CN103678045A (zh) * | 2013-12-31 | 2014-03-26 | 曙光云计算技术有限公司 | 虚拟机的数据备份方法 |
CN103678045B (zh) * | 2013-12-31 | 2017-11-21 | 曙光云计算集团有限公司 | 虚拟机的数据备份方法 |
CN104199687A (zh) * | 2014-08-14 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种在虚拟机***中处理数据的方法和装置 |
CN104199687B (zh) * | 2014-08-14 | 2017-10-20 | 北京京东尚科信息技术有限公司 | 一种在虚拟机***中处理数据的方法和装置 |
CN107111529B (zh) * | 2015-01-12 | 2020-04-28 | 微软技术许可有限责任公司 | 使用逻辑时间中的冗余的变化跟踪 |
CN107111529A (zh) * | 2015-01-12 | 2017-08-29 | 微软技术许可有限责任公司 | 使用逻辑时间中的冗余的变化跟踪 |
CN108268331A (zh) * | 2015-04-16 | 2018-07-10 | 谷歌有限责任公司 | 虚拟机*** |
CN108268331B (zh) * | 2015-04-16 | 2019-05-31 | 谷歌有限责任公司 | 虚拟机*** |
CN106484312A (zh) * | 2015-09-01 | 2017-03-08 | 北京金山云网络技术有限公司 | 一种虚拟机磁盘数据迁移方法及装置 |
CN106484312B (zh) * | 2015-09-01 | 2019-07-26 | 北京金山云网络技术有限公司 | 一种虚拟机磁盘数据迁移方法及装置 |
CN107046810A (zh) * | 2015-12-03 | 2017-08-15 | 华为技术有限公司 | 一种虚拟机备份信息迁移方法、装置和*** |
WO2017092017A1 (zh) * | 2015-12-03 | 2017-06-08 | 华为技术有限公司 | 一种虚拟机备份信息迁移方法、装置和*** |
US10678648B2 (en) | 2015-12-03 | 2020-06-09 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for migrating virtual machine backup information |
CN107003893A (zh) * | 2016-02-03 | 2017-08-01 | 华为技术有限公司 | 虚拟机备份方法、备份装置及宿主机 |
CN107003893B (zh) * | 2016-02-03 | 2019-11-12 | 华为技术有限公司 | 虚拟机备份方法、备份装置及宿主机 |
CN105893184B (zh) * | 2016-03-30 | 2019-03-15 | 新华三技术有限公司 | 一种增量备份方法及装置 |
CN105893184A (zh) * | 2016-03-30 | 2016-08-24 | 杭州华三通信技术有限公司 | 一种增量备份方法及装置 |
CN106187355A (zh) * | 2016-08-14 | 2016-12-07 | 余颖恒 | 一种麻栎树种植生物有机肥的制备方法 |
CN106407045A (zh) * | 2016-09-29 | 2017-02-15 | 郑州云海信息技术有限公司 | 一种数据灾难恢复方法、***及服务器虚拟化*** |
CN106407045B (zh) * | 2016-09-29 | 2019-09-24 | 郑州云海信息技术有限公司 | 一种数据灾难恢复方法、***及服务器虚拟化*** |
CN109426548A (zh) * | 2017-08-28 | 2019-03-05 | 三星电子株式会社 | 防止在不期望的主机服务器上运行脏虚拟机的方法和*** |
CN109426548B (zh) * | 2017-08-28 | 2023-11-28 | 三星电子株式会社 | 防止在不期望的主机服务器上运行脏虚拟机的方法和*** |
CN115658392A (zh) * | 2022-12-26 | 2023-01-31 | 国网信息通信产业集团有限公司 | 一种基于信创云底座的分级镜像备份调度方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102646064B (zh) | 2016-12-21 |
US20120209812A1 (en) | 2012-08-16 |
US8832029B2 (en) | 2014-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102646064A (zh) | 支持迁移的增量虚拟机备份 | |
US8949183B2 (en) | Continuous and asynchronous replication of a consistent dataset | |
US9785523B2 (en) | Managing replicated virtual storage at recovery sites | |
US9336132B1 (en) | Method and system for implementing a distributed operations log | |
US9235482B2 (en) | Consistent data retrieval in a multi-site computing infrastructure | |
CN104216793B (zh) | 应用程序备份、恢复的方法及设备 | |
CN103793258A (zh) | 基于管理程序的服务器复制***及其方法 | |
US20190243725A1 (en) | Protection of infrastructure-as-a-service workloads in public cloud | |
CN102750317A (zh) | 数据持久化处理方法、装置及数据库*** | |
US11281543B2 (en) | Application-level recovery from an enterprise-level image copy | |
CN103885811A (zh) | 虚拟机***全***在线迁移的方法、***与装置 | |
US11467924B2 (en) | Instant recovery of databases | |
US20190227711A1 (en) | Tape backup in large scale distributed systems | |
US9111570B1 (en) | Replication of tape cartridge data | |
US20220043573A1 (en) | Releasing data storage tracks while maintaining logical corruption protection | |
GB2509930A (en) | Data backup recovery | |
US9952780B2 (en) | Method for retrieving data from a tape drive | |
US9141979B1 (en) | Virtual stand-in computing service for production computing service | |
US20200065021A1 (en) | Live upgrade of storage device driver using shim application | |
US20210357122A1 (en) | Synchronizing a stale component of a distributed object using a delta component during maintenance | |
US11372732B2 (en) | Systems and methods for agentless and accelerated backup of a database | |
CN107894873A (zh) | 一种存储虚拟化***数据处理实现方法 | |
KR101162398B1 (ko) | 체크포인트 및 일치 표지 | |
CN114428698A (zh) | 一种云备份管理方法、装置及设备 | |
CN114791789A (zh) | 一种虚拟机容错***、方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 20150611 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150611 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 |