IP Library Granted Patent US 7,669,020
Granted Patent B1
US 7,669,020 · App. 11/119,600 · Granted Feb 23, 2010

Host-based backup for virtual machines

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 7,669,020
App. No.
11/119,600
Filed
May 2, 2005
Granted
Feb 23, 2010
Kind
B1
Art Unit
2191
USPC
717/162
Abstract

A system, method, and computer-accessible medium for centralized backup of a plurality of virtual machines are disclosed. Each virtual machine comprises at least one virtual volume. The plurality of virtual volumes are accessed through a central computer system. The central computer system is used to backup data from the plurality of virtual volumes in a manner substantially independent of execution of the plurality of virtual machines.

Claims (59)

1. A method comprising:

initiating execution of a plurality of virtual machines, wherein each of the plurality of virtual machines comprises at least one respective virtual volume of a plurality of virtual volumes, wherein each of the plurality of virtual volumes corresponds to a respective file, wherein the files are stored on one or more host volumes;

accessing the plurality of virtual volumes through a central computer system; and

using the central computer system to backup data from the plurality of virtual volumes independent of execution of the plurality of virtual machines, thereby bypassing the plurality of virtual machines, wherein using the central computer system to backup the data comprises:

generating snapshots of the one or more host volumes;

locating the files corresponding to the plurality of virtual volumes in the snapshots of the one or more host volumes; and

sending at least a subset of data from the files corresponding to the plurality of virtual volumes to a backup engine.

2. The method of claim 1 ,

wherein the central computer system comprises a host computer system which hosts the plurality of virtual machines; and

wherein the host computer system comprises the one or more host volumes.

3. The method of claim 2 ,

wherein the accessing the plurality of virtual volumes comprises accessing the plurality of virtual volumes as child volumes of the one or more host volumes.

4. The method of claim 1 ,

wherein the central computer system comprises an additional virtual machine, wherein the accessing the plurality of virtual volumes through a central computer system comprises exporting the plurality of virtual volumes to the additional virtual machine.

5. The method of claim 1 , further comprising:

specifying a subset of the data from the plurality of virtual volumes for backup;

wherein the using the central computer system to backup the data from the plurality of virtual volumes comprises using the central computer system to backup the subset of the data from the plurality of virtual volumes.

6. The method of claim 1 , further comprising:

specifying at least one sequence of blocks from the plurality of virtual volumes for backup;

wherein the using the central computer system to backup the data from the plurality of virtual volumes comprises using the central computer system to backup the at least one sequence of blocks from the plurality of virtual volumes.

7. The method of claim 1 , further comprising:

specifying at least one file or directory from the plurality of virtual volumes for backup;

wherein the using the central computer system to backup the data from the plurality of virtual volumes comprises using the central computer system to backup the at least one file or directory from the plurality of virtual volumes.

8. The method of claim 1 ,

wherein the using the central computer system to backup the data from the plurality of virtual volumes comprises storing the data on a backup volume;

wherein the method further comprises:

reading a subset of the data from the backup volume and restoring the subset of the data to the plurality of virtual volumes.

9. The method of claim 8 ,

wherein the restoring the subset of the data to the plurality of virtual volumes comprises restoring the subset of the data independent of execution of the plurality of virtual machines.

10. A system comprising:

a plurality of virtual machines, wherein each of the plurality of virtual machines comprises at least one respective virtual volume of a plurality of virtual volumes, wherein each of the plurality of virtual volumes corresponds to a respective file, wherein the files are stored on one or more host volumes; and

a central computer system comprising at least one processor and a memory, wherein the central computer system is communicatively coupled to the plurality of virtual machines, and wherein the memory stores program instructions, wherein the program instructions are executable by the at least one processor to backup data from the plurality of virtual volumes independent of execution of the plurality of virtual machines, thereby bypassing the plurality of virtual machines, wherein, in backing up the data from the plurality of virtual volumes, the program instructions are executable by the at least one processor to:

generate snapshots of the one or more host volumes;

locate the files corresponding to the plurality of virtual volumes in the snapshots of the one or more host volumes; and

send at least a subset of data from the files corresponding to the plurality of virtual volumes to a backup engine.

11. The system of claim 10 ,

wherein the central computer system comprises a host computer system which hosts the plurality of virtual machines; and

wherein the host computer system comprises the one or more host volumes.

12. The system of claim 10 ,

wherein in backing up the data from the plurality of virtual volumes, the program instructions are executable by the at least one processor to store the data on a backup volume; and

wherein the program instructions are executable by the at least one processor to read a subset of the data from the backup volume and restore the subset of the data to the plurality of virtual volumes.

13. The system of claim 10 ,

wherein the central computer system comprises an additional virtual machine, wherein the plurality of virtual volumes are exported to the additional virtual machine for backup.

14. A tangible computer-accessible storage medium comprising program instructions, wherein the program instructions are computer-executable to implement:

initiating execution of a plurality of virtual machines, wherein each of the plurality of virtual machines comprises at least one respective virtual volume of a plurality of virtual volumes, wherein each of the plurality of virtual volumes corresponds to a respective file, wherein the files are stored on one or more host volumes;

accessing the plurality of virtual volumes through a central computer system; and

using the central computer system to backup data from the plurality of virtual volumes independent of execution of the plurality of virtual machines, thereby bypassing the plurality of virtual machines, wherein using the central computer system to backup the data comprises:

generating snapshots of the one or more host volumes;

locating the files corresponding to the plurality of virtual volumes in the snapshots of the one or more host volumes; and

sending at least a subset of data from the files corresponding to the plurality of virtual volumes to a backup engine.

15. The tangible, computer-accessible storage medium of claim 14 ,

wherein the central computer system comprises a host computer system which hosts the plurality of virtual machines; and

wherein the host computer system comprises the one or more host volumes.

16. The tangible, computer-accessible storage medium of claim 14 ,

wherein in using the central computer system to backup the data stored on the plurality of virtual volumes, the program instructions are further computer-executable to implement storing the data on a backup volume;

wherein the program instructions are further computer-executable to implement reading a subset of the data from the backup volume and restoring the subset of the data to the plurality of virtual volumes.

17. The tangible, computer-accessible storage medium of claim 14 ,

wherein the central computer system comprises an additional virtual machine;

wherein in accessing the plurality of virtual volumes through a central computer system, the program instructions are further computer-executable to implement exporting the plurality of virtual volumes to the additional virtual machine.

Assignments (15)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 019872 FRAME 979. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE IS SYMANTEC OPERATING CORPORATION. Recorded Mar 5, 2012
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 027819/0462 →
CHANGE OF NAME Recorded Sep 26, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 019872/0979 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2005
From: SHAH, SUNIL; ROSSI, ROBERT P.
To: VERITAS OPERATING CORPORATION
Reel/Frame 016527/0693 →