System and method for efficiently building virtual appliances in a hosted environment
First Claim
1. A system for building a virtual appliance image using a pre-stored operating system image, the system comprising:
- one or more physical processors programmed with one or more computer program instructions which, when executed, cause the one or more physical processors to;
receive a request to build a virtual appliance that includes an operating system, wherein the build request includes an image description associated with the virtual appliance;
create, based on the image description, a root file system having a root directory structure that defines a layout of directories in which files of the virtual appliance are to be stored;
identify, based on the image description, a pre-stored image for the virtual appliance, wherein the pre-stored image includes files sufficient to build an operating system, wherein pre-stored images, including the pre-stored image, are stored in a database, and wherein individual ones of the pre-stored images are derived from other ones of the pre-stored images;
add the files of the pre-stored image to the root directory structure to augment the root file system;
identify, based on the image description, one or more additional files that are not included in the pre-stored image to be added to the root directory structure;
add the one or more additional files to the root directory structure to further augment the root file system;
identify first and second sets of the pre-stored images such that first images of the first set of pre-stored images are images from which second images of the second set of pre-stored images are derived;
analyze differences between the first images and the second images to determine statistics regarding types of changes made to build the second images;
provide, to a user, one or more suggested changes to the augmented root file system based on the statistics regarding the types of changes; and
build an image of the virtual appliance based on the augmented root file system.
11 Assignments
0 Petitions
Accused Products
Abstract
A system and method for efficiently building virtual appliances in a hosted environment is provided. In particular, a plurality of image archives may be stored in a build database, with each image archive including a file system having a directory structure and a plurality of files installed within the directory structure. In response to a build request containing an image description, a build engine may create a file system layout defining a directory structure for an image. The build engine may then copy the file system from one of the image archives to the file system layout of the image, wherein the copied file system may provide a subset of the file system for the image. The build engine may then build the image, which may include a file system having various files installed within various directories in accordance with the directory structure defined for the image.
127 Citations
19 Claims
-
1. A system for building a virtual appliance image using a pre-stored operating system image, the system comprising:
one or more physical processors programmed with one or more computer program instructions which, when executed, cause the one or more physical processors to; receive a request to build a virtual appliance that includes an operating system, wherein the build request includes an image description associated with the virtual appliance; create, based on the image description, a root file system having a root directory structure that defines a layout of directories in which files of the virtual appliance are to be stored; identify, based on the image description, a pre-stored image for the virtual appliance, wherein the pre-stored image includes files sufficient to build an operating system, wherein pre-stored images, including the pre-stored image, are stored in a database, and wherein individual ones of the pre-stored images are derived from other ones of the pre-stored images; add the files of the pre-stored image to the root directory structure to augment the root file system; identify, based on the image description, one or more additional files that are not included in the pre-stored image to be added to the root directory structure; add the one or more additional files to the root directory structure to further augment the root file system; identify first and second sets of the pre-stored images such that first images of the first set of pre-stored images are images from which second images of the second set of pre-stored images are derived; analyze differences between the first images and the second images to determine statistics regarding types of changes made to build the second images; provide, to a user, one or more suggested changes to the augmented root file system based on the statistics regarding the types of changes; and build an image of the virtual appliance based on the augmented root file system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
11. A computer-implemented method for building a virtual appliance image using a pre-stored operating system image, the method being implemented by a computer system that includes one or more physical processors executing one or more computer program instructions which, when executed, perform the method, the method comprising:
-
receiving, by the computer system, a request to build a virtual appliance that includes an operating system, wherein the build request includes an image description associated with the virtual appliance; creating, by the computer system, based on the image description, a root file system having a root directory structure that defines a layout of directories in which files of the virtual appliance are to be stored; identifying, by the computer system, based on the image description, a pre-stored image for the virtual appliance, wherein the pre-stored image includes files sufficient to build an operating system, wherein pre-stored images, including the pre-stored image, are stored in a database, and wherein individual ones of the pre-stored images are derived from other ones of the pre-stored images; adding, by the computer system, the files of the pre-stored image to the root directory structure to augment the root file system; identifying, by the computer system, based on the image description, one or more additional files that are not included in the pre-stored image to be added to the root directory structure; adding, by the computer system, the one or more additional files to the root directory structure to further augment the root file system; identifying, by the computer system, first and second sets of the pre-stored images such that first images of the first set of pre-stored images are images from which second images of the second set of pre-stored images are derived; analyzing, by the computer system, differences between the first images and the second images to determine statistics regarding types of changes made to build the second images; providing, by the computer system, to a user, one or more suggested changes to the augmented root file system based on the statistics regarding the types of changes; and building, by the computer system, an image of the virtual appliance based on the augmented root file system. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
Specification