Patent ID: 9495215
Filing Date: 2016-11-15
CPC Classification: G06F

Claim Text:
1. A method for optimizing the placement of instances of a plurality of virtual machine images in a cloud environment, the cloud environment comprising a plurality of resource pools, each resource pool comprising one or more resources, comprising: receiving a request from a user to deploy a new instance of one of the virtual machine (VM) images, where the request indicates a VM image to be instantiated; reading, by a placement engine, a VM resource usage profile stored in association with the indicated VM image, the VM resource usage profile comprising first resource consumption data, the first resource consumption data indicating a predicted resource consumption of the requested instance of the indicated VM image over a first period of time; reading, by the placement engine, one resource pool profile for each of the plurality of resources pools, each resource pool profile comprising second resource consumption data, the second resource consumption data indicating a predicted resource consumption in a resource pool associated with the resource pool profile over a second period of time, the resource pool profile further comprising a current resource consumption on the resource pool; reading, if available, a user-specific VM resource usage profile stored in association with the indicated VM image and stored in association with an identifier of the user, the user-specific VM resource usage profile comprising third resource usage data, the third resource usage data indicating a predicted user-specific resource consumption of the requested instance of the indicated VM image over the first period of time; for each of the resource pool profiles, by the placement engine: determining, as a result of the analysis of all resource pool profiles, the one of the plurality of resource pools with a least aggregated resource consumption; and instantiating the indicated VM image on the determined one of the plurality of resource pools with the least aggregated resource consumption.