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: generating a resulting VM resource usage profile by selecting one of the user-specific VM resource usage profile, where the user-specific VM resource usage profile is available, and the VM resource usage profile; analyzing the resulting VM resource usage profile and the resource pool profile, the analysis comprising aligning the resulting VM resource usage profile and the resource pool profile by aligning the second period of time of the resource pool profile of the resource pool with the first period of time of the resulting VM resource usage profile; and calculating an aggregated resource consumption profile that predicts a total resource consumption on the resource pool by aggregating the resource consumption of the aligned profiles; and 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.