IP Library Granted Patent US 10,146,634
Granted Patent B1
US 10,146,634 · App. 14/230,928 · Granted Dec 4, 2018

Image restore from incremental backup

Inventors: Brian J. Bishop (Redmond, WA); Jerzy Gruszka (Bellevue, WA); Matthew D. Buchman (Seattle, WA); Min-Chih L. Earl (Redmond, WA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/1458G06F17/30088
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,146,634
App. No.
14/230,928
Filed
Mar 31, 2014
Granted
Dec 4, 2018
Kind
B1
Art Unit
2154
USPC
707/641
Abstract

Systems and methods for backing up and restoring virtual machines in a cluster environment. An instrumentation interface enables configuration data to be stored with save sets during backup and enables the configuration of the destination to be adjusted based on the stored configuration during a restore.

Claims (47)

1. A method for restoring a virtual machine in a cluster computing environment that includes a plurality of nodes including a proxy node, the method comprising:

performing a redirected restore of a virtual machine from a backup chain of the virtual machine to a destination node in the cluster computing environment that is different from a node of the cluster computing environment from which the backup chain was generated, wherein the backup chain includes components of a virtual machine, wherein the backup chain includes a backup component document that includes original names of the components of the virtual machine, wherein the redirected restore is performed by an agent operating on a proxy node;

preparing a configuration of the virtual machine based on the components associated with the virtual machine and included in the backup chain by:

renaming differencing components that were renamed when backing up the virtual machine based on the backup component document in order to change a path of the components to a path of a targeted directory;

importing snapshots, differencing snapshots, configuration files and differencing configuration files;

obtaining settings for the virtual machine by importing a virtual machine management object that stored the settings, where the settings include virtual hard disk settings, wherein the virtual machine management object is obtained from the imported virtual machine;

setting a resource property of the location to the path of the targeted directory for the virtual hard disks; and

removing any version of the virtual machine that exists in the cluster computing environment;

merging the snapshots and merging the configuration files to prepare the virtual machine for operation;

instantiating the virtual machine on the destination node of the cluster computing environment.

2. The method of claim 1 , wherein restoring a backup chain includes retrieving a save set from a storage device.

3. The method of claim 1 , wherein preparing a configuration of the virtual machine includes preparing a planned virtual machine from the components, wherein the components include the snapshots, the differencing snapshots, the configuration files, and the differencing configuration files.

4. The method of claim 3 , wherein preparing a planned virtual machine includes renaming at least some of the components of the virtual machine such that a virtual hard drive points to a targeted directory.

5. The method of claim 4 , further comprising applying the settings to the virtual machine.

6. The method of claim 5 , further comprising applying the settings of the virtual hard drive.

7. The method of claim 6 , further comprising converting the planned virtual machine to a realized virtual machine.

8. The method of claim 4 , wherein renaming at least some of the components includes providing the targeted path name for the virtual hard drive.

9. The method of claim 1 , wherein the virtual machine is restored to the destination node in the computing environment by an agent residing on a proxy node that is different from the destination node.

10. A method for restoring a virtual machine to a destination node in a cluster, the method comprising:

retrieving a save set of the virtual machine that was running on a node in the cluster from a backup location by an agent operating on a proxy node in the cluster, wherein the proxy node is different from the destination node and from the node from which the virtual machine was backed up, wherein the agent on the proxy node performs a redirected restore of the virtual machine to the destination node, wherein the save set includes components of a virtual machine, wherein the components include snapshots and incremental snapshots and configuration files and incremental configuration files, wherein the save set includes a backup component document that includes original names of the snapshots and the incremental snapshots;

forming a planned virtual machine from the save set by fixing a configuration of the planned virtual machine, wherein the configuration is included in the save sets;

obtaining a backup component document generated by a framework that generated the save set;

renaming at least some of the components based on information generated during a backup of the virtual machine back based on the backup component document in order to change a path of the components to a path of a targeted directory;

obtaining settings of the planned virtual machine from a virtual machine management object in which the settings area stored and applying the settings to the planned virtual machine, wherein the virtual machine management object is obtained from the imported virtual machine;

setting a resource property of a destination node to a path for a virtual hard disk of the virtual machine;

removing any version of the virtual machine that is present in the cluster;

merging the components to finalize the planned virtual machine; and

converting the planned virtual machine to a realized virtual machine, wherein the realized virtual machine is realized without relying on the framework that generated the save set.

11. The method of claim 10 , further comprising migrating the realized virtual machine to a destination node in the cluster.

12. The method of claim 10 , wherein forming a planned virtual machine includes importing the snapshots, the incremental snapshots, the configuration files, and the incremental configuration files.

13. The method of claim 12 , wherein forming a planned virtual machine includes obtaining settings of the virtual hard disks of the planned virtual machine and applying the settings.

14. The method of claim 13 , further comprising changing the resource property of the destination node for the virtual machine such that the resource property points to the realized virtual machine.

15. The method of claim 13 , further comprising interpreting the backup component document generated by the framework to rename at least some of the components.

16. The method of claim 10 , further comprising renaming the components such that the snapshots and the differencing snapshots point to a targeted directory.

17. A method for restoring a virtual machine to a destination node in a cluster using an agent running on a proxy node in the cluster, the method comprising:

removing any versions of the virtual machine that exist in the cluster before performing a redirected restore of the virtual machine to the destination node, wherein the destination node is different from the node from which a backup chain of the virtual machine was generated, wherein;

performing the redirected restore of the virtual machine to the destination node by restoring the backup chain beginning with a full backup and subsequent incremental backups to a targeted location, wherein components included in the backup chain are used to realize a planned virtual machine and wherein the backup chain includes one or more snapshots including differential differencing disks and one or more configuration files, wherein the backup chain is associated with a backup component document that includes original names of the one or more snapshots;

fixing the planned virtual machine by:

renaming at least the differencing disks and the configuration files based on the backup component document produced by a framework that generated the one or more snapshots, wherein renaming configuration files includes renaming paths and filenames based on the backup component such that the components all point to a targeted directory;

importing the planned virtual machine;

obtaining settings for the planned virtual machine and for a virtual hard drive associated with the planned virtual machine and applying the settings, wherein the settings are obtained from the imported virtual machine;

setting a resource property to a path corresponding to the targeted directory for the virtual hard disks;

merging the snapshots included in the planned virtual machine; and

instantiating the planned virtual machine to a realized virtual machine on the destination node without relying on the framework that generated the backup chain.

18. The method of claim 17 , further comprising migrating the realized virtual machine to the destination node.

19. The method of claim 17 , further comprising changing a host resource to a path of the virtual hard disk.

20. The method of claim 17 , wherein the virtual machine is restored without invoking a framework that generated the one or more snapshots included in the backup chain.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2014
From: BISHOP, BRIAN J.; GRUSZKA, JERZY; BUCHMAN, MATTHEW D.; EARL, MIN-CHIH L.
To: EMC CORPORATION
Reel/Frame 032564/0804 →
Cited By (5)
US 12,229,014 US 12,277,038 US 12,373,313 US 12,524,310 US 12,554,597