IP Library Granted Patent US 9,442,753
Granted Patent B2
US 9,442,753 · App. 14/652,763 · Granted Sep 13, 2016

Creating 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 9,442,753
App. No.
14/652,763
Granted
Sep 13, 2016
Kind
B2
Abstract

A method to create virtual machines is provided. An initially empty primary copy-on-write (COW) image of a base disk image is created, and an initially empty secondary COW image of the primary COW image is created. A virtual machine is booted from the secondary COW image. Writes by the virtual machine are stored in the secondary COW image. When the secondary COW image reaches a capacity threshold, data of the secondary COW image is committed into the primary COW image and then the secondary COW is cleared of data.

Claims (53)

1. A method to create virtual machines, comprising:

creating an initially empty primary copy-on-write image of a base disk image, the base disk image being a template for the virtual machines;

creating an initially empty secondary copy-on-write image of the primary copy-on-write image;

booting a virtual machine from the secondary copy-on-write image;

storing writes by the virtual machine writes in the secondary copy-on-write image; and

when the secondary copy-on-write image reaches a capacity threshold, committing data from the secondary copy-on-write image into the primary copy-on-write image and clearing the secondary copy-on-write image.

2. The method of claim 1 , further comprising backing up the data of the secondary copy-on-write image prior to clearing the secondary copy-on-write image.

3. The method of claim 2 , further comprising, when backing up the data of the secondary copy-on-write image for the very first time, backing up the base disk image.

4. The method of claim 3 , further comprising recovering the virtual machine by:

retrieving the backup base disk image and all backup secondary copy-on-write images;

creating an initially empty new primary copy-on-write image of the backup base disk image;

committing data from all the backup secondary copy-on-write images into the new primary copy-on-write image;

creating an initially empty new secondary copy-on-write image of the new primary copy-on-write image;

booting a new virtual machine from the new secondary copy-on-write image; and

storing writes by the new virtual machine writes in the new secondary copy-on-write image.

5. The method of claim 1 , further comprising, when the virtual machine is to be backed up, backing up the data of the secondary copy-on-write image, committing the data from the secondary copy-on-write image into the primary copy-on-write image, and clearing the secondary copy-on-write image.

6. The method of claim 5 , further comprising, when backing up the data of the secondary copy-on-write image for the very first time, backing up the base disk image.

7. The method of claim 6 , further comprising recovering the virtual machine by:

retrieving the backup base disk image and all backup secondary copy-on-write images;

creating an initially empty new primary copy-on-write image of the backup base disk image;

committing data from all the backup secondary copy-on-write images into the new primary copy-on-write image;

creating an initially empty new secondary copy-on-write image of the new primary copy-on-write image;

booting a new virtual machine from the new secondary copy-on-write image; and

storing writes by the new virtual machine writes in the new secondary copy-on-write image.

8. A apparatus to create virtual machines, comprising:

a copy-on-write image creator module to create an initially empty primary copy-on-write image of a base disk image and an initially empty secondary copy-on-write image of the primary copy-on-write image, the base disk image being a template for the virtual machines;

a modification and storage module to store writes by a virtual machine in the secondary copy-on-write image, the virtual machine being booted from the secondary copy-on-write image; and

a copy-on-write image processor module to, when the secondary copy-on-write image reaches a capacity threshold, commit data from the secondary copy-on-write image into the primary copy-on-write image and then clearing the secondary copy-on-write image;

a processor to execute the copy-on-write image creator module, the modification and storage module and the copy-on-write image processor module.

9. The apparatus of claim 8 , further comprising a copy-on-write image backup module to back up the data of the secondary copy-on-write image prior to clearing the secondary copy-on-write image.

10. The apparatus of claim 9 , further comprising a base disk image backup module to, when data of the secondary copy-on-write image is backed up for the very first time, back up the base disk image.

11. The apparatus of claim 10 , further comprising a virtual machine recovery module to:

retrieve the backup base disk image and all backup secondary copy-on-write images;

create an initially empty new primary copy-on-write image of the backup base disk image;

commit data from all the backup secondary copy-on-write images into the new primary copy-on-write image;

create an initially empty new secondary copy-on-write image of the new primary copy-on-write image;

boot a new virtual machine from the new secondary copy-on-write image; and

store writes by the new virtual machine writes in the new secondary copy-on-write image.

12. The apparatus of claim 8 , wherein the copy-on-write image processor module is further to, when the virtual machine is to be backed up, back up the data of the secondary copy-on-write image, commit the data from the secondary copy-on-write image into the primary copy-on-write image, and clear the secondary copy-on-write image.

13. The apparatus of claim 12 , further comprising a base disk image backup module to, when the data of the secondary copy-on-write image is backed up for the very first time, back up the base disk image.

14. The apparatus of claim 13 , further comprising a virtual machine recovery module to:

retrieve the backup base disk image and all backup secondary copy-on-write images;

create an initially empty new primary copy-on-write image of the backup base disk image;

commit data from all the backup secondary copy-on-write images into the new primary copy-on-write image;

create an initially empty new secondary copy-on-write image of the new primary copy-on-write image;

boot a new virtual machine from the new secondary copy-on-write image; and

store writes by the new virtual machine writes in the new secondary copy-on-write image.

15. A non-transitory, machine readable medium comprising instructions to be executed by a processor to:

create an initially empty primary copy-on-write image of a base disk image, the base disk image being a template for virtual machines;

create an initially empty secondary copy-on-write image of the primary copy-on-write image;

boot a virtual machine from the secondary copy-on-write image;

store writes by the virtual machine writes in the secondary copy-on-write image; and

when the secondary copy-on-write image reaches a capacity threshold, commit data from the secondary copy-on-write image into the primary copy-on-write image and clearing the secondary copy-on-write image.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2016
From: H3C TECHNOLOGIES CO., LTD.; HANGZHOU H3C TECHNOLOGIES CO., LTD.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 039767/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2015
From: ZHENG, XIONGKAI
To: HANGZHOU H3C TECHNOLOGIES CO., LTD.
Reel/Frame 036002/0548 →