CN110704237B - 用于无代理程序的分区备份的方法、设备和数据处理系统 - Google Patents

用于无代理程序的分区备份的方法、设备和数据处理系统 Download PDF

Info

Publication number
CN110704237B
CN110704237B CN201810753506.8A CN201810753506A CN110704237B CN 110704237 B CN110704237 B CN 110704237B CN 201810753506 A CN201810753506 A CN 201810753506A CN 110704237 B CN110704237 B CN 110704237B
Authority
CN
China
Prior art keywords
backup
partition
virtual machine
data
agent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810753506.8A
Other languages
English (en)
Other versions
CN110704237A (zh
Inventor
徐德宁
欧锋
郑庆霄
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 Corp
Original Assignee
EMC IP Holding Co LLC
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
Application filed by EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201810753506.8A priority Critical patent/CN110704237B/zh
Priority to US16/137,272 priority patent/US10810090B2/en
Publication of CN110704237A publication Critical patent/CN110704237A/zh
Application granted granted Critical
Publication of CN110704237B publication Critical patent/CN110704237B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • 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
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • 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
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本发明公开了用于在虚拟化环境中进行基于代理的分区备份的方法、设备和数据处理系统,其操作包括:将备份源虚拟机磁盘挂载到备份代理;在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息;以及利用所述备份代理,基于所述分区信息来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区。

Description

用于无代理程序的分区备份的方法、设备和数据处理系统
技术领域
本发明的实施例涉及电子装置,并且特别地,涉及虚拟化环境中的数据备份和恢复。
背景技术
在虚拟化环境中,可以使用虚拟化备份代理(proxy)或安装在虚拟机中的代理程序(agent)(专用软件)来进行虚拟机数据的备份。
通过基于备份代理的备份,可以在数据需要备份的虚拟机也驻留的虚拟环境(例如,VMware vSphere平台)中部署虚拟化备份代理(即,专用虚拟机)。备份代理可以访问虚拟环境中的虚拟机磁盘映像(例如,虚拟机磁盘“VMDK”文件)和存储有备份数据的外部数据存储区这两者。备份是在与备份代理进行通信的备份服务器的控制下进行的。通常,基于代理的备份的单位是虚拟机磁盘。存在使得用户能够手动将虚拟机磁盘上的文件和/或文件夹从备份对象中排除的数据排除特征,其中这些数据排除特征还可用于排除正在运行的虚拟机中所生成的无用数据或临时数据。要求用户手动排除无需备份的数据可能低效且麻烦。
通过基于代理程序的备份,可以在数据需要备份的各虚拟机中部署备份代理程序。在备份服务器的控制下经由备份代理程序来协调备份。基于代理程序的备份通常是灵活的,并且可用于备份应用数据和/或文件系统。然而,为了进行基于代理程序的备份,虚拟机和所安装的代理程序这两者都需要运行。
传统的基于代理的备份和传统的基于代理程序的备份都不允许仅备份虚拟机磁盘映像上的特定分区。
发明内容
根据本发明的一个方面,一种用于在虚拟化环境中进行基于代理的分区备份的计算机实现的方法,所述方法包括:将备份源虚拟机磁盘挂载到备份代理;在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息;以及利用所述备份代理,基于所述分区信息来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区。
根据本发明的一个方面,一种用于在虚拟化环境中进行基于代理的分区备份的设备,所述设备包括:用于将备份源虚拟机磁盘挂载到备份代理的部件;用于在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息的部件;以及用于利用所述备份代理、基于所述分区信息来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区的部件。
根据本发明的另一方面,一种数据处理系统,包括:处理器;以及存储器,其连接至所述处理器以存储指令,所述指令在由所述处理器执行时使所述处理器执行备份操作,所述备份操作包括:将备份源虚拟机磁盘挂载到备份代理;在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息;以及利用所述备份代理,基于所述分区信息来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区。
附图说明
本发明的实施例通过示例而非限制的方式在附图中示出,其中在附图中,相同的附图标记表示相似的元件。
图1是示出用于进行传统的基于代理的备份或基于代理程序的备份的示例环境的框图。
图2是示出根据本发明的一个实施例的用于进行基于代理的分区备份的示例环境的框图。
图3是示出根据本发明的一个实施例的用于在虚拟化环境中进行基于代理的分区备份的示例方法的流程图。
图4是示出根据本发明的一个实施例的用于在虚拟化环境中进行基于代理的分区备份的示例方法的流程图。
图5是示出根据一个实施例的数据处理系统的框图。
具体实施方式
将参考以下论述的细节来说明本发明的各种实施例和方面,并且附图将例示各种实施例。以下的描述和附图是对本发明的例示,而不应被解释为限制本发明。描述了许多具体细节以提供对本发明的各种实施例的全面理解。然而,在某些实例下,为了提供本发明的实施例的简要论述,没有描述公知的或传统的细节。
说明书中对“一个实施例”或“实施例”的引用意味着结合该实施例描述的特定特征、结构或特性可以包括在本发明的至少一个实施例中。在说明书中各处出现的短语“在一个实施例中”不一定全部指代同一实施例。
本发明的实施例涉及用于对虚拟机磁盘的分区进行备份的方法、设备和系统。如本领域技术人员将理解的,分区是指由操作系统与其它区域分开管理的磁盘驱动器上的区域。磁盘驱动器或映像可以包括一个或多个分区,其中各分区可以与文件系统相关联。
参考图1,示出了例示用于进行传统的基于代理的备份或基于代理程序的备份的示例环境100的框图。一个或多个虚拟机120驻留在主机110上。主机110可以包括运行专用软件(例如,管理程序)以支持虚拟机120的硬件平台。虚拟机120可以向用户提供各种服务。各虚拟机120可以与存储在主机110处的代表虚拟机120内的磁盘驱动器的一个或多个虚拟机磁盘映像文件相关联。
此外,为了允许传统的基于代理的备份,虚拟化备份代理130也可以驻留在主机110上。代理130可以是促进主机110上所执行的数据备份和恢复任务的专用虚拟机。主机110可以与备份服务器140和数据存储区150可通信地连接。因而,代理130可以在备份服务器140的控制下进行数据备份和恢复操作。数据可以从主机110备份到数据存储区150,并且可以从数据存储区150恢复到主机110。应当理解,传统上,基于代理的备份的单位是虚拟机磁盘(换句话说,在备份会话期间一次备份整个虚拟机磁盘映像)。
另外,为了允许传统的基于代理程序的备份,可以在数据需要备份的各虚拟机120中部署备份代理程序125。在备份服务器140的控制下,经由备份代理程序125来协调基于代理程序的备份。基于代理程序的备份通常是灵活的,并且可用于备份应用程序数据和/或文件系统。为了进行基于代理程序的备份,虚拟机120和所安装的代理程序125这两者都需要运行。
参考图2,示出了例示根据本发明的一个实施例的用于进行基于代理的分区备份的示例环境200的框图。除了不需要在虚拟机120中安装代理程序以外,图2的环境200与图1所示的环境100大致相同。
参考图3,示出了例示根据本发明的一个实施例的用于在虚拟化环境中进行基于代理的分区备份的示例方法300的流程图。在块310中,可以将备份源虚拟机磁盘挂载到备份代理。这可以利用虚拟机磁盘应用编程接口(API)(例如,VMware提供的VixMntapi库)来实现。在块320中,可以在代理处获得备份源虚拟机磁盘上的备份源分区的分区信息。该分区信息可以包括分区的开始扇区和分区的扇区数(即,扇区计数),并且可以使用诸如fdisk、gdisk等的磁盘分区工具来获得。在块330中,可以利用代理来基于分区信息读取备份源分区的分区数据并且将该分区数据备份到数据存储区。该分区数据可以使用虚拟机磁盘操作API(例如,VMware提供的VixDiskLib_Read API)来读取。
参考图4,示出了例示根据本发明的一个实施例的用于在虚拟化环境中进行基于代理的分区备份的示例方法400的流程图。在块410中,可以将备份源虚拟机磁盘挂载到备份代理。在块420中,可以在备份代理处获得备份源虚拟机磁盘上的备份源分区的分区信息。在块430中,可以利用备份代理来基于分区信息读取备份源分区的分区数据并且将该分区数据备份到数据存储区。
注意,如以上所示并说明的组件和操作(例如,图3~4中所示的方法300、400的操作)中的一部分或全部可以用软件、硬件或它们的组合来实现。例如,这些组件可以被实现为安装并存储在永久性存储装置中的软件,其中该软件可以由处理器(未示出)加载在存储器中并在存储器中执行,以执行在整个本申请中描述的处理或操作。可选地,这些组件可以被实现为被编程或嵌入到诸如集成电路(例如,专用IC或ASIC)、数字信号处理器(DSP)或现场可编程门阵列(FPGA)等的专用硬件中的可执行代码,其中该可执行代码可以从应用程序经由相应的驱动器和/或操作系统来访问。此外,这些组件可以被实现为处理器中的特定硬件逻辑或作为由软件组件经由一个或多个特定指令可访问的指令集的一部分的处理器核。
因此,利用这里描述的无代理程序的基于代理的分区备份技术,可以在无需备份代理程序的情况下,在备份服务器的控制下集中地进行分区备份。进行分区级备份的能力增加了虚拟机备份处理的灵活性和效率。可以在虚拟机没有正在运行的状态下进行基于代理的分区备份(和恢复)。此外,用户无需手动将无用数据或临时数据从备份对象中排除,只要不将这些数据存储在要备份的分区上即可。
图5是示出可用于本发明的一个实施例的数据处理系统的示例的框图。例如,系统1500可以表示进行上述任何处理或方法的上述任何数据处理系统。系统1500可以包括许多不同的组件。这些组件可以被实现为集成电路(IC)、集成电路(IC)的一部分、分立电子装置、或者适用于计算机系统的诸如主板或附加卡等的电路板的其它模块,或者否则被实现为并入在计算机系统的机箱内的组件。还注意,系统1500旨在示出计算机系统的许多组件的高级视图。然而,应当理解,在某些实现中可能存在附加组件,此外,在其它实现中可能出现所示组件的不同配置。系统1500可以表示台式机、膝上型计算机、平板电脑、服务器、移动电话、媒体播放器、个人数字助理(PDA)、个人通信器、游戏装置、网络路由器或集线器、无线接入点(AP)或中继器、机顶盒或者它们的组合。此外,尽管仅示出单个机器或系统,但术语“机器”或“系统”还应被认为包括用于单独地或联合地执行一组(或多组)指令以进行这里论述的方法中的任一个或多个方法的机器或系统的任何集合。
在一个实施例中,系统1500包括经由总线或互连线1510的处理器1501、存储器1503和装置1505~1508。处理器1501可以表示内部包括单个处理器核或多个处理器核的单个处理器或多个处理器。处理器1501可以表示诸如微处理器或中央处理单元(CPU)等的一个或多个通用处理器。更具体地,处理器1501可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、或者实现其它指令集的处理器、或者实现指令集的组合的处理器。处理器1501还可以是诸如以下等的一个或多个专用处理器:专用集成电路(ASIC)、蜂窝或基带处理器、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器、图形处理器、网络处理器、通信处理器、加密处理器、辅助处理器、嵌入式处理器、或者能够处理指令的任何其它类型的逻辑。
处理器1501(其可以是诸如超低电压处理器等的低功率多核处理器插槽)可用作用于与系统的各种组件进行通信的主处理单元和中央集线器。这种处理器可被实现为片上系统(SoC)。处理器1501被配置为执行用于进行这里论述的操作和步骤的指令。系统1500还可以包括与可选图形子系统1504进行通信的图形接口,其中该可选图形子系统1504可以包括显示控制器、图形处理器和/或显示装置。
处理器1501可以与存储器1503进行通信,其中该存储器1503在一个实施例中可以经由多个存储器装置来实现以提供给定量的系统内存。存储器1503可以包括诸如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)或其它类型的存储装置等的一个或多个易失性存储(或存储器)装置。存储器1503可以存储包括由处理器1501或任何其它装置执行的指令序列的信息。例如,各种操作系统、装置驱动器、固件(例如,输入输出基本系统或BIOS)和/或应用的可执行代码和/或数据可被加载在存储器1503中并由处理器1501执行。操作系统可以是任何类型的操作系统,例如来自
Figure BDA0001726178820000071
的/>
Figure BDA0001726178820000072
操作系统、来自Apple的Mac/>
Figure BDA0001726178820000073
来自/>
Figure BDA0001726178820000075
的/>
Figure BDA0001726178820000074
或者诸如VxWorks等的其它实时或嵌入式操作系统等。
系统1500还可以包括诸如装置1505~1508等的IO装置,其中这些IO装置包括网络接口装置1505、可选输入装置1506以及其它的可选IO装置1507。网络接口装置1505可以包括无线收发器和/或网络接口卡(NIC)。无线收发器可以是WiFi收发器、红外收发器、Bluetooth(蓝牙)收发器、WiMax收发器、无线蜂窝电话收发器、卫星收发器(例如,全球定位系统(GPS)收发器)或其它射频(RF)收发器、或者它们的组合。NIC可以是以太网卡。
输入装置1506可以包括鼠标、触摸垫、触敏屏幕(其可以与显示装置1504一体化)、诸如触控笔等的指针装置、以及/或者键盘(例如,物理键盘或者显示为触敏屏幕的一部分的虚拟键盘)。例如,输入装置1506可以包括连接至触摸屏的触摸屏控制器。触摸屏和触摸屏控制器可以例如使用多个触敏度技术(其包括但不限于电容技术、电阻技术、红外技术和表面声波技术)、以及其它接近传感器阵列或者用于确定与触摸屏的一个或多个接触点的其它元件中的任何来检测接触和移动或它们的中断。
IO装置1507可以包括音频装置。音频装置可以包括扬声器和/或麦克风以促进支持语音的功能,诸如语音识别、语音复制、数字记录和/或电话功能等。其它IO装置1507还可以包括通用串行总线(USB)端口、并行端口、串行端口、打印机、网络接口、总线桥(例如,PCI-PCI桥)、传感器(例如,诸如加速计、陀螺仪、磁力计、光传感器、指南针、接近传感器等的运动传感器)、或者它们的组合。装置1507还可以包括摄像处理子系统(例如,照相机),其中该摄像处理子系统可以包括诸如电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光学传感器等的用于促进诸如记录照相和视频剪辑等的照相机功能的光学传感器。根据系统1500的特定结构或设计,某些传感器可以经由传感器集线器(未示出)连接至互连线1510,而诸如键盘或热传感器等的其它装置可以由嵌入式控制器(未示出)控制。
为了提供诸如数据、应用以及一个或多个操作系统等的信息的永久存储,大容量存储器(未示出)也可以连接至处理器1501。在各种实施例中,为了使得能够实现更薄更轻的系统设计以及为了提高系统响应性,可以经由固态装置(SSD)来实现该大容量存储器。然而,在其它实施例中,大容量存储器可以主要使用具有较少量的SSD存储器用作SSD高速缓存的硬盘驱动器(HDD)来实现,使得能够实现断电事件期间的上下文状态和其它这种信息的非易失性存储,由此在重新启动系统活动期间可以发生快速上电。另外,闪存装置可以例如经由串行外设接口(SPI)连接至处理器1501。该闪存装置可以提供包括基本输入/输出软件(BIOS)的系统软件以及系统的其它固件的非易失性存储。
存储装置1508可以包括计算机可访问存储介质1509(还已知为机器可读存储介质或计算机可读介质),其中在该计算机可访问存储介质1509上,存储有体现这里所述的方法或功能中的任一个或多个的一组或多组指令或软件(例如,处理模块、单元和/或逻辑1528)。如上所述,处理模块/单元/逻辑1528可以表示上述的任何组件,例如备份历史模块123、快照生成模块203、重复数据删除逻辑或备份引擎等。处理模块/单元/逻辑1528在由数据处理系统1500、存储器1503和处理器1501执行期间,也可以完全地或至少部分地驻留在存储器1503内和/或处理器1501内,从而还构成机器可访问存储介质。处理模块/单元/逻辑1528还可以经由网络接口装置1505通过网络来发送或接收。
计算机可读存储介质1509也可用于永久地存储上述的一些软件功能。尽管计算机可读存储介质1509在典型实施例中被示出为单个介质,但术语“计算机可读存储介质”应被认为包括用于存储一组或多组指令的单个介质或多个介质(例如,集中式或分布式数据库以及/或者关联的高速缓存器和服务器)。术语“计算机可读存储介质”还应被认为包括能够存储或编码由机器执行的一组指令并且使机器进行本发明的方法中的任何一个或多个方法的任何介质。相应地,术语“计算机可读存储介质”应被认为包括但不限于固态存储器、以及光学和磁性介质、或者任何其它非暂时性机器可读介质。
这里描述的处理模块/单元/逻辑1528、组件和其它特征可被实现为分立的硬件组件、或者集成在诸如ASICS、FPGA、DSP或相似装置等的硬件组件的功能中。另外,处理模块/单元/逻辑1528可被实现为硬件装置内的固件或功能电路。此外,处理模块/单元/逻辑1528可以采用硬件装置和软件组件的任何组合来实现。
注意,尽管系统1500例示有数据处理系统的各种组件,但这并不意图表示使这些组件互连的任何特定架构或方式;因为这些细节与本发明的实施例并无密切关系。还应当理解,网络计算机、手持式计算机、移动电话、服务器、以及/或者具有更少的组件或可能更多的组件的其它数据处理系统也可用于本发明的实施例。
前面的详细说明的一些部分已从针对计算机存储器内的数据位的操作的算法和符号表示方面进行了呈现。这些算法描述和表示是数据处理领域的技术人员为了将他们工作的实质最有效地传达给本领域其它技术人员所使用的方式。算法在这里通常被认为是产生期望结果的自洽的操作序列。这些操作是需要对物理量进行物理操纵的操作。
然而,应当牢记,所有这些以及类似的术语都应与适当的物理量相关联,并且仅仅是应用于这些物理量的方便标签。除非另外特别说明,否则从以上论述显而易见,应当理解,在整个说明书中,利用诸如在所附权利要求书中阐述的术语等的术语的论述是指计算机系统或类似的电子计算装置的如下动作和处理:将计算机系统的寄存器和存储器内的被表示为物理(电子)量的数据操纵并变换成该计算机系统存储器或寄存器或者其它这种信息存储、传输或显示装置内的类似地被表示为物理量的其它数据。
本发明的实施例还涉及用于进行这里的操作的设备。这种计算机程序存储在非暂时性计算机可读介质中。机器可读介质包括用于以机器(例如,计算机)可读的形式存储信息的任何机制。例如,机器可读(例如,计算机可读)介质包括机器(例如,计算机)可读存储介质(例如,只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光存储介质、闪速存储器装置)。
在前面的附图中所示的处理或方法可以通过包括硬件(例如,电路、专用逻辑等)、软件(例如,其在非暂时性计算机可读介质上体现)或这两者的组合的处理逻辑来进行。尽管以上根据一些顺序操作描述了处理或方法,但应当理解,所描述的操作中的一些操作可以按不同的顺序进行。此外,一些操作可以并行而不是顺次进行。
没有参考任何特定的编程语言描述本发明的实施例。应当理解,可以使用各种编程语言来实现这里所述的本发明的实施例的教导。
在前述的说明书中,已经参考本发明的特定典型实施例描述了本发明的实施例。显而易见,可以在没有背离如在所附权利要求书中阐述的本发明的更广泛的精神和范围的情况下对本发明进行各种修改。因此,说明书和附图应被认为是说明性的而不是限制性的。

