CN110413370A - 用于实现依赖原始设备映射盘的虚拟机的数据备份的方法和系统 - Google Patents
用于实现依赖原始设备映射盘的虚拟机的数据备份的方法和系统 Download PDFInfo
- Publication number
- CN110413370A CN110413370A CN201910360290.3A CN201910360290A CN110413370A CN 110413370 A CN110413370 A CN 110413370A CN 201910360290 A CN201910360290 A CN 201910360290A CN 110413370 A CN110413370 A CN 110413370A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- disk
- copy
- logical volume
- rdm
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000013507 mapping Methods 0.000 title abstract description 15
- 238000003860 storage Methods 0.000 claims abstract description 91
- 238000004519 manufacturing process Methods 0.000 claims description 81
- 238000004590 computer program Methods 0.000 claims description 24
- 238000009826 distribution Methods 0.000 claims description 21
- 230000010076 replication Effects 0.000 claims description 11
- 239000003795 chemical substances by application Substances 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 26
- 230000008569 process Effects 0.000 description 23
- 230000005540 biological transmission Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 18
- 230000007246 mechanism Effects 0.000 description 12
- 238000012790 confirmation Methods 0.000 description 10
- 238000011084 recovery Methods 0.000 description 10
- 238000007596 consolidation process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000012423 maintenance Methods 0.000 description 8
- 230000003139 buffering effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004064 recycling Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000002688 persistence Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003362 replicative effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 239000011800 void material Substances 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000005389 magnetism Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000037361 pathway Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 206010011878 Deafness Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000010370 hearing loss Effects 0.000 description 1
- 231100000888 hearing loss Toxicity 0.000 description 1
- 208000016354 hearing loss disease Diseases 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- 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/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
-
- 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/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- 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/2053—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 persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- 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/2097—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 maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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/45562—Creating, deleting, cloning virtual machine instances
-
- 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/45579—I/O management, e.g. providing access to device drivers or storage
-
- 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/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本公开涉及用于实现依赖原始设备映射盘的虚拟机的数据备份的方法和系统,并提供了一种用于为依赖原始数据映射(RDM)盘存储其状态和/或数据的虚拟机实现数据备份的方法和系统。传统的虚拟机备份方法以作为虚拟机盘文件的副本的虚拟机快照的产生和存储为中心,其在各个给定的时间点存储虚拟机的状态和/或数据。然而,这些传统的虚拟机备份方法至少目前不支持尤其访问及合并RDM盘上的信息的虚拟机的虚拟机快照的产生和存储。因此,在本文中公开的方法和系统便于备份与依赖RDM盘的虚拟机相关的状态和/或数据。
Description
技术领域
本公开涉及虚拟机的数据备份。
背景技术
备份虚拟机的传统且最常用的途径需要创建虚拟机快照并将虚拟机快照滚动到备份介质上。对于依赖原始设备映射盘的虚拟机,这种传统途径带来了一些挑战,因为这种传统途径至少目前不支持为依赖RDM盘的虚拟机创建虚拟机快照。
发明内容
根据本公开的第一个方面,公开了一种用于备份虚拟机的方法。该方法包括:从已分发缓冲器(ADB)选择包括虚拟机快照的已分发条目(ADE);识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;识别至少包括所述副本盘的一致性组(CG);将针对所述CG的访问模式设置为记录访问模式;停用可操作地连接至所述副本盘的副本虚拟机(RVM);还原所述虚拟机快照以获得逻辑卷;和使用代理虚拟机(PVM)备份所述逻辑卷。
根据本公开的第二个方面,公开了一种系统。该系统包括:第一计算机处理器;在所述第一计算机处理器上执行的代理虚拟机(PVM);和远程连续复制代理(CRA)。该CRA可操作地连接至所述PVM,并被编程为:从已分发缓冲器(ADB)选择包括虚拟机快照的已分发条目(ADE);识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;识别至少包括所述副本盘的一致性组(CG);将针对所述CG的访问模式设置为记录访问模式;停用可操作地连接至所述副本盘的副本虚拟机(RVM);还原所述虚拟机快照以获得逻辑卷;和使用所述PVM备份所述逻辑卷。
根据本公开的第三个方面,公开了非暂时性计算机可读介质(CRM)。该CRM包括计算机可读程序代码,所述计算机可读程序代码在由计算机处理器执行时使所述计算机处理器能够:从已分发缓冲器(ADB)选择包括虚拟机快照的已分发缓冲器条目(ADE);识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;识别至少包括所述副本盘的一致性组(CG);将针对所述CG的访问模式设置为记录访问模式;停用可操作地连接至所述副本盘的副本虚拟机(RVM);还原所述虚拟机快照以获得逻辑卷;和使用代理虚拟机(PVM)备份所述逻辑卷。
附图说明
图1示出了本发明的一个或多个实施例的系统;
图2A示出了本发明的一个或多个实施例的生产站点;
图2B示出了本发明的一个或多个实施例的远程站点;
图3A示出了本发明的一个或多个实施例的复制集和一致性组;
图3B示出了本发明的一个或多个实施例的日志卷;
图4A-4C示出了描述本发明的一个或多个实施例的用于保护复制集的方法的流程图;
图5A和5B示出了描述本发明的一个或多个实施例的用于保护复制集的方法的流程图;
图6A和6B示出了描述本发明的一个或多个实施例的用于实现依赖原始设备映射盘的虚拟机的数据备份的方法的流程图;
图7示出了本发明的一个或多个实施例的计算系统。
具体实施方式
现在将参照附图详细说明本发明的特定实施例。在以下对本发明的实施例的详细说明中,阐述了许多具体细节,以提供对本发明的更透彻的理解。但是,对于本领域普通技术人员来说显而易见的是,实践本发明时可以无需这些具体细节。在其他实例中未详细说明公知的特征,以避免不必要地使说明复杂化。
在以下对图1-7的说明中,在本发明的多个实施例中参照某个附图说明的任何部件可以等同于参照任何其他附图说明的一个或多个以类似方式命名的部件。为了简洁起见,不会参照每个附图重复说明这些部件。因此,每个附图的部件的每个实施例通过引用结合在此,并假定其可选地存在于具有一个或多个以相似方式命名的部件的每个其他附图中。此外,根据本发明的多个实施例,对附图的部件的任何说明应理解为可选的实施例,这种可选的实施例可以是除了相对于任何其他附图中的以相似方式命名的相应部件说明的实施例之外的实施例,与这些实施例结合实施,或者代替这些实施例。
在整个申请中,序数(例如第一、第二、第三等)可用作元素(即,申请中的任何名词)的形容词。除非明确公开(例如通过使用术语“之前”、“之后”、“单个”和其他此类术语),否则使用序数不一定暗示或产生元素的任何特定排序,也不限制任何元素仅为单个元素。相反,序数的使用是为了区分元素。举例来说,第一元素不同于第二元素,并且第一元素可涵盖不止一个元素,并且在元素排序中可在第二元素之后(或之前)。
总体来说,本发明的实施例涉及一种用于为依赖原始数据映射(RDM)盘存储其状态和/或数据的虚拟机实现数据备份的方法和系统。具体而言,本发明的一个或多个实施例解决了针对备份基于RDM盘的虚拟机状态和/或数据的解决方案中的现有缺陷。传统的虚拟机备份方法以作为虚拟机盘文件(例如虚拟机盘(VMDK))的副本的虚拟机快照的产生和存储为中心,该虚拟机快照在各个给定的时间点存储虚拟机的状态和/或数据。但是,这些传统的虚拟机备份方法至少目前不支持尤其访问和合并RDM盘上的信息的虚拟机的虚拟机快照的产生和存储。因此,在此公开的方法和系统便于备份与依赖RDM盘的虚拟机有关的状态和/或数据,从而减少现有虚拟机备份技术的限制和/或缺点。此外,在此公开的方法和系统可使用副本RDM盘而不是生产或源RDM盘来执行,以免干扰或影响可能依赖生产/源RDM盘的不间断使用的日常操作。
在下文中可能参照MEDITECH虚拟机来说明本发明的一个或多个实施例,该MEDITECH虚拟机可指配置为在一个或多个MEDITECH应用(即,由美国马萨诸塞州韦斯特伍德市的Medical Information Technology,Inc.(MEDITECH)提供的计算机程序或服务)上执行的虚拟机。MEDITECH应用针对医疗保健信息管理,实质上涉及患者医疗信息(例如电子病历(EMR)和/或电子健康档案(EHR))的维护和合并。但是,本领域普通技术人员应理解,可实践本发明用于备份与依赖一个或多个RDM盘或与这些RDM盘接口的任何虚拟机相关的虚拟机状态和/或数据。
此外,下文中说明的本发明的一个或多个实施例可能属于存在于远程站点的一部分或所有副本盘是RDM格式盘的情况。但是,本领域普通技术人员应理解,在存在于远程站点的一部分或所有副本盘是非RDM格式盘的情况下也可实践本发明。例如,存在于远程站点的一部分或所有副本盘可涵盖虚拟机盘(VMDK)格式盘。
图1示出了本发明的一个或多个实施例的系统。系统(100)可包括生产站点(102)、远程站点(110)和MEDITECH备份系统(MBS)(116)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,上述组件可通过网络(108)(例如局域网(LAN)、广域网(WAN)(例如因特网)、移动网络等)直接或间接地彼此连接。可使用有线和/或无线连接的任何组合来实现网络(108)。在上述组件间接连接的实施例中,可存在便于通信和/或信息交换的其他网络组件和/或系统(例如交换机、路由器、网关等)。此外,上述组件可使用有线和/或无线通信协议的任何组合彼此通信。
在本发明的一个实施例中,生产站点(102)可涉及主数据中心。主数据中心可指在其上可进行针对一个或多个使用场景的日常操作的计算基础设施。而计算基础设施可指设计为服务于所述一个或多个使用场景的各种信息技术(IT)组件(例如服务器、存储、联网、管理等)的配置。在本发明的一个实施例中,生产站点(102)可涉及主数据中心,该主数据中心在绝大多数情况下保持活动状态,因此很少经历不活动状况。生产站点(102)的不活动状况可能是由各种原因引起的,包括但不限于定期维护、意外停电和故障转移(例如由于网络安全攻击或威胁引起的硬件故障、数据损坏和/或软件异常)。在本发明的一个实施例中,生产站点(102)可包括可操作地连接至生产存储系统(PSS)(106)的生产计算系统(PCS)(104)。这些子组件中的每一个将在下文中说明。
在本发明的一个实施例中,PCS(104)可以是用于各种目的的任何计算系统。例如,PCS(104)可用于执行大规模和复杂的数据处理。PCS(104)可在一个或多个服务器(未示出)上实现。每个服务器可以是物理服务器(即,在数据中心内)或虚拟服务器(即,可以是基于云的)。在本发明的一个实施例中,PCS(104)可在类似于图7中所示的示例性计算系统的一个或多个计算系统上实现。PCS(104)可以是提供计算环境的计算系统,在该计算环境中,虚拟机可在其上承载一个或多个MEDITECH应用程序(如上所述)或任何其他计算机应用程序/程序。实质上,PCS(104)可以是能够同时为一个或多个用户提供服务的任何计算系统。此外,在本发明的一个实施例中,PCS(104)可编程为适当地分配计算、存储、联网和/或虚拟化资源(例如处理器核心、存储器和存储字节、网络带宽和虚拟机),以执行可由一个或多个用户在其上实例化的各种进程或任务。此外,PCS(104)可包括以下功能:从一个或多个用户客户端(即,由一个或多个用户操作的计算系统)(未示出)接收应用程序编程接口(API)请求;将API请求转给适当的子组件(例如虚拟机)进行处理;便于子组件与PSS(106)或远程站点(110)之间的输入-输出(IO)通信;以及至少基于API请求的处理将结果(如果有)返回给用户客户端。PCS(104)的例子包括但不限于下列的一种或多种:台式计算机、便携式计算机、智能电话、平板计算机、游戏控制台、服务器、大型机、或者它们的任何组合。
在本发明的一个实施例中,PSS(106)可以是用于合并各种形式的数据的任何存储阵列或介质。PSS(106)可使用任何类型的存储单元和/或装置(例如文件系统、数据库、各种表、或任何其他存储机制)来实现。在本发明的一个实施例中,PSS(106)可使用多个存储单元和/或装置来实现,这些存储单元和/或装置可以是相同类型或不同类型的。此外,PSS(106)可使用持久性(即,非易失性)存储介质来实现,例如光存储装置、磁性存储装置、NAND闪存、NOR闪存、磁性随机存取存储器(M-RAM)、自旋扭矩磁性RAM(ST-RAM)、相变存储器(PCM)、或定义为非易失性存储类存储器(SCM)的任何其他存储器。在下文中将参照图2A进一步详细说明构成生产站点(102)的PCS(104)和PSS(106)。
在本发明的一个实施例中,远程站点(110)可涉及辅助或备份数据中心。辅助/备份数据中心可指计算基础设施(如上所述),在该计算基础设施上通常不执行针对一个或多个使用场景的日常操作,除非相应的主数据中心(即,生产站点(102))因任何原因变为不活动状态。也就是说,与生产站点(102)不同的是,远程站点(110)可在绝大多数情况下保持不活动状态,从而仅在生产站点(102)经历预定维护或故障转移等情况时激活一段时间以承担生产站点(102)的职责。因此,在本发明的一个实施例中,远程站点(110)可以是用于生产站点(102)的数据备份、存档和/或灾难恢复(DR)数据中心。因此,生产站点(102)和远程站点(110)可按主动-被动(或主用-备用)配置绑定。而且,在本发明的一个实施例中,远程站点(110)可包括可操作地连接至远程存储系统(RSS)(114)的远程计算系统(RCS)(112)。这些子组件中的每一个将在下文中说明。
在本发明的一个实施例中,RCS(112)像PCS(104)一样也可以是用于各种目的的任何计算系统。RCS(112)可利用一个或多个服务器(未示出)实现。每个服务器可以是物理服务器(即,在数据中心内)或虚拟服务器(即,可以是基于云的)。在本发明的一个实施例中,RCS(112)可利用类似于图7中所示的示例性计算系统的一个或多个计算系统实现。RCS(112)可以是提供计算环境的计算系统,在该计算环境中,虚拟机可在其上承载一个或多个MEDITECH应用程序(如上所述)或任何其他计算机应用程序/程序。而且,RCS(112)可以是能够同时为一个或多个用户提供服务的任何计算系统。在本发明的一个实施例中,在承担PCS(104)的职责时,RCS(112)可编程为适当地分配计算、存储、联网和/或虚拟化资源(例如处理器核心、存储器和存储字节、网络带宽和虚拟机),以执行可由一个或多个用户在其上实例化的各种进程或任务。此外,RCS(112)可包括以下功能:从一个或多个用户客户端(即,由一个或多个用户操作的计算系统)(未示出)接收应用程序编程接口(API)请求;将API请求转给适当的子组件(例如虚拟机)进行处理;便于子组件与RSS(114)或生产站点(102)之间的输入-输出(IO)通信;以及至少基于API请求的处理将结果(如果有)返回给用户客户端。RCS(112)的例子包括但不限于下列的一种或多种:台式计算机、便携式计算机、智能电话、平板计算机、游戏控制台、服务器、大型机、或者它们的任何组合。
在本发明的一个实施例中,RSS(114)像PSS(106)一样也可以是用于合并各种形式的数据的任何存储阵列或介质。RSS(114)可使用任何类型的存储单元和/或装置(例如文件系统、数据库、各种表、或任何其他存储机制)来实现。在本发明的一个实施例中,RSS(114)可使用多个存储单元和/或装置来实现,这些存储单元和/或装置可以是相同类型或不同类型的。此外,RSS(114)可使用持久性(即,非易失性)存储介质来实现,例如光存储装置、磁性存储装置、NAND闪存、NOR闪存、磁性随机存取存储器(M-RAM)、自旋扭矩磁性RAM(ST-RAM)、相变存储器(PCM)、或定义为非易失性存储类存储器(SCM)的任何其他存储器。在下文中将参照图2B进一步详细说明构成远程站点(110)的RCS(112)和RSS(114)。
在本发明的一个实施例中,远程站点(110)可存在于与生产站点(102)所在的物理地点不同的一个或多个物理地点。组件的这种地理分布是减轻在任何一个特定物理地点遭受的意外断电和网络安全攻击/威胁入侵的影响的一种策略。此外,在本发明的一个实施例中,RCS(112)和/或RSS(114)可采用与在PCS(104)和/或PSS(106)上可采用的资源配置相同或不同的资源配置(例如计算、存储和/或网络资源)。
在本发明的一个实施例中,远程站点(110)可在给定时间内保存与存储在生产站点(102)的信息完全相同的信息(例如虚拟机状态、虚拟机数据等)。生产站点(102)与远程站点(110)之间的信息同步可利用任何一种或多种现有的数据同步机制和/或协议来进行。举例来说,生产站点(102)和远程站点(110)可包括通过光纤通道(FC)和/或互联网协议(IP)连接彼此通信的功能。此外,在本发明的一个实施例中,生产站点(102)和远程站点(110)可有规律地或定期地彼此同步信息。信息同步例如可采取交换快照的形式,这种快照包含虚拟机向相应RDM盘(在下文中说明)写入的内容。
在本发明的一个实施例中,MBS(116)可以是第三方数据备份、存档和/或灾难恢复(DR)存储系统。MBS(116)可在一个或多个服务器(未示出)上实现。每个服务器可以是物理服务器(即,在数据中心内)或虚拟服务器(即,可以是基于云的)。在本发明的一个实施例中,MBS(116)可在类似于图7中所示的示例性计算系统的一个或多个计算系统上实现。此外,MBS(116)可包括以下功能:从远程站点(110)接收与依赖RDM盘的虚拟机有关的复制虚拟机状态和/或数据;存储接收的复制虚拟机状态/数据;并向远程站点(110)反馈所接收信息的确认。此外,作为存储系统,MBS(116)还可使用任何类型的存储单元和/或装置(例如文件系统、数据库、各种表、或任何其他存储机制)来实现。在本发明的一个实施例中,MBS(116)可使用多个存储单元和/或装置来实现,这些存储单元和/或装置可以是相同类型或不同类型的,并且可位于相同的物理站点或不同的物理站点。此外,MBS(116)可使用持久性(即,非易失性)存储介质来实现,例如光存储装置、磁性存储装置、NAND闪存、NOR闪存、磁性随机存取存储器(M-RAM)、自旋扭矩磁性RAM(ST-RAM)、相变存储器(PCM)、或定义为非易失性存储类存储器(SCM)的任何其他存储器。
虽然图1示出了组件的一种特定配置,但是在不脱离本发明的范围的情况下,也可使用其他系统配置。例如,系统(100)可包括另外的远程站点(110),以进一步缓解故障转移和/或灾难恢复事件。
图2A示出了本发明的一个或多个实施例的生产站点。如上所述,生产站点(200)可包括生产计算系统(PCS)(202),该生产计算系统可以是用于各种目的的任何计算系统。PCS(202)可包括一个或多个源虚拟机(SVM)(204A-204N)、生产虚拟机管理器(VMH)(206)、生产写入分流器(PWS)(208)、以及生产连续复制代理(CRA)(210)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,SVM(204A-204N)可指主要或生产虚拟机。总体来说,SVM(204A-204N)可以是在主机(即,PCS(202))的底层硬件上执行的计算机程序。具体而言,SVM(204A-204N)可以是模拟物理计算系统的计算机程序(参见图7的示例),因此它提供一个独立的执行环境,其他操作系统(OS)(可能与主机OS不同)和其他计算机程序可在该执行环境中执行。在本发明的一个实施例中,每个SVM(204A-204N)可包括通过生产VMH(206)读写存在于生产存储系统(PSS)(212)上的一个或多个源原始设备映射(RDM)盘(214A-214N)(在下文中说明)的功能。
在本发明的一个实施例中,生产VMH(206)可以是在PCS(202)的底层硬件上执行的计算机程序或进程(即,计算机程序的实例)。具体而言,生产VMH(206)可以是负责管理所述一个或多个SVM(204A-204N)的计算机程序/进程,它也可在PCS(202)上执行。因此,生产VMH(206)可包括以下功能:创建或删除任何SVM(204A-204N);分配或回收主机(即,PCS(202))的资源以支持一个或多个SVM(204A-204N)及其各自的工作负载(例如客户OS、应用程序等)的执行;以及保持所述一个或多个SVM(204A-204N)与其他生产站点(200)组件(例如PWS(208)、生产CRA(210)和PSS(212))之间的站内通信。本领域普通技术人员应理解,在不脱离本发明的范围的情况下,生产VMH(206)可执行其他功能。
在本发明的一个实施例中,PWS(208)可以是在PCS(202)的底层硬件上执行的计算机程序或进程(即,计算机程序的实例)。具体而言,PWS(208)可以是负责分流或复制从一个或多个SVM(204A-204N)经由生产VMH(206)向一个或多个源RDM盘(214A-214N)进行的输入-输出(IO)写入的计算机程序/进程。在分流或复制写入内容时,PWS(208)可产生写入副本(即,写入内容的精确副本/复制),PWS(208)随后将该写入副本路由到生产CRA(210)。同时,原始写入可沿着其原始的预定路径传送至PSS(212)。
在本发明的一个实施例中,生产CRA(210)可以是负责管理与存在于生产站点(200)的数据的数据保护和复制有关的方面的物理或虚拟化装置(即,物理设备或计算机程序)。此外,生产CRA(210)可实现用于灾难恢复目的的数据备份和/或存档功能。为此,生产CRA(210)可包括将生产站点(200)数据的复制信息共享至远程站点(230)以实现冗余存储和/或检索的功能。此外,根据本发明的一个或多个实施例,生产CRA(210)可包括执行图4A-4C中所列的一部分或所有步骤的功能,这些步骤涉及复制集的保护(在下文中说明)。举例来说,生产CRA(210)可以是由美国马萨诸塞州的Dell EMC of Hopkinton公司制造的RecoverPoint for Virtual Machines(RP4VM)装置。
在本发明的一个实施例中,生产站点(200)还可包括PSS(212),该PSS(212)可以可操作地连接至PCS(202)。如上所述,PSS(212)可以是用于合并各种形式的数据的任何存储阵列或介质。PSS(212)可包括一个或多个源RDM盘(214A-214N)和生产日志卷(PJV)(216)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,源RDM盘(214A-214N)可涉及主RDM盘或生产RDM盘,该RDM盘可存储与一个或多个SVM(204A-204N)相关的原始数据副本或版本。具体而言,源RDM盘(214A-214N)可合并至少与所述一个或多个SVM(2014A_2014N)相关联(即,由其产生和/或使用)的数据的时间点历史。此外,一般来说,RDM盘可以是物理存储设备(例如硬盘驱动器(HDD)、固态驱动器(SSD)等),该物理存储设备采用RDM机制来支持由虚拟机(即,一个或多个SVM(204A-204N))进行的磁盘存取。RDM机制可涉及支持虚拟机直接访问存储逻辑单元号(LUN)。存储LUN可以是物理存储设备(例如源RDM盘(214A-214N))与想访问它的计算机程序/应用程序(例如SVM(204A-204N))之间的逻辑抽象或虚拟化层。此外,存储LUN可格式化为任何文件系统(例如新技术文件系统(NTFS)、文件分配表(FAT)等)的格式,这能消除创建虚拟机文件系统(VMFS)数据存储库然后在存储LUN上存储虚拟机盘(VMDK)的要求。
在本发明的一个实施例中,为了与源RDM盘(214A-214N)交互,可创建映射文件,该映射文件随后可在SVM(204A-204N)的配置文件中引用/从该配置文件引用。该映射文件可指向与源RDM盘(214A-214N)相关联的存储LUN。此外,该映射文件可作为源RDM盘(214A-214N)的代理,并且实质上包括可用于管理和重定向对源RDM盘(214A-214N)的访问的元数据。更具体地说,在与源RDM盘(214A-214N)交互时,SVM(204A-204N)可读取映射文件,并随后直接向源RDM盘的存储LUN(214A-214N)提交读取和/或写入请求。
在本发明的一个实施例中,PJV(216)可指合并可能正在等待分发至远程站点(230)的虚拟机快照的一个或多个物理存储设备。PJV(216)还可合并可能已经分发至远程站点(230)的虚拟机快照。在本发明的一个实施例中,虚拟机快照可指与虚拟机(即,SVM(204A-2014N))有关的状态和/或数据的任何粒度的精确副本。在本发明的一个实施例中,PJV(216)可仅暴露给生产CRA(210)而不暴露给主机(即,PCS(202))。在下文中将参照图3B进一步详细说明PJV(216)和日志卷。
图2B示出了本发明的一个或多个实施例的远程站点。如上所述,远程站点(230)可包括远程计算系统(RCS)(232),该远程计算系统可以是用于各种目的的任何计算系统。RCS(232)可包括代理虚拟机(PVM)(234)、一个或多个副本虚拟机(RVM)(236A-236N)、远程虚拟机管理器(VMH)(238)、远程连续复制代理(CRA)(240)、以及远程写入分流器(RWS)(242)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,PVM(234)可以是负责将虚拟机快照(如上所述)备份到第三方存储系统的计算机程序或进程(即,计算机程序的实例)。举例来说,所述第三方存储系统可以是MEDITECH备份系统(MBS)(250),该备份系统也在图1中示出和描述。更具体地说,PVM(234)可包括以下功能:复制代表还原的虚拟机快照的逻辑卷,该逻辑卷可能已附接至PVM(234)以执行备份操作;通过逻辑卷的复制获得复制的逻辑卷;以及通过网络将任何复制的逻辑卷发送到第三方存储系统,以进一步实现冗余存储和灾难恢复。
在本发明的一个实施例中,RVM(236A-236N)可指辅助或备份虚拟机,该虚拟机可与在生产站点(200)的PCS(未示出)上执行的SVM(未示出)对应。总体来说,RVM(236A-236N)可以是在主机(即,RCS(202))的底层硬件上执行的计算机程序。具体而言,RVM(236A-236N)可以是模拟物理计算系统的计算机程序(参见图7的示例),因此它提供一个独立的执行环境,其他操作系统(OS)(可能与主机OS不同)和其他计算机程序可在该执行环境中执行。在本发明的一个实施例中,每个RVM(236A-236N)可包括通过远程VMH(238)读写存在于远程存储系统(RSS)(244)上的一个或多个副本原始设备映射(RDM)盘(248A-248N)(在下文中说明)的功能。
在本发明的一个实施例中,远程VMH(238)可以是在RCS(232)的底层硬件上执行的计算机程序或进程(即,计算机程序的实例)。具体而言,远程VMH(238)可以是负责管理所述一个或多个RVM(236A-236N)的计算机程序/进程,它也可在RCS(232)上执行。因此,远程VMH(238)可包括以下功能:创建或删除任何RVM(236A-236N);分配或回收主机(即,RCS(232))的资源以支持一个或多个RVM(236A-236N)及其各自的工作负载(例如客户OS、应用程序等)的执行;以及保持所述一个或多个RVM(236A-236N)与其他远程站点(230)组件(例如RWS(242)、远程CRA(240)和RSS(244))之间的站内通信。本领域普通技术人员应理解,在不脱离本发明的范围的情况下,远程VMH(238)可执行其他功能。
在本发明的一个实施例中,RWS(242)可以是在RCS(232)的底层硬件上执行的计算机程序或进程(即,计算机程序的实例)。具体而言,RWS(242)可以是负责分流或复制从一个或多个RVM(236A-236N)经由远程VMH(238)向一个或多个副本RDM盘(248A-248N)进行的输入-输出(IO)写入的计算机程序/进程。在分流或复制写入内容时,RWS(242)可产生写入副本(即,写入内容的精确副本/复制),RWS(242)随后将该写入副本路由到远程CRA(240)。同时,原始写入可沿着其原始的预定路径传送至RSS(244)。
在本发明的一个实施例中,远程CRA(210)可以是负责管理与存在于生产站点(200)和/或远程站点(230)的数据的数据保护和复制有关的方面的物理或虚拟化装置(即,物理设备或计算机程序)。此外,远程CRA(240)可实现用于灾难恢复目的的数据备份和/或存档功能。为此,远程CRA(210)可包括管理来自生产站点(200)的共享的复制信息的功能。当远程站点(230)在生产站点(200)故障转移期间承担生产站点(200)的职责时,远程CRA(210)可将远程站点(230)的复制信息共享至另一个远程站点(230),用于冗余存储和/或检索。此外,根据本发明的一个或多个实施例,远程CRA(230)可包括执行图5A-6B中所列的一部分或所有步骤的功能,这些步骤涉及复制集的保护(在下文中说明)以及依赖RDM盘的虚拟机的数据备份的实现。举例来说,远程CRA(210)可以是由美国马萨诸塞州的Dell EMC ofHopkinton公司制造的RecoverPoint for Virtual Machines(RP4VM)装置。
在本发明的一个实施例中,远程站点(230)还可包括RSS(244),该RSS(244)可以可操作地连接至RCS(232)。如上所述,RSS(244)可以是用于合并各种形式的数据的任何存储阵列或介质。RSS(244)可包括一个或多个副本RDM盘(248A-248N)和远程日志卷(RJV)(246)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,副本RDM盘(248A-248N)可涉及辅助或备份RDM盘,该RDM盘可存储与一个或多个SVM(未示出)相关的复制数据副本或版本以及与一个或多个RVM(236A-236N)相关的原始数据副本或版本。具体而言,副本RDM盘(248A-248N)可合并至少与所述一个或多个SVM和/或RVM(236A-236N)相关联(即,由其产生和/或使用)的数据的时间点历史。此外,一般来说,RDM盘可以是物理存储设备(例如硬盘驱动器(HDD)、固态驱动器(SSD)等),该物理存储设备采用RDM机制来支持由虚拟机(即,一个或多个RVM(236A-236N))进行的磁盘存取。RDM机制可涉及支持虚拟机直接访问存储逻辑单元号(LUN)。存储LUN可以是物理存储设备(例如副本RDM盘(248A-248N))与想访问它的计算机程序/应用程序(例如RVM(236A-236N))之间的逻辑抽象或虚拟化层。此外,存储LUN可格式化为任何文件系统(例如新技术文件系统(NTFS)、文件分配表(FAT)等)的格式,这能消除创建虚拟机文件系统(VMFS)数据存储库然后在存储LUN上存储虚拟机盘(VMDK)的要求。
在本发明的一个实施例中,为了与副本RDM盘(248A-248N)交互,可创建映射文件,该映射文件随后可在RVM(236A-236N)的配置文件中引用/从该配置文件引用。该映射文件可指向与副本RDM盘(248A-248N)相关联的存储LUN。此外,该映射文件可作为副本RDM盘(248A-248N)的代理,并且实质上包括可用于管理和重定向对副本RDM盘(248A-248N)的访问的元数据。更具体地说,在与副本RDM盘(248A-248N)交互时,RVM(236A-236N)可读取映射文件,并随后直接向副本RDM盘的存储LUN(248A-248N)提交读取和/或写入请求。
在本发明的一个实施例中,RJV(246)可指合并可能正在等待分发至副本RDM盘(248A-248N)的虚拟机快照的一个或多个物理存储设备。RJV(246)还可合并可能已经分发至副本RDM盘(248A-248N)的虚拟机快照。在本发明的一个实施例中,虚拟机快照可指与虚拟机(即,SVM(未示出)和RVM(236A-236N))有关的状态和/或数据的任何粒度的精确副本。在本发明的一个实施例中,RJV(246)可仅暴露给远程CRA(240)而不暴露给主机(即,RCS(232))。在下文中将参照图3B进一步详细说明RJV(246)和日志卷。
图3A示出了本发明的一个或多个实施例的复制集和一致性组。复制集(RS)(312A-312F)可以是物理存储设备的逻辑分组。此外,RS(312A-312F)可包括生产站点物理存储设备和相应的远程站点物理存储设备。例如,RS A(312)可对可存在于生产存储系统(PSS)(300)中的生产(或源)原始数据映射(RDM)盘A(304A)以及可存在于远程存储系统(RSS)(306)中的相应远程(或副本)RDM盘A(310A)进行逻辑分组。另一方面,一致性组(CG)(314A、314B)可以是被选择用于数据保护的一个或多个RS(312A-312F)的逻辑分组。数据保护可指用于灾难恢复目的的数据复制和远程分发。例如,CG A(314A)可将RS A(312A)和RS B(312B)逻辑分组在一起,而CG B(314B)可将RS D(312D)、RS E(312E)和RS F(312F)逻辑分组在一起。在本发明的一个实施例中,每个CG(314A、314B)可确保划分到CG(314A、314B)中的所有RS(312A-312F)的写入顺序一致性。也就是说,向RS(312A-312F)的远程/副本RDM盘(310A-310F)提交/执行的写入按照与向RS(312A-312F)的对应生产/源RDM盘(308A-308F)提交/执行的写入相同的顺序排序。
图3B示出了本发明的一个或多个实施例的日志卷。如上所述,日志卷(320)可涵盖共同合并虚拟机状态和/或数据的时间点历史的一个或多个物理存储设备,所述虚拟机状态和/或数据的时间点历史在本文中也可称为虚拟机快照。更具体地说,日志卷(320)可包括一个或多个一致性组日志(CGL)(322A-322N)。每个CGL(322A-322N)可以是涵盖属于一致性组(如上所述)的可能正在等待分发和/或已经分发的所有虚拟机快照的记录。因此,每个CGL(322A-322N)可包括待分发缓冲器(WDB)(324)和已分发缓冲器(ADB)(338)。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,WDB(324)可以是类似于先进先出(FIFO)队列的数据结构。也就是说,根据FIFO机制,元素(即条目)按照它们进入WDB(324)的顺序退出WDB(324)。此外,元素或条目可通过WDB(324)的顶部、后部或尾部入列(即,进入),并且随后通过WDB(324)的底部、前部或头部出列(即,退出)。在本发明的一个实施例中,WDB(324)可以是缓冲一个或多个待分发条目(WDE)(326A-326N)的数据结构。每个WDE(326A-326N)可涉及可能正在等待分发至远程站点(即,在生产日志卷的情况下)或副本RDM盘(即,在远程日志卷的情况下)的虚拟机快照。此外,每个WDE(326A-326N)可包括时间点(328)、虚拟机快照(330)、书签(332)(可选)、一致性设置(334)、以及合并策略(336)。这些项目中的每一个将在下文中说明。
在本发明的一个实施例中,时间点(328)可指标识虚拟机快照(330)的生成时间(即,具体日期和时间)的时间标记或编码信息。虚拟机快照(330)可指与虚拟机(例如源虚拟机或副本虚拟机)相关联的状态和/或数据的完整或差分映像(即,精确副本)。此外,书签(332)可以是可应用于虚拟机快照(330)的标签。书签(332)支持在数据恢复操作期间明确引用虚拟机快照(330)。在本发明的一个实施例中,书签(332)可由生产站点和/或远程站点的管理员手动产生。在本发明的另一个实施例中,书签(332)可由生产或远程连续复制代理(CRA)(例如参见图2A和2B)按预定间隔或响应于特定系统事件自动产生。
在本发明的一个实施例中,一致性设置(334)可指与虚拟机快照(330)相关联的数据一致性的状态。例如,一致性设置(334)可指示虚拟机快照(330)是崩溃一致的。由于是崩溃一致的,虚拟机快照(330)在指定的时间点收集所有差分或完整虚拟机状态和/或数据(328)。再例如,一致性设置(334)可指示虚拟机快照(330)是应用一致的。由于是应用一致的,虚拟机快照(330)不仅收集所有差异/完整虚拟机状态和/或数据,还在指定时间点(328)收集所有内存中数据和进程内事务(即,IO请求)。
在本发明的一个实施例中,合并策略(336)可指可合并虚拟机快照(330)的频率。具体而言,合并策略(336)可涉及可向远程站点(在生产日志卷的情况下)或副本RDM盘(在远程日志卷的情况下)分发虚拟机快照(330)的频率。举例来说,合并策略(336)可表明虚拟机快照(330):(a)永不合并;(b)每日合并;(c)每周合并;(d)每月合并;或(e)无限期合并。
在本发明的一个实施例中,ADB(338)可以是类似于先进先出(FIFO)队列的数据结构。也就是说,根据FIFO机制,元素(即条目)按照它们进入ADB(338)的顺序退出ADB(338)。此外,元素或条目可通过ADB(338)的顶部、后部或尾部入列(即,进入),并且随后通过ADB(338)的底部、前部或头部出列(即,退出)。在本发明的一个实施例中,ADB(338)可以是缓冲一个或多个已分发条目(ADE)(340A-340N)的数据结构。每个ADE(340A-340N)可涉及可能已经分发至远程站点(即,在生产日志卷的情况下)或副本RDM盘(即,在远程日志卷的情况下)的虚拟机快照。此外,每个ADE(340A-340N)可包括时间点(328)、虚拟机快照(330)、书签(332)(可选)、一致性设置(334)、以及合并策略(336)。在上文中相对于WDE(326A-326N)说明了这些组件中的每一个。在本发明的一个实施例中,在将关联的虚拟机快照(330)分发至远程站点或副本RDM盘之后,可将WDE(326A-326N)重新用作ADE(340A-340N)。
图4A-4C示出了描述本发明的一个或多个实施例的用于保护复制集的方法的流程图。图4A-4C中列出的各个步骤属于生产站点的情况。虽然流程图中的各个步骤是按顺序示出和说明的,但是本领域普通技术人员应理解,某些或所有步骤可按不同的顺序执行,可以组合或省略,并且某些或所有步骤可并行执行。在本发明的一个实施例中,在不脱离本发明的范围的情况下,图4A-4C中所示的步骤可与图5A-6B中所示的任何其他步骤并行执行。
现在请参考图4A,在步骤400中,选择一个或多个复制集(RS)用于数据保护。在本发明的一个实施例中,每个RS可包括存在于生产站点的源原始设备映射(RDM)盘以及存在于远程站点的相应副本RDM盘。此外,源RDM盘可与也可存在于生产站点的至少一个源虚拟机(SVM)相关联。另一方面,副本RDM盘可与也可存在于远程站点的至少一个副本虚拟机(RVM)相关联。而且,一个或多个RS的选择可由生产和/或远程站点的管理员进行。
在步骤402中,基于RS(在步骤400中选择的)产生一致性组(CG)。具体而言,在本发明的一个实施例中,CG可以是一个或多个RS的逻辑分组,这确保了对源RDM盘的更新(即,写入)也以一致的方式和正确的写入顺序写入相应的副本RDM盘。在步骤406中,启用CG的数据传输。在本发明的一个实施例中,启用CG的数据传输可指开始向源RDM盘的写入的数据复制,从而获得写入副本,该写入副本随后可分发至相应的副本RDM盘。换句话说,启用CG的数据传输激活向远程站点进行SVM状态和/或数据(作为虚拟机快照)的数据备份和/或存档的过程,以达到冗余存储和/或灾难恢复目的。
在步骤406中,从存在于生产站点的生产写入分流器(PWS)(例如参见图2A)接收SVM写入副本。在本发明的一个实施例中,SVM写入副本可以是向源RDM盘的原始SVM写入的副本。此外,原始SVM写入可包括由SVM(在步骤400中选入RS中)在源RDM盘上进行的输入-输出(IO)操作。在步骤408中,向PWS反馈SVM写入副本的接收确认。
现在请参考图4B,在步骤420中,确定生产站点与远程站点之间的数据保护策略是针对同步数据复制还是针对异步数据复制配置的。可由生产和/或远程站点的管理员针对任何一个数据复制模式配置数据保护策略的设置。在本发明的一个实施例中,在同步数据复制中,可通过PWS接收的每个写入(或者更确切地说是写入副本)可代表虚拟机快照。相反,在异步数据复制中,可收集从PWS接收的多个写入副本,以共同代表虚拟机快照。因此,如果确定数据保护策略是针对同步数据复制配置的,则该过程进行到步骤422。另一方面,如果确定数据保护策略是针对异步数据复制配置的,则该过程进行到步骤424。
在步骤422中,在确定(在步骤420中)数据保护策略是针对同步数据复制配置的之后,使用SVM写入副本(在步骤406中获得)生成虚拟机快照。也就是说,在本发明的一个实施例中,生成的虚拟机快照可以是仅包含一个SVM写入副本的映像。或者,在步骤423中,在确定(在步骤420中)数据保护策略是针对异步数据复制配置的之后,将SVM写入副本(在步骤406中获得)存储在缓冲器中。在本发明的一个实施例中,缓冲器可以是用于临时存储一个或多个SVM写入副本的存储器内数据结构或数据缓存器。
在步骤426中,在将SVM写入副本存储在缓冲器中之后,再确定是否已将足够的SVM写入副本存储在缓冲器中。具体而言,在本发明的一个实施例中,可将与缓冲器相关联的计数值与SVM写入副本阈值进行比较,该计数值可指示可存储在缓冲器中的SVM写入副本的数量。SVM写入副本阈值可指规定的缓冲单元数,其中:(a)当达到该阈值时,表示已在缓冲区中存储了足够的SVM写入副本;或者(a)当未达到该阈值时,表示在缓冲区中存储的SVM写入副本还不够。此外,SVM写入副本阈值可以是由生产和/或远程站点的管理员设置的偏好值。随后,若确定已经缓冲了足够的SVM写入副本,则该过程进行到步骤428。另一方面,若确定缓冲的SVM写入副本还不够,则该过程进行(或转回)到步骤406(例如参见图4A),在该步骤中接收并最终缓冲一个或多个附加的SVM写入副本,直到达到SVM写入副本阈值。
在步骤428中,在确定(在步骤426中)已经缓冲了足够的SVM写入副本(即,存储在上述缓冲器中)之后,使用缓冲的一组SVM写入副本生成虚拟机快照。也就是说,在本发明的一个实施例中,生成的虚拟机快照可以是包含由一个或多个SVM写入副本组成的一组缓冲副本的映像。此外,可对两个或更多SVM写入副本进行排序,以保持已经接收并随后缓冲的SVM写入副本的写入顺序一致性。
在步骤430中,在生成虚拟机快照之后(在步骤422或428中),向虚拟机快照添加书签。如上所述,在本发明的一个实施例中,书签可以是支持在数据恢复操作期间明确引用虚拟机快照的标签,该标签可手动或自动添加。此外,在向虚拟机快照添加书签时,获得带书签的虚拟机快照。在本发明的另一个实施例中,可省略添加书签的操作。
在步骤432中,生成用于带书签的虚拟机快照(在步骤430中获得)的待分发条目(WDE)。在本发明的一个实施例中,WDE(例如参见图3B)可以是逻辑容器,该逻辑容器至少表明:与虚拟机快照相关联的时间点;虚拟机快照本身;书签(如果在步骤430中添加了);一致性设置(如上所述);以及合并政策(如上所述)。
现在请参考图4C,在步骤440中,WDE(在步骤432中生成)随后在生产日志卷(PJV)的待分发缓冲器(WDB)的顶部/后部/尾部排队。如上所述,在本发明的一个实施例中,WDB可以是类似于先进先出(FIFO)队列的数据结构,其中一个或多个虚拟机快照等待分发至远程站点。此外,按照FIFO机制,每个WDE(包括在步骤432中生成的WDE)按照WDE进入WDB的顺序穿过并退出WDB。
在步骤442中,WDE(在步骤432中生成)到达PJV的WDB的底部/前部/头部。具体而言,在本发明的一个实施例中,在一个或多个先前的WDE(与先前的虚拟机快照相关联)到达WDB的底部并退出WDB之后,WDE(在步骤432中生成)成为WDB中的最下面的元素(或条目)。此外,在到达WDB的底部时,获得带书签的虚拟机快照以及包含在WDE中的其他元数据。在本发明的一个实施例中,到达WDB的底部可触发向远程站点分发带书签的虚拟机快照。
在步骤444中,分发带书签的虚拟机快照和相关联的元数据(在步骤442中获得)。在本发明的一个实施例中,带书签的虚拟机快照和相关联的元数据的分发可能需要通过光纤通道(FC)或互联网协议(IP)网络向远程站点传输上述对象。在实际传输上述对象之前,分发过程还可能需要对上述对象进行打包以获得传输包,随后对传输包进行去重,压缩,并使用消息摘要(MD)值或校验和进行编码,以便验证传输包。
在步骤446中,在分发带书签的虚拟机快照和相关联的元数据之后,从远程站点接收确认。在本发明的一个实施例中,该确认可用作远程站点已经接收到上述对象并且不需要重新传输上述对象的确认。
在步骤448中,WDE(在步骤432中生成)被重新用作已添加书签的虚拟机快照的已分发条目(ADE)。也就是说,在本发明的一个实施例中,WDE可重新标记为ADE。因此,像WDE一样,ADE也可以是逻辑容器,该逻辑容器至少表明:与虚拟机快照相关联的时间点;虚拟机快照本身;书签(如果在步骤430中添加了);一致性设置(如上所述);以及合并政策(如上所述)。此后,在步骤450中,将ADE(在步骤448中获得)存储在存在于PJV中的已分发缓冲器(ADB)中。如上所述,在本发明的一个实施例中,ADB可以是类似于FIFO队列的数据结构,其中一个或多个虚拟机快照被记录为已经分发至远程站点,从而保持在生产站点执行的SVM的虚拟机快照的分发历史。此外,在下文中,该过程进行(或转回)到步骤406,在该步骤中可接收并最终分发附加的SVM写入副本。
图5A和5B示出了描述本发明的一个或多个实施例的用于保护复制集的方法的流程图。图5A-5B中列出的各个步骤属于远程站点的情况。虽然流程图中的各个步骤是按顺序示出和说明的,但是本领域普通技术人员应理解,某些或所有步骤可按不同的顺序执行,可以组合或省略,并且某些或所有步骤可并行执行。在本发明的一个实施例中,在不脱离本发明的范围的情况下,图5A和5B中所示的步骤可与图4A-4C、6A和6B中所示的任何其他步骤并行执行。
现在请参考图5A,在步骤500中,从生产站点接收带书签的虚拟机快照。在本发明的一个实施例中,带书签的虚拟机快照可能已经从生产站点穿过光纤通道(FC)或互联网协议(IP)网络到达远程站点。此外,带书签的虚拟机快照可伴随有带书签的虚拟机快照相关联的各种元数据,这些元数据可包括:与虚拟机快照相关联的时间点;书签(如果在生产站点添加了);一致性设置(如上所述);以及合并政策(如上所述)。在本发明的另一个实施例中,也可接收不包括书签元数据的无书签的虚拟机快照。此外,在本发明的一个实施例中,上述对象可被打包为传输包,该传输包可能已经过去重、压缩,并使用消息摘要(MD)值或校验和编码,以便验证传输包。
在步骤502中,向生产站点反馈指示收到带书签的虚拟机快照和相关联的元数据的确认。具体而言,所述确认的传输可取决于所接收的传输包的处理。更具体地说,在传输包到达时,可使用编码的MD值或校验和来验证传输包,以确保传输包在传输中没有被损坏。在本发明的一个实施例中,若验证过程确定传输包未被损坏,则可继续所述确认的传输。另一方面,在本发明的另一个实施例中,若验证过程确定传输包已被损坏,则可不继续所述确认的传输。此外,在传输包未被损坏的情况下,可解压和展开传输包,以获得其中包含的带书签的虚拟机快照和相关联的元数据。
在步骤504中,产生用于带书签的虚拟机快照的待分发条目(WDE)。在本发明的一个实施例中,WDE(例如参见图3B)可以是表明带书签(或无书签)的虚拟机快照和相关元数据(在步骤500/502中接收)的逻辑容器。如上面的图4A-4C所述,在本发明的一个实施例中,虚拟机快照可包含单个写入副本,即,从位于生产站点的源虚拟机(SVM)向也位于生产站点的源原始设备映射(RDM)盘的写入的副本。在本发明的另一个实施例中,虚拟机快照可包含从SVM至源RDM盘的多个(即,两个或更多)写入副本,该SVM和源RDM盘都存在于生产站点。
在步骤506中,WDE(在步骤504中生成)随后在远程日志卷(RJV)的待分发缓冲器(WDB)的顶部/后部/尾部排队。如上所述,在本发明的一个实施例中,WDB可以是类似于先进先出(FIFO)队列的数据结构,其中一个或多个虚拟机快照等待分发至存在于远程站点的副本RDM盘。此外,按照FIFO机制,每个WDE(包括在步骤504中生成的WDE)按照WDE进入WDB的顺序穿过并退出WDB。
在步骤508中,WDE(在步骤504中生成)到达RJV的WDB的底部/前部/头部。具体而言,在本发明的一个实施例中,在一个或多个先前的WDE(与先前的虚拟机快照相关联)到达WDB的底部并退出WDB之后,WDE(在步骤504中生成)成为WDB中的最下面的元素(或条目)。此外,在到达WDB的底部时,获得带书签的虚拟机快照以及包含在WDE中的其他元数据。在本发明的一个实施例中,到达WDB的底部可触发向副本RDM盘分发带书签的虚拟机快照。
请参考图5B,在步骤520中,分发带书签(或无书签)的虚拟机快照和相关联的元数据。在本发明的一个实施例中,带书签(或无书签)的虚拟机快照的分发可能需要将包含在虚拟机快照中的一个或多个SVM写入副本写入位于远程站点的副本RDM盘。此外,所述一个或多个SVM写入副本可以与由SVM向存在于生产站点的源RDM盘执行的原始SVM写入相同的顺序写入副本RDM盘,从而保持生产站点的RDM盘与远程站点的RDM盘之间的写入顺序一致性。此外,写入一个或多个SVM写入副本的副本RDM盘可与在远程站点执行的作为SVM的镜像的副本虚拟机(RVM)相关联。
在步骤522中,WDE(在步骤504中生成)被重新用作已添加书签的虚拟机快照的已分发条目(ADE)。也就是说,在本发明的一个实施例中,WDE可重新标记为ADE。因此,像WDE一样,ADE也可以是逻辑容器,该逻辑容器至少表明:与虚拟机快照相关联的时间点;虚拟机快照本身;书签(如果在生产站点添加了);一致性设置(如上所述);以及合并政策(如上所述)。此后,在步骤524中,将ADE(在步骤522中获得)存储在存在于RJV中的已分发缓冲器(ADB)中。如上所述,在本发明的一个实施例中,ADB可以是类似于FIFO队列的数据结构,其中一个或多个虚拟机快照被记录为已经分发至副本RDM盘,从而保持在生产站点执行的SVM的虚拟机快照的分发历史。
图6A和6B示出了描述本发明的一个或多个实施例的用于实现依赖原始设备映射盘的虚拟机的数据备份的方法的流程图。图6A和6B中列出的各个步骤属于远程站点的情况。虽然流程图中的各个步骤是按顺序示出和说明的,但是本领域普通技术人员应理解,某些或所有步骤可按不同的顺序执行,可以组合或省略,并且某些或所有步骤可并行执行。在本发明的一个实施例中,在不脱离本发明的范围的情况下,图6A和6B中所示的步骤可与图4A-5B中所示的任何其他步骤并行执行。
现在请参考图6A,在步骤600中,从远程日志卷(RJV)中的已分发缓冲区(ADB)选择已分发条目(ADE)。在本发明的一个实施例中,ADE的选择(或者更确切地说是获得)可由ADE在ADB的顶部/后部/尾部排队之后到达ADB的底部/前部/头部时触发(例如参见图5A和5B)。具体而言,在一个或多个先前的ADE到达ADB的底部并退出ADB之后,选择/获得的ADE成为ADB中的最底部元素(或条目)。此外,选择/获得的ADE可与可能已经被分发(或写入)到位于远程站点的副本原始设备映射(RDM)盘的带书签(或无书签)的虚拟机快照相关联。
在步骤602中,识别已写入带书签(或无书签)的虚拟机快照的副本RDM盘。在本发明的一个实施例中,副本RDM盘的识别可能需要访问可包括ADE或虚拟机快照到副本RDM盘的映射的内存中数据结构,可在将虚拟机快照分发至相应的副本RDM盘时填充该数据结构。
在步骤604中,识别与副本RDM盘(在步骤602中识别)相关联的一致性组(CG)。在本发明的一个实施例中,CG可以是一个或多个复制集(RS)的逻辑分组,其中每个RS可包括存在于生产站点的源RDM盘以及存在于远程站点的相应副本RDM盘。CG的识别可能需要访问在生产站点与远程站点之间共享的内存中数据结构,该数据结构可记录表明由在生产站点中定义的每个CG分组的RS的CG信息,并且随后记录由每个RS分组的每对源RDM盘和副本RDM盘。
在步骤606中,将CG的访问模式(在步骤604中识别)设置为记录访问模式。在本发明的一个实施例中,记录访问模式的切换可触发“启用映像访问”操作。“启用映像访问”操作可指授权主机访问副本RDM盘(在步骤602中标识),以便访问与ADE(在步骤600中选择/获得)相关联的时间点映像(即,带书签或无书签的虚拟机快照)。“启用映像访问”操作还可暂停任何虚拟机快照向与CG(在步骤604中识别)相关联的任何副本RDM盘的分发。虚拟机快照可缓冲在RJV的WDB中,直到在执行“禁用映像访问”操作(在下文中说明)时允许恢复分发。
在步骤608中,在切换CG(在步骤604中识别)的记录访问模式之后,停用与副本RDM盘(在步骤602中识别)相关联的副本虚拟机(RVM)。更具体地说,在本发明的一个实施例中,可断开或临时切断存在于远程站点的RVM与副本RDM盘之间的链路。此后,在步骤610中,还原带书签或无书签的虚拟机快照(与在步骤600中选择/获得的ADE相关联)。在本发明的一个实施例中,带书签/无书签的虚拟机快照的还原可能需要重新创建源RDM盘(针对与带书签/无书签的虚拟机快照相关联的时间点)作为逻辑卷。该逻辑卷可承载在构成副本RDM盘的物理存储设备(在步骤602中标识)中作为隔离分区。
现在请参考图6B,在步骤620中,将逻辑卷(在步骤610中获得)附接至在远程站点执行的代理虚拟机(PVM)。在本发明的一个实施例中,PVM可以是负责将虚拟机快照备份到第三方存储系统(例如MEDITECH备份系统(MBS)(在图1中描述))的计算机程序或进程(即,计算机程序的实例)。在附接逻辑卷时,PVM可复制逻辑卷以获得复制的逻辑卷;通过网络将复制的逻辑卷传送到第三方存储系统;并且在传输复制的逻辑卷之后,向可执行图6A和6B中列出的各个步骤的远程连续复制代理(CRA)反馈确认。
在步骤622中,接收来自PVM的指示逻辑卷的备份操作完成的确认。在步骤624中,基于该确认(在步骤622中接收),从PVM分离逻辑卷(在步骤620中附接)。在分离逻辑卷之后,在步骤626中回收逻辑卷。在本发明的一个实施例中,逻辑卷的回收可指删除逻辑卷并随后回收远程站点上的可能曾用于重新创建作为逻辑卷的源RDM盘(针对与带书签/无书签虚拟机快照相关联的时间点)的计算和/或存储资源。
在步骤628中,将CG的访问模式(在步骤604中识别)设置为不可访问模式。在本发明的一个实施例中,不可访问模式的切换可触发“禁用映像访问”操作。“禁用映像访问”操作可指禁止主机访问副本RDM盘(在步骤602中识别),从而暂停已在执行“启用映像访问”操作(在步骤606中)期间暂停的任何虚拟机快照向与CG(在步骤604中识别)相关联的任何副本RDM盘的分发。在步骤630中,重新激活与副本RDM盘(在步骤602中识别)相关联的RVM。更具体地说,在本发明的一个实施例中,可重新建立存在于远程站点的RVM与副本RDM盘之间的链路。
图7示出了本发明的一个或多个实施例的计算系统。计算系统(700)可包括一个或多个计算机处理器(702)、非持久性存储装置(704)(例如易失性存储器,例如随机存取存储器(RAM)、高速缓冲存储器)、持久性存储装置(706)(例如硬盘、光驱(例如光盘(CD)驱动器)或数字通用盘(DVD)驱动器、闪存等)、通信接口(712)(例如蓝牙接口、红外线接口、网络接口、光接口等)、输入装置(710)、输出装置(708)、以及许多其他元件(未示出)和功能。这些组件中的每一个将在下文中说明。
在本发明的一个实施例中,计算机处理器(702)可以是用于处理指令的集成电路。例如,计算机处理器可以是一个或多个核心、或者是处理器的微核心。计算系统(700)还可包括一个或多个输入装置(710),例如触摸屏、键盘、鼠标、麦克风、触摸板、电子笔、或任何其他类型的输入装置。此外,通信接口(712)可包括用于将计算系统(700)连接至网络(未示出)(例如局域网(LAN)、广域网(WAN)(例如因特网)、移动网络或任何其他类型的网络)和/或另一个设备(例如另一个计算设备)的集成电路。
在本发明的一个实施例中,计算系统(700)可包括一个或多个输出装置(708),例如屏幕(例如液晶显示屏(LCD)、等离子显示屏、触摸屏、阴极射线管(CRT)监视器、投影仪或其他显示装置)、打印机、外部存储器、或任何其他输出装置。一个或多个输出装置可与输入装置相同或不同。输入和输出装置可通过本地或远程方式连接至计算机处理器(702)、非持久性存储装置(704)和持久性存储装置(706)。存在许多不同类型的计算系统,并且上述输入和输出装置可以采取其他形式。
用于执行本发明的实施例的计算机可读程序代码形式的软件指令可全部或部分地临时或永久地存储在非暂时性计算机可读介质(例如CD、DVD、存储设备、磁盘、磁带、闪存、物理存储器)或任何其他计算机可读存储介质上。具体而言,所述软件指令可与计算机可读程序代码对应,在由处理器执行时,该计算机可读程序代码配置为执行本发明的一个或多个实施例。
虽然本发明是参照有限数量的实施例说明的,但是受益于本公开的本领域技术人员能理解,可以设计出不脱离本文中所公开的本发明的范围的其他实施例。因此,本发明的范围仅由所附权利要求限定。
Claims (20)
1.一种用于备份虚拟机的方法,包括:
从已分发缓冲器(ADB)选择包括虚拟机快照的已分发条目(ADE);
识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;
识别至少包括所述副本盘的一致性组(CG);
将针对所述CG的访问模式设置为记录访问模式;
停用可操作地连接至所述副本盘的副本虚拟机(RVM);
还原所述虚拟机快照以获得逻辑卷;和
使用代理虚拟机(PVM)备份所述逻辑卷。
2.根据权利要求1所述的方法,其中所述虚拟机快照包括从源虚拟机(SVM)向源RDM盘的写入的写入副本。
3.根据权利要求2所述的方法,其中所述RVM是用于所述SVM的备份虚拟机,其中所述副本盘是用于所述源RDM盘的备份盘。
4.根据权利要求1所述的方法,其中所述逻辑卷由所述副本盘承载。
5.根据权利要求1所述的方法,其中使用所述PVM备份所述逻辑卷包括:
将所述逻辑卷附接至所述PVM;
指示所述PVM复制所述逻辑卷以获得复制的逻辑卷,其中在完成所述逻辑卷的复制时,所述PVM将所复制的逻辑卷传送到第三方存储系统;和
从所述PVM分离所述逻辑卷。
6.根据权利要求1所述的方法,还包括:
在备份所述逻辑卷之后:
回收所述逻辑卷;
将针对所述CG的所述访问模式设置为不可访问模式;和
重新激活可操作地连接至所述副本盘的所述RVM。
7.根据权利要求1所述的方法,还包括:
在从所述ADB中选择包含所述虚拟机快照的所述ADE之前:
从生产站点接收所述虚拟机快照;
至少使用所述虚拟机快照生成待分发条目(WDE);和
将所述WDE排在待分发缓冲器(WDB)的顶部。
8.根据权利要求7所述的方法,还包括:
当所述WDE在所述WDB的顶部排队后到达所述WDB的底部时:
从所述WDE获得所述虚拟机快照;
将所述虚拟机快照写入所述副本盘;
将所述WDE重新用作所述ADE;和
在所述ADB中记录所述ADE。
9.一种系统,包括:
第一计算机处理器;
在所述第一计算机处理器上执行的代理虚拟机(PVM);和
远程连续复制代理(CRA),其可操作地连接至所述PVM,并被编程为:
从已分发缓冲器(ADB)选择包括虚拟机快照的已分发条目(ADE);
识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;
识别至少包括所述副本盘的一致性组(CG);
将针对所述CG的访问模式设置为记录访问模式;
停用可操作地连接至所述副本盘的副本虚拟机(RVM);
还原所述虚拟机快照以获得逻辑卷;和
使用所述PVM备份所述逻辑卷。
10.根据权利要求9所述的系统,其中所述远程CRA是从由以下组成的组中选择的一种:包括第二计算机处理器的计算装置和在所述第一计算机处理器上执行的计算机程序。
11.根据权利要求9所述的系统,还包括:
可操作地连接至所述PVM的第三方存储系统。
12.根据权利要求9所述的系统,还包括:
远程计算系统(RCS),其包括所述远程CRA、所述PVM、以及包括所述RVM的一组RVM。
13.根据权利要求12所述的系统,还包括:
远程存储系统(RSS),其可操作地连接至所述RCS,并包括远程日志卷(RJV)和一组副本盘,
其中所述RJV包括所述ADB,并且所述一组副本盘包括所述副本盘。
14.根据权利要求9所述的系统,还包括:
生产计算系统(PCS),其包括一组源虚拟机(SVM)和生产CRA,
其中所述RVM是用于所述一组SVM中的SVM的备份虚拟机,
其中所述生产CRA可操作地连接至所述远程CRA。
15.根据权利要求14所述的系统,还包括:
生产存储系统(PSS),其可操作地连接至所述PCS,并包括生产日志卷(PJV)和一组源RDM盘,
其中所述副本盘是用于所述一组源RDM盘中的源RDM盘的备份盘。
16.一种非暂时性计算机可读介质(CRM),包括计算机可读程序代码,所述计算机可读程序代码在由计算机处理器执行时使所述计算机处理器能够:
从已分发缓冲器(ADB)选择包括虚拟机快照的已分发缓冲器条目(ADE);
识别已向其分发了所述虚拟机快照的副本盘,其中所述副本盘是从由原始设备映射(RDM)格式盘和虚拟机盘(VMDK)格式盘组成的组中选择的一种;
识别至少包括所述副本盘的一致性组(CG);
将针对所述CG的访问模式设置为记录访问模式;
停用可操作地连接至所述副本盘的副本虚拟机(RVM);
还原所述虚拟机快照以获得逻辑卷;和
使用代理虚拟机(PVM)备份所述逻辑卷。
17.根据权利要求16所述的非暂时性CRM,其中为了使用所述PVM备份所述逻辑卷,所述计算机可读程序代码在由所述计算机处理器执行时使所述计算机处理器能够:
将所述逻辑卷附接至所述PVM;
指示所述PVM复制所述逻辑卷以获得复制的逻辑卷,其中在完成所述逻辑卷的复制时,所述PVM将所复制的逻辑卷传送到第三方存储系统;和
从所述PVM分离所述逻辑卷。
18.根据权利要求16所述的非暂时性CRM,还包括计算机可读程序代码,所述计算机可读程序代码在由所述计算机处理器执行时使所述计算机处理器能够:
在备份所述逻辑卷之后:
回收所述逻辑卷;
将针对所述CG的所述访问模式设置为不可访问模式;和
重新激活可操作地连接至所述副本盘的所述RVM。
19.根据权利要求16所述的非暂时性CRM,还包括计算机可读程序代码,所述计算机可读程序代码在由所述计算机处理器执行时使所述计算机处理器能够:
在从所述ADB中选择包括所述虚拟机快照的所述ADE之前:
从生产站点接收所述虚拟机快照;
至少使用所述虚拟机快照生成待分发条目(WDE);和
将所述WDE排在待分发缓冲器(WDB)的顶部。
20.根据权利要求19所述的非暂时性CRM,还包括计算机可读程序代码,所述计算机可读程序代码在由所述计算机处理器执行时使所述计算机处理器能够:
当所述WDE在所述WDB的顶部排队后到达所述WDB的底部时:
从所述WDE获得所述虚拟机快照;
将所述虚拟机快照写入所述副本盘;
将所述WDE重新用作所述ADE;和
在所述ADB中记录所述ADE。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/966,690 | 2018-04-30 | ||
US15/966,690 US10860434B2 (en) | 2018-04-30 | 2018-04-30 | Method and system for enabling data backups for virtual machines reliant on raw device mapping disks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110413370A true CN110413370A (zh) | 2019-11-05 |
CN110413370B CN110413370B (zh) | 2024-03-29 |
Family
ID=66439856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910360290.3A Active CN110413370B (zh) | 2018-04-30 | 2019-04-30 | 用于实现依赖原始设备映射盘的虚拟机的数据备份的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10860434B2 (zh) |
EP (1) | EP3570165B1 (zh) |
CN (1) | CN110413370B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10691551B2 (en) * | 2018-07-24 | 2020-06-23 | EMC IP Holding Company LLC | Storage system with snapshot generation control utilizing monitored differentials of respective storage volumes |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262801A1 (en) * | 2011-09-30 | 2013-10-03 | Commvault Systems, Inc. | Information management of virtual machines having mapped storage devices |
US20130262638A1 (en) * | 2011-09-30 | 2013-10-03 | Commvault Systems, Inc. | Migration of an existing computing system to new hardware |
CN104239166A (zh) * | 2014-09-11 | 2014-12-24 | 武汉噢易云计算有限公司 | 一种对运行中虚拟机实现文件备份的方法 |
CN104461785A (zh) * | 2014-12-15 | 2015-03-25 | 中电长城网际系统应用有限公司 | 虚拟机数据备份方法、恢复方法及装置和物理机 |
US20150112936A1 (en) * | 2013-10-18 | 2015-04-23 | Power-All Networks Limited | Backup management system and method thereof |
CN105745624A (zh) * | 2013-06-10 | 2016-07-06 | 卫盟软件股份公司 | 来自存储快照的虚拟机备份 |
CN107003893A (zh) * | 2016-02-03 | 2017-08-01 | 华为技术有限公司 | 虚拟机备份方法、备份装置及宿主机 |
-
2018
- 2018-04-30 US US15/966,690 patent/US10860434B2/en active Active
-
2019
- 2019-04-16 EP EP19169634.3A patent/EP3570165B1/en active Active
- 2019-04-30 CN CN201910360290.3A patent/CN110413370B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130262801A1 (en) * | 2011-09-30 | 2013-10-03 | Commvault Systems, Inc. | Information management of virtual machines having mapped storage devices |
US20130262638A1 (en) * | 2011-09-30 | 2013-10-03 | Commvault Systems, Inc. | Migration of an existing computing system to new hardware |
CN105745624A (zh) * | 2013-06-10 | 2016-07-06 | 卫盟软件股份公司 | 来自存储快照的虚拟机备份 |
US20150112936A1 (en) * | 2013-10-18 | 2015-04-23 | Power-All Networks Limited | Backup management system and method thereof |
CN104239166A (zh) * | 2014-09-11 | 2014-12-24 | 武汉噢易云计算有限公司 | 一种对运行中虚拟机实现文件备份的方法 |
CN104461785A (zh) * | 2014-12-15 | 2015-03-25 | 中电长城网际系统应用有限公司 | 虚拟机数据备份方法、恢复方法及装置和物理机 |
CN107003893A (zh) * | 2016-02-03 | 2017-08-01 | 华为技术有限公司 | 虚拟机备份方法、备份装置及宿主机 |
Also Published As
Publication number | Publication date |
---|---|
US20190332498A1 (en) | 2019-10-31 |
EP3570165A1 (en) | 2019-11-20 |
EP3570165B1 (en) | 2022-03-09 |
US10860434B2 (en) | 2020-12-08 |
CN110413370B (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11829255B2 (en) | Information management security health monitoring system | |
US20230305732A1 (en) | Replication Among Storage Systems Hosting An Application | |
US20220206907A1 (en) | External dynamic virtual machine synchronization | |
US12124725B2 (en) | Managing host mappings for replication endpoints | |
US20210035045A1 (en) | Assessing user performance in a community of users of data storage resources | |
US20220019366A1 (en) | Providing Data Services During Migration | |
CN106557703B (zh) | 安全性检测 | |
US20220083245A1 (en) | Declarative provisioning of storage | |
US20200192572A1 (en) | Disk usage growth prediction system | |
US20180285202A1 (en) | External fallback system for local computing systems | |
ES2658993T3 (es) | Sistemas y métodos para almacenamiento distribuido | |
CN104714756B (zh) | 用于在双向同步镜像环境中进行本地锁定的方法和系统 | |
US11012508B2 (en) | Region-based distributed information management system | |
US12019687B2 (en) | Mobile control application for managing an information management system | |
US11893263B2 (en) | Coordinated checkpoints among storage systems implementing checkpoint-based replication | |
US11799839B2 (en) | Cross-regional replication of keys | |
CN107046811A (zh) | 一种源存储设备发送源文件和源文件的克隆文件至备份存储设备的方法、源存储设备以及备份存储设备 | |
US11914867B2 (en) | Coordinated snapshots among storage systems implementing a promotion/demotion model | |
WO2023070025A1 (en) | Declarative provisioning of storage | |
CN104731892A (zh) | 一种集中式文件服务系统的拟态防篡改方法 | |
CN110413370A (zh) | 用于实现依赖原始设备映射盘的虚拟机的数据备份的方法和系统 | |
WO2023211578A1 (en) | Coordinated snapshots among storage systems implementing a promotion/demotion model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |