Rapid virtual machine cloning

US9268610B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9268610-B2
Application numberUS-201314069646-A
CountryUS
Kind codeB2
Filing dateNov 1, 2013
Priority dateNov 1, 2013
Publication dateFeb 23, 2016
Grant dateFeb 23, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A management server clones a source virtual machine to a plurality of target host computers. For each target host, the management server creates linked clones of the source virtual machine in a target data store that is accessible to the target host. The management server starts execution of the linked clones in the target hosts. While the linked clones execute, for each target host, the management server creates full clones of the source virtual machine in the target data store and, after creating the full clones, suspends execution in the linked clones and resumes execution in the full clones.

First claim

Opening claim text (preview).

We claim: 1. A method of cloning virtual machines executing in a plurality of hosts connected to a computer network, wherein the plurality of hosts comprises a source host and a plurality of target hosts including a first target host, the method comprising: receiving a request to clone a source virtual machine to the first target host, wherein the source virtual machine is stored on a source data store that is accessible to the source host and the first target host; creating a first linked clone of the source virtual machine on a first target data store, wherein the first target data store is accessible to the first target host; starting execution of the first linked clone on the first target host; while the first linked clone is executing on the first target host, creating a first intermediate clone of the source virtual machine on the first target data store; and after creating the first intermediate clone: suspending execution in the first linked clone; updating the first intermediate clone based on a modified state of the first linked clone, wherein the updating transforms the first intermediate clone into a first full clone; and resuming execution in the first full clone. 2. The method of claim 1 , wherein creating the first intermediate clone comprises copying virtual disks associated with the source virtual machine to the first target data store, and wherein an end user accesses the linked clone while said virtual disks associated with the source virtual machine are copied. 3. The method of claim 1 , further comprising: after resuming execution in the first full clone, deleting the first linked clone. 4. The method of claim 3 , further comprising: loading the modified state into the first intermediate clone, wherein the modified state is stored in a delta disk associated with the first linked clone; and after resuming execution in the first full clone, deleting the delta disk. 5. The method of claim 1 , wherein the first linked clone includes a plurality of virtual devices including a virtual CPU, virtual I/O devices, virtual disks, and virtual memory, and the stored modified state does not include a state of the virtual memory. 6. The method of claim 5 , wherein the updating of the first intermediate clone further comprises: copying metadata maintained for pages of virtual memory space allocated for the first linked clone; and using the copied metadata as metadata for pages of virtual memory space allocated for the first full clone. 7. The method of claim 1 , wherein the first intermediate clone is created on a local data store accessible to the first target host, and wherein the local data store is not accessible to the source host. 8. The method of claim 1 , further comprising: after creating the first intermediate clone, creating a second intermediate clone of the source virtual machine on the first target data store, wherein the second intermediate clone is copied from the first intermediate clone. 9. The method of claim 8 , wherein the second intermediate clone is created on a second target data store that is accessible to the first target host. 10. A non-transitory computer readable storage medium having stored thereon computer readable program code for cloning virtual machines in a plurality of hosts connected to a computer network, wherein the plurality of hosts comprises a source host and a plurality of target hosts including a first target host, the computer readable program code comprising: computer readable program code to receive a request to clone a source virtual machine to the first target host, wherein the source virtual machine is stored on a source data store that is accessible to the source host and the first target host; computer readable program code to create a first linked clone of the source virtual machine on a first target data store, wherein the first target data store is accessible to the first target host; computer readable program code to start execution of the first linked clone of the source virtual machine on the first target host; computer readable program code to create a first intermediate clone of the source virtual machine on the first target data store while the first linked clone is executing on the first target host; computer readable program code to suspend execution in the first linked clone; computer readable program code to update the first intermediate clone based on a modified state of the first linked clone, wherein the updating transforms the first intermediate clone into a first full clone; and computer readable program code to resume execution in the first full clone. 11. The computer readable storage medium of claim 10 , wherein creating the first intermediate clone comprises: copying virtual disks associated with the source virtual machine to the first target data store, and wherein an end user accesses the linked clone while said virtual disks associated with the source virtual machine are copied. 12. The computer readable storage medium of claim 10 , the computer readable program code further comprising: computer readable program code to delete the first linked clone after resuming execution in the first full clone. 13. The computer readable storage medium of claim 12 , wherein the computer readable program code further comprises: computer readable program code to load the modified state into the first intermediate clone, wherein the modified state is stored in a delta disk associated with the first linked clone; and computer readable program code to delete the delta disk after resuming execution in the first full clone. 14. The computer readable storage medium of claim 10 , wherein the first linked clone includes a plurality of virtual devices including a virtual CPU, virtual I/O devices, virtual disks, and virtual memory, and the stored modified state does not include a state of the virtual memory. 15. The computer readable storage medium of claim 14 , the computer readable program code further comprising: computer readable program code to copy metadata maintained for pages of virtual memory space allocated for the first linked clone and use the copied metadata as metadata for pages of virtual memory space allocated for the first full clone. 16. The computer readable storage medium of claim 10 , wherein the first intermediate clone is created on a local data store accessible to the first target host, and wherein the local data store is not accessible to the source host. 17. The computer readable storage medium of claim 10 , the computer readable program code further comprising: computer readable program code to create a second intermediate clone of the source virtual machine on the first target data store after creation of the first intermediate clone, wherein the second intermediate clone is copied from the first intermediate clone. 18. The computer readable storage medium of claim 17 , wherein the second intermediate clone is created on a second target data store that is accessible to the first target host. 19. A virtualized computing system, comprising: a plurality of hosts including a source host and a plurality of target hosts including a first target host; and a management server configured to manage deployment of virtual machines to the plurality of target hosts, wherein the management server is configured to: receive a request to clone a source virtual machine to the first target host, wherein the source virtual machine is stored on a source data store that is accessible to the source host and the first target host; c

Assignees

Inventors

Classifications

  • G06F9/5016Primary

    the resource being the memory · CPC title

  • resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence) · CPC title

  • Replication mechanisms · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9268610B2 cover?
A management server clones a source virtual machine to a plurality of target host computers. For each target host, the management server creates linked clones of the source virtual machine in a target data store that is accessible to the target host. The management server starts execution of the linked clones in the target hosts. While the linked clones execute, for each target host, the manage…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/5016. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 23 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).