System and method for file injection in virtual machine configuration
First Claim
Patent Images
1. A method for virtual machine file injection, comprising:
- receiving a request for a first image having an operating system and a first set of injected files for a virtual machine;
comparing the first set of injected files with second sets of injected files in second images stored on a non-transitory computer readable medium;
determining, in response to the first set of injected files and second set of injected files not exactly matching, a cost of completion of each of one or more of the second images; and
transmitting, in response to the first set of injected files and second set of injected files not exactly matching, a selected non-complete candidate image and third files from the first set of injected files that are not in the second set of injected files of the selected non-complete candidate image, wherein the selected non-complete candidate image is a second image selected from the second images according to the cost of completion of each of one or more of the second images;
wherein the cost of completion of each of one or more of the second images is a cost to modify a respective one of the second images to have the first set of injected files;
wherein the selected non-complete candidate image is the one or more of the second images with a lowest cost of completion; and
wherein the request for the first image is a request for at least the first image of the operating system and the first set of injected files and a third image of the operating system and a third set of injected files, and wherein the cost of completion is determined using a graph distance metric calculation.
1 Assignment
0 Petitions
Accused Products
Abstract
An embodiment method for virtual machine file injection includes receiving a request for a first image having an operating system and a first set of injected files for a virtual machine. The first set of injected files is compared with second sets of injected files in second images stored on a non-transitory computer readable medium. In response to the first set and second set of injected files not exactly matching, a nearest non-complete candidate image and third files are transmitted, with the third files being files from the first set of injected files that are not in the second set of injected files of the nearest non-complete candidate image.
-
Citations
17 Claims
-
1. A method for virtual machine file injection, comprising:
-
receiving a request for a first image having an operating system and a first set of injected files for a virtual machine; comparing the first set of injected files with second sets of injected files in second images stored on a non-transitory computer readable medium; determining, in response to the first set of injected files and second set of injected files not exactly matching, a cost of completion of each of one or more of the second images; and transmitting, in response to the first set of injected files and second set of injected files not exactly matching, a selected non-complete candidate image and third files from the first set of injected files that are not in the second set of injected files of the selected non-complete candidate image, wherein the selected non-complete candidate image is a second image selected from the second images according to the cost of completion of each of one or more of the second images; wherein the cost of completion of each of one or more of the second images is a cost to modify a respective one of the second images to have the first set of injected files; wherein the selected non-complete candidate image is the one or more of the second images with a lowest cost of completion; and wherein the request for the first image is a request for at least the first image of the operating system and the first set of injected files and a third image of the operating system and a third set of injected files, and wherein the cost of completion is determined using a graph distance metric calculation. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
an image service device comprising a first processor and a first non-transitory computer readable medium connected to the first processor and having stored thereon instructions for causing the first processor to; receive a request for a first image identifying an operating system and a first set of files that are not part of the operating system; access one or more second images stored on a second non-transitory computer readable medium; compare the first set of files with a second set of files in each of the second images;
files; anddetermine whether one or more the second sets of files matches the first set of files; and determine, in response to none of the second sets of files matching the first set of files, a selected non-complete candidate image by determining a cost of completion of each of one or more of the second images; transmit, in response to none of the second sets of files matching the first set of files, the selected non-complete candidate image and third files, wherein the third files are files from the first set of files that are not in the second set of files of the selected non-complete candidate image, wherein the selected non-complete candidate image is a second image selected from the second images according to the cost of completion of each of one or more of the second images; wherein the cost of completion of each of the one or more of the second images is a cost to modify the respective one of the second images to have the first set of files; and wherein the selected non-complete candidate image is the one or more of the second images with a lowest cost of completion; and wherein the request for the first image is a request for at least the first image of the operating system and the first set of files and a third image of the operating system and a third set of injected files, and wherein the cost of completion is determined using a graph distance metric calculation. - View Dependent Claims (9, 10, 11, 12)
-
13. A method, comprising:
-
receiving, at an image service device, a request from virtual machine (VM) manager device connected to the image service device, wherein the request identifies a first set of files associated with a first image; comparing the first set of files with each one of second sets of files that are stored on a non-transitory computer readable medium, each of the second sets of files associated with one of a plurality of second images; determining a first one of the plurality of second images to be a candidate image in response to the first set of files matching one of the second sets of files associated with the first one of the plurality of second images; determining, in response to the first set of files not matching any of the second sets of files, a cost of completion of each of the plurality of the second images; determining, as the candidate image and in response to the first set of files not matching any of the second sets of files, a second one of the plurality of second images associated with a first one of the second sets of files that is most similar to the first set of files according to the cost of completion of each of the plurality of second images; and sending data including the candidate image to the VM manager device for running a virtual machine on a cloud computing platform; wherein, the data further includes, in response to the first set of files not matching any of the second sets of files, third files from the first set of files that are not in the first one of the second sets of files; wherein the cost of completion of each of the plurality of second images is a cost to modify the respective one of the second images to have the first set of files; wherein the candidate image is the one of the plurality of second images with a lowest cost of completion; and wherein the request for the first image is a request for at least the first image which is an image of an operating system, and the first set of files and a fourth image of the operating system and a fourth set of injected files, and wherein the cost of completion is determined using a graph distance metric calculation. - View Dependent Claims (14, 15, 16, 17)
-
Specification