Claims (18)

1.一种用于在虚拟化环境中进行基于代理的分区备份的计算机实现的方法,所述方法包括:
将备份源虚拟机磁盘挂载到备份代理;
在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息以提供虚拟机的分区级备份,其中,所述分区信息包括所述备份源分区的开始扇区和所述备份源分区的扇区计数;以及
利用所述备份代理,基于所述备份源分区的开始扇区和扇区计数来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区。
2.根据权利要求1所述的计算机实现的方法,其中,所述备份代理由备份服务器控制。
3.根据权利要求1所述的计算机实现的方法,其中,挂载所述备份源虚拟机磁盘包括:利用虚拟机磁盘应用编程接口即虚拟机磁盘API。
4.根据权利要求1所述的计算机实现的方法,其中,获得所述分区信息包括:利用磁盘分区工具。
5.根据权利要求1所述的计算机实现的方法,其中,读取所述分区数据包括:利用虚拟机磁盘操作API。
6.根据权利要求1所述的计算机实现的方法,其中,所述备份源分区不包括无用数据或临时数据。
7.一种用于在虚拟化环境中进行基于代理的分区备份的设备,所述设备包括:
用于将备份源虚拟机磁盘挂载到备份代理的部件;
用于在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息以提供虚拟机的分区级备份的部件,其中,所述分区信息包括所述备份源分区的开始扇区和所述备份源分区的扇区计数;以及
用于利用所述备份代理、基于所述备份源分区的开始扇区和扇区计数来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区的部件。
8.根据权利要求7所述的设备,其中,所述备份代理由备份服务器控制。
9.根据权利要求7所述的设备,其中,用于挂载所述备份源虚拟机磁盘的部件包括用于利用虚拟机磁盘应用编程接口即虚拟机磁盘API的部件。
10.根据权利要求7所述的设备,其中,用于获得所述分区信息的部件包括用于利用磁盘分区工具的部件。
11.根据权利要求7所述的设备,其中,用于读取所述分区数据的部件包括用于利用虚拟机磁盘操作API的部件。
12.根据权利要求7所述的设备,其中,所述备份源分区不包括无用数据或临时数据。
13.一种数据处理系统,包括:
处理器;以及
存储器,其连接至所述处理器以存储指令,所述指令在由所述处理器执行时使所述处理器执行备份操作,所述备份操作包括:
将备份源虚拟机磁盘挂载到备份代理;
在所述备份代理处获得所述备份源虚拟机磁盘上的备份源分区的分区信息以提供虚拟机的分区级备份,其中,所述分区信息包括所述备份源分区的开始扇区和所述备份源分区的扇区计数;以及
利用所述备份代理,基于所述备份源分区的开始扇区和扇区计数来读取所述备份源分区的分区数据并将所述分区数据备份到数据存储区。
14.根据权利要求13所述的数据处理系统,其中,所述备份代理由备份服务器控制。
15.根据权利要求13所述的数据处理系统,其中,挂载所述备份源虚拟机磁盘包括:利用虚拟机磁盘应用编程接口即虚拟机磁盘API。
16.根据权利要求13所述的数据处理系统,其中,获得所述分区信息包括:利用磁盘分区工具。
17.根据权利要求13所述的数据处理系统,其中,读取所述分区数据包括:利用虚拟机磁盘操作API。
18.根据权利要求13所述的数据处理系统,其中,所述备份源分区不包括无用数据或临时数据。
CN201810753506.8A 2018-07-10 2018-07-10 用于无代理程序的分区备份的方法、设备和数据处理系统 Active CN110704237B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810753506.8A CN110704237B (zh) 2018-07-10 2018-07-10 用于无代理程序的分区备份的方法、设备和数据处理系统
US16/137,272 US10810090B2 (en) 2018-07-10 2018-09-20 Agent-less disk partition backup

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810753506.8A CN110704237B (zh) 2018-07-10 2018-07-10 用于无代理程序的分区备份的方法、设备和数据处理系统

