Method and apparatus for replicating virtual machine images using deduplication metadata
First Claim
Patent Images
1. A method, comprising:
- identifying data representing a first instance of a virtual machine image on a first storage device to be replicated to a second storage device;
copying a deduplication metadata file that describes the first instance of the virtual machine image from the first storage device to the second storage device, wherein the deduplication metadata file comprises a list of one or more virtual machine image data files for the first instance of the virtual machine image and associated reference links to data blocks of the one or more virtual machine image data files;
determining, based on metadata describing the data blocks of the one or more virtual machine image data files in the deduplication metadata file, which data representing the first instance of the virtual machine image matches data from a set of data on the second storage device;
forming a second instance of the virtual machine image on the second storage device based on the metadata description in the deduplication metadata file to replicate the first instance of the virtual machine image at the second storage device, wherein forming the second instance of the virtual machine image on the second storage device further comprises;
linking the second instance of the virtual machine image to at least a portion of the set of data on the second storage device for data representing the first instance of the virtual machine image that matches data from the set of data on the second storage device to form the second instance of the virtual machine image without transferring underlying blocks of data for the one or more virtual machine image data files from the first storage device to the second storage device.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques for fast provisioning of virtual machine images using deduplication metadata are described, including receiving a request to copy a first virtual machine to form a second virtual machine, identifying a first portion of memory comprising data for the first virtual machine; and forming the second virtual machine based on the first portion of memory comprising data for the first virtual machine, wherein forming the second virtual machine further comprises linking the second virtual machine to the first portion of memory comprising data for the first virtual machine, and implementing a second portion of memory to store data for the second virtual machine independent of the first virtual machine.
-
Citations
20 Claims
-
1. A method, comprising:
-
identifying data representing a first instance of a virtual machine image on a first storage device to be replicated to a second storage device; copying a deduplication metadata file that describes the first instance of the virtual machine image from the first storage device to the second storage device, wherein the deduplication metadata file comprises a list of one or more virtual machine image data files for the first instance of the virtual machine image and associated reference links to data blocks of the one or more virtual machine image data files; determining, based on metadata describing the data blocks of the one or more virtual machine image data files in the deduplication metadata file, which data representing the first instance of the virtual machine image matches data from a set of data on the second storage device; forming a second instance of the virtual machine image on the second storage device based on the metadata description in the deduplication metadata file to replicate the first instance of the virtual machine image at the second storage device, wherein forming the second instance of the virtual machine image on the second storage device further comprises; linking the second instance of the virtual machine image to at least a portion of the set of data on the second storage device for data representing the first instance of the virtual machine image that matches data from the set of data on the second storage device to form the second instance of the virtual machine image without transferring underlying blocks of data for the one or more virtual machine image data files from the first storage device to the second storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
-
a first storage device configured to store data representing a first instance of a virtual machine image; a processor configured to copy a deduplication metadata file that describes the first instance of the virtual machine image from the first storage device to a second storage device, wherein the deduplication metadata file comprises a list of one or more virtual machine image data files for the first instance of the virtual machine image and associated reference links to data blocks of the one or more virtual machine image data files, determine, based on metadata describing the data blocks of the one or more virtual machine image data files in the deduplication metadata file, which data representing the first instance of the virtual machine image matches data from a set of data on the second storage device, and form a second instance of a virtual machine image on the second storage device based on the metadata description in the deduplication metadata file to replicate the first instance of a virtual machine image at the second storage device, the processor being further configured, link the second instance of a virtual machine image to at least a portion of the set of data on the second storage device for data representing the first instance of a virtual machine image that matches data from the set of data on the second storage device, to form the second instance of a virtual machine image without transferring underlying blocks of data for the one or more virtual machine image data files from the first storage device to the second storage device. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method, comprising:
-
identifying data representing a first instance of a virtual machine image on a first storage device to be replicated to a second storage device; copying a deduplication metadata file that describes the first instance of the virtual machine image from the first node to the second node, wherein the deduplication metadata file comprises a list of one or more virtual machine image data files for the first instance of the virtual machine image and associated reference links to data blocks of the one or more virtual machine image data files; determining which data representing the first instance of the virtual machine image matches data from a set of data on the second storage device, wherein determining which data representing the first instance of a virtual machine image matches data from the set of data on the second storage device further comprises; determining a block number associated with the first instance of the virtual machine image on the first storage device; determining a hash value associated with the first instance of the virtual machine image based on the block number; determining the data representing the first instance of the virtual machine image on the first storage device matches data from the set of data on the second storage device based on the hash value; forming a second instance of the virtual machine image on the second storage device to replicate the first instance of the virtual machine image at the second storage device, wherein forming the second instance of the virtual machine image on the second storage device further comprises; linking the second instance of the virtual machine image to at least a portion of the set of data on the second storage device for data representing the first instance of the virtual machine image that matches data from the set of data on the second storage device to form the second instance of the virtual machine image without transferring underlying blocks of data for the one or more virtual machine data files from the first storage device to the second storage device.
-
Specification