Techniques for virtual machine shifting
US-2015324217-A1 · Nov 12, 2015 · US
US9715347B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9715347-B2 |
| Application number | US-201514712845-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 14, 2015 |
| Priority date | May 14, 2015 |
| Publication date | Jul 25, 2017 |
| Grant date | Jul 25, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques for managing the migration of data from one virtual machine to another using volume snapshotting and sub-file cloning are described. According to exemplary embodiments, data including a header and content is stored on a storage volume associated with a first virtual machine. The header is converted to be compatible with a second virtual machine, and the storage volume is snapshotted to provide a read-only representation of the storage volume at the time that the snapshot was created. New data is created using the converted header and a pointer to the location of the data inside the volume snapshot. Using the exemplary techniques described herein, data can be migrated from one virtual machine to another in constant time, and data access is more robust because the pointer refers to the volume snapshot.
Opening claim text (preview).
The invention claimed is: 1. A method comprising: receiving a request to migrate a first virtual disk from a source virtual machine to a destination virtual machine, wherein the first virtual disk is stored on a volume accessible to the source virtual machine; generating a snapshot of a hypervisor managing the source virtual machine; identifying a header of the first virtual disk; modifying the header to be compatible with the destination virtual machine; identifying, on the volume accessible to the source virtual machine, a snapshot of the volume; generating a pointer to content of the first virtual disk within the snapshot of the volume; and creating a second virtual disk for the destination virtual machine without copying the content from the first virtual disk, wherein the second virtual disk comprises the modified header and the pointer to the content of the first virtual disk within the snapshot of the volume. 2. The method of claim 1 , wherein modifying the header to be compatible with the destination virtual machine comprises: identifying a first virtual disk format utilized by a first hypervisor managing the source virtual machine and a second virtual disk format utilized by a second hypervisor managing the destination virtual machine; and reformatting the header from the first virtual disk format to the second virtual disk format. 3. The method of claim 1 , wherein generating the snapshot of the hypervisor managing the source virtual machine comprises: identifying the source virtual machine and the hypervisor based, at least in part, on the request to migrate the first virtual disk; and generating the snapshot prior to migration of the first virtual disk to the destination virtual machine. 4. The method of claim 1 , further comprising: determining a time associated with the request to migrate the first virtual disk; wherein identifying, on the volume accessible to the source virtual machine, the snapshot of the volume comprises identifying the snapshot of the volume based, at least in part, on the time. 5. The method of claim 1 , further comprising flagging the snapshot of the volume as read-only prior to generating the pointer to the content of the first virtual disk within the snapshot. 6. The method of claim 1 , wherein generating a pointer to content of the first virtual disk within a snapshot of the volume comprises: determining a location of the content as stored on the volume; and analyzing metadata of the snapshot to identify the content within the snapshot based, at least in part, on the location. 7. One or more non-transitory computer-readable media comprising program code for migrating virtual disks, the program code to: based on receipt of a request to migrate a first virtual disk from a source virtual machine to a destination virtual machine, wherein the first virtual disk is stored on a volume accessible to the source virtual machine, generate a snapshot of a hypervisor managing the source virtual machine; identify a header of the first virtual disk; modify the header to be compatible with the destination virtual machine; identify, on the volume accessible to the source virtual machine, a snapshot of the volume; generate a pointer to content of the first virtual disk within the snapshot of the volume; and create a second virtual disk for the destination virtual machine without copying the content from the first virtual disk, wherein the second virtual disk comprises the modified header and the pointer to the content of the first virtual disk within the snapshot of the volume. 8. The computer-readable media of claim 7 , wherein the program code to modify the header to be compatible with the destination virtual machine comprises program code to: identify a first virtual disk format utilized by a first hypervisor managing the source virtual machine and a second virtual disk format utilized by a second hypervisor managing the destination virtual machine; and reformat the header from the first virtual disk format to the second virtual disk format. 9. The computer-readable media of claim 7 , wherein the program code to generate the snapshot of the hypervisor managing the source virtual machine comprises program code to: identify the source virtual machine and the hypervisor based, at least in part, on the request to migrate the first virtual disk; and generate the snapshot prior to migration of the first virtual disk to the destination virtual machine. 10. The computer-readable media of claim 7 , further comprising program code to: determine a time associated with the request to migrate the first virtual disk; wherein the program code to identify, on the volume accessible to the source virtual machine, the snapshot of the volume comprises program code to identify the snapshot of the volume based, at least in part, on the time. 11. The computer-readable media of claim 7 , further comprising program code to flag the snapshot of the volume as read-only prior to generation of the pointer to the content of the first virtual disk within the snapshot. 12. A system comprising: a processor; and a machine-readable medium having program code executable by the processor to cause the system to, based on receipt of a request to migrate a first virtual disk from a source virtual machine to a destination virtual machine, wherein the first virtual disk is stored on a volume accessible to the source virtual machine, generate a snapshot of a hypervisor managing the source virtual machine; identify a header of the first virtual disk; modify the header to be compatible with the destination virtual machine; identify, on the volume accessible to the source virtual machine, a snapshot of the volume; generate a pointer to content of the first virtual disk within the snapshot of the volume; and create a second virtual disk for the destination virtual machine without copying the content from the first virtual disk, wherein the second virtual disk comprises the modified header and the pointer to the content of the first virtual disk within the snapshot of the volume. 13. The system of claim 12 , wherein the program code executable by the processor to cause the system to modify the header to be compatible with the destination virtual machine comprises program code executable by the processor to cause the system to: identify a first virtual disk format utilized by a first hypervisor managing the source virtual machine and a second virtual disk format utilized by a second hypervisor managing the destination virtual machine; and reformat the header from the first virtual disk format to the second virtual disk format. 14. The system of claim 12 , wherein the program code executable by the processor to cause the system to generate the snapshot of the hypervisor managing the source virtual machine comprises program code executable by the processor to cause the system to: identify the source virtual machine and the hypervisor based, at least in part, on the request to migrate the first virtual disk; and generate the snapshot prior to migration of the first virtual disk to the destination virtual machine. 15. The system of claim 12 , further comprising program code executable by the processor to cause the system to: determine a time associated with the request to migrate the first virtual disk; wherein the program code executable by the processor to cause the system to identify, on the volume accessible to the source virtual machine, the snapshot of the volume comprises program code executable by the processor to cause the system to identify the snapshot of the volume
Replication mechanisms · CPC title
Disk arrays, e.g. RAID, JBOD · CPC title
the resource being the memory · CPC title
at area level, e.g. provisioning of virtual or logical volumes · CPC title
Memory management, e.g. access or allocation · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.