Publications (2)

Publication Number Publication Date
CN110704237A CN110704237A (zh) 2020-01-17
CN110704237B true CN110704237B (zh) 2023-07-07

Family

ID=69139413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810753506.8A Active CN110704237B (zh) 2018-07-10 2018-07-10 用于无代理程序的分区备份的方法、设备和数据处理系统

Country Status (2)

Country Link
US (1) US10810090B2 (zh)
CN (1) CN110704237B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112583671B (zh) * 2020-12-14 2022-03-25 上海英方软件股份有限公司 一种通过代理网关对虚拟机进行演练的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060476B1 (en) * 2008-07-14 2011-11-15 Quest Software, Inc. Backup systems and methods for a virtual computing environment
US8782008B1 (en) * 2012-03-30 2014-07-15 Emc Corporation Dynamic proxy server assignment for virtual machine backup
CN104216801A (zh) * 2014-09-04 2014-12-17 北京联创信安科技有限公司 一种面向虚拟化环境的数据复制方法及系统
CN104461783A (zh) * 2014-12-10 2015-03-25 上海爱数软件有限公司 一种跟踪扇区数据变化虚拟机备份方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5706472A (en) * 1995-02-23 1998-01-06 Powerquest Corporation Method for manipulating disk partitions
US7966290B2 (en) * 2008-07-29 2011-06-21 Novell, Inc. Backup without overhead of installed backup agent
US8074038B2 (en) * 2009-05-12 2011-12-06 Microsoft Corporation Converting luns into files or files into luns in real time
US8495317B2 (en) * 2010-02-22 2013-07-23 Ca, Inc. System and method for improving performance of data container backups
US9628561B1 (en) * 2014-12-19 2017-04-18 EMC IP Holding Company LLC System and method for smart throttling mechanisms for virtual backup appliances
US9665445B1 (en) * 2014-12-23 2017-05-30 EMC IP Holding Company LLC Virtual proxy based backup
US10084873B2 (en) * 2015-06-19 2018-09-25 Commvault Systems, Inc. Assignment of data agent proxies for executing virtual-machine secondary copy operations including streaming backup jobs
US9563514B2 (en) * 2015-06-19 2017-02-07 Commvault Systems, Inc. Assignment of proxies for virtual-machine secondary copy operations including streaming backup jobs
US9740577B1 (en) * 2015-08-31 2017-08-22 EMC IP Holding Company LLC Backing up a virtual machine and restoring from a synthetic full backup

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060476B1 (en) * 2008-07-14 2011-11-15 Quest Software, Inc. Backup systems and methods for a virtual computing environment
US8782008B1 (en) * 2012-03-30 2014-07-15 Emc Corporation Dynamic proxy server assignment for virtual machine backup
CN104216801A (zh) * 2014-09-04 2014-12-17 北京联创信安科技有限公司 一种面向虚拟化环境的数据复制方法及系统
CN104461783A (zh) * 2014-12-10 2015-03-25 上海爱数软件有限公司 一种跟踪扇区数据变化虚拟机备份方法

