IP Library Granted Patent US 9,304,705
Granted Patent B2
US 9,304,705 · App. 14/020,303 · Granted Apr 5, 2016

Virtual machine cloning

Inventor: Jinto Antony (Bangalore, IN)
Assignee: VMware, Inc.
G06F3/065G06F9/45558G06F17/30088G06F2009/45562
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,304,705
App. No.
14/020,303
Granted
Apr 5, 2016
Kind
B2
Abstract

Exemplary methods, apparatuses, and systems create a parent snapshot of the parent virtual disk in response to receiving a request to clone a parent virtual machine. A clone virtual machine is created with a clone redo log file and clone virtual disk. Copying of the parent virtual disk to the clone virtual disk is initiated. A first active link from the clone redo log file to the parent snapshot is created to provide the clone virtual machine access to the parent snapshot. In response to determining that the copying of the parent virtual disk to the clone virtual disk is complete, the first active link is removed and a second active link is created from the clone redo log file to the clone virtual disk or to a snapshot of the clone virtual disk.

Claims (57)

1. A computer-implemented method, comprising:

in response to receiving a request to create a full clone of a parent virtual machine, the parent virtual machine having a parent virtual disk,

creating a parent snapshot of the parent virtual disk,

creating a parent redo log file linked to the parent virtual disk, wherein the parent redo log stores virtual disk changes made by the parent virtual machine after the parent snapshot is created,

creating a clone virtual machine with a clone redo log file and clone virtual disk,

initiating copying of the parent virtual disk to the clone virtual disk, and

creating a first active link from the clone redo log file to the parent snapshot to provide the clone virtual machine access to the parent snapshot; and

in response to determining that the copying of the parent virtual disk to the clone virtual disk is complete,

removing the first active link, and

creating a second active link from the clone redo log file to the clone virtual disk or a snapshot of the clone virtual disk.

2. The computer-implemented method of claim 1 , further comprising:

creating a passive link from the clone redo log file to the clone virtual disk in response to the received request, wherein creating the second active link includes converting the passive link to an active link.

3. The computer-implemented method of claim 2 , wherein copying the parent virtual disk to the clone virtual disk includes copying the parent snapshot to a clone snapshot, and wherein the passive link from the clone redo log file to the clone virtual disk is changed to a passive link from the clone redo log file to the clone snapshot.

4. The computer-implemented method of claim 1 , further comprising:

merging the clone redo log file into the clone virtual disk.

5. The computer-implemented method of claim 4 , wherein copying the parent virtual disk to the clone virtual disk includes copying the parent snapshot to a clone snapshot, and wherein merging the clone redo log file into the clone virtual disk includes deleting the clone snapshot.

6. The computer-implemented method of claim 1 , further comprising:

in response to determining that the copying of the parent virtual disk to the clone virtual disk is complete, merging the parent redo log file into the parent virtual disk and deleting the parent snapshot.

7. The computer-implemented method of claim 1 , further comprising:

disabling migration of the parent virtual disk while copying the parent virtual disk to the clone virtual disk.

8. The computer-implemented method of claim 1 , wherein virtual disk changes resulting from operation of the clone virtual machine while copying the parent virtual disk to the clone virtual disk are stored in the clone redo log file.

9. A non-transitory computer-readable medium storing instructions, which when executed by a processing device, cause the processing device to perform a method comprising:

in response to receiving a request to create a full clone of a parent virtual machine, the parent virtual machine having a parent virtual disk,

creating a parent snapshot of the parent virtual disk,

creating a parent redo log file linked to the parent virtual disk, wherein the parent redo log stores virtual disk changes made by the parent virtual machine after the parent snapshot is created,

creating a clone virtual machine with a clone redo log file and clone virtual disk,

initiating copying of the parent virtual disk to the clone virtual disk, and

creating a first active link from the clone redo log file to the parent snapshot to provide the clone virtual machine access to the parent snapshot; and

in response to determining that the copying of the parent virtual disk to the clone virtual disk is complete,

removing the first active link, and

creating a second active link from the clone redo log file to the clone virtual disk or a snapshot of the clone virtual disk.

10. The non-transitory computer-readable medium of claim 9 , the method further comprising:

creating a passive link from the clone redo log file to the clone virtual disk in response to the received request, wherein creating the second active link includes converting the passive link to an active link.

11. The non-transitory computer-readable medium of claim 10 , wherein copying the parent virtual disk to the clone virtual disk includes copying the parent snapshot to a clone snapshot, and wherein the passive link from the clone redo log file to the clone virtual disk is changed to a passive link from the clone redo log file to the clone snapshot.

12. The non-transitory computer-readable medium of claim 9 , the method further comprising:

merging the clone redo log file into the clone virtual disk.

13. The non-transitory computer-readable medium of claim 9 , wherein copying the parent virtual disk to the clone virtual disk includes copying the parent snapshot to a clone snapshot, and wherein merging the clone redo log file into the clone virtual disk includes deleting the clone snapshot.

14. The non-transitory computer-readable medium of claim 9 , the method further comprising:

in response to determining that the copying of the parent virtual disk to the clone virtual disk is complete, merging the parent redo log file into the parent virtual disk and deleting the parent snapshot.

15. The non-transitory computer-readable medium of claim 9 , the method further comprising:

disabling migration of the parent virtual disk while copying the parent virtual disk to the clone virtual disk.

16. The non-transitory computer-readable medium of claim 9 , wherein virtual disk changes resulting from operation of the clone virtual machine while copying the parent virtual disk to the clone virtual disk are stored in the clone redo log file.

17. An apparatus comprising:

a processing device, wherein the processing device executes instructions that cause the apparatus to perform a method comprising:

in response to receiving a request to create a full clone of a parent virtual machine, the parent virtual machine having a parent virtual disk,

creating a parent snapshot of the parent virtual disk,

creating a parent redo log file linked to the parent virtual disk, wherein the parent redo log stores virtual disk changes made by the parent virtual machine after the parent snapshot is created,

creating a clone virtual machine with a clone redo log file and clone virtual disk,

initiating copying of the parent virtual disk to the clone virtual disk, and

creating a first active link from the clone redo log file to the parent snapshot to provide the clone virtual machine access to the parent snapshot; and

in response to determining that the copying of the parent virtual disk to the clone virtual disk is complete,

removing the first active link, and

creating a second active link from the clone redo log file to the clone virtual disk or a snapshot of the clone virtual disk.

18. The apparatus of claim 17 , the method further comprising:

creating a passive link from the clone redo log file to the clone virtual disk in response to the received request, wherein creating the second active link includes converting the passive link to an active link.

19. The apparatus of claim 18 , wherein copying the parent virtual disk to the clone virtual disk includes copying the parent snapshot to a clone snapshot, and wherein the passive link from the clone redo log file to the clone virtual disk is changed to a passive link from the clone redo log file to the clone snapshot.

20. The apparatus of claim 17 , the method further comprising: merging the clone redo log file into the clone virtual disk.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2013
From: ANTONY, JINTO
To: VMWARE, INC.
Reel/Frame 031153/0784 →
Continuity (1)
Related Publication 20150074054A1 · Mar 12, 2015