Also Published As

Publication number Publication date
US10810090B2 (en) 2020-10-20
CN110704237A (zh) 2020-01-17
US20200019473A1 (en) 2020-01-16

Similar Documents

Publication Publication Date Title
US10754845B2 (en) System and method for XOR chain
US10331516B2 (en) Content-aware data recovery method for elastic cloud storage
US10565064B2 (en) Effective data change based rule to enable backup for specific VMware virtual machine
WO2018059027A1 (zh) 一种内存回收方法及终端
US10496497B1 (en) Live object level inter process communication in federated backup environment
US11301338B2 (en) Recovery on virtual machines with existing snapshots
US11693466B2 (en) Application processor and system on chip
US11467920B2 (en) Methods and systems to index file data of virtual machine (VM) image
US10496492B2 (en) Virtual machine backup with efficient checkpoint handling based on a consistent state of the virtual machine of history data and a backup type of a current consistent state of the virtual machine
TWI608345B (zh) Operating system recovery method, device and terminal equipment
CN110688250B (zh) 用于分区级恢复的方法、设备和数据处理系统
US11003543B2 (en) Generic metadata tags with namespace-specific semantics in a storage appliance
US11010332B2 (en) Set-based mutual exclusion using object metadata tags in a storage appliance
CN110704237B (zh) 用于无代理程序的分区备份的方法、设备和数据处理系统
US11847030B2 (en) Prioritizing virtual machines for backup protection at a virtual machine disk level
US20210200526A1 (en) Method and system for dynamic upgrade predictions for a multi-component product
US10838823B2 (en) Systems and method to make application consistent virtual machine backup work in private network
US10374637B1 (en) System and method for unbalanced load handling with distributed erasure coding
US10416923B1 (en) Fast backup solution for cluster shared volumes shared across a cluster of nodes using extent sets as parallel save streams
US11513919B2 (en) System and method of generating automatic checkpoints of a distributed file system
US10430291B1 (en) Effective method to backup VMs in larger VM infrastructure
US10579480B1 (en) Fast hyper-V protection using parallel save streams
US10860242B1 (en) Method for automatic instant access mount point cleanup
US10423351B1 (en) System and method for capacity and network traffic efficient data protection on distributed storage system
US11425191B1 (en) Unified and efficient method to generate file system table (FSTAB) to support on-premise and multi-cloud environment

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