Patent ID: 8099487
Filing Date: 2012-01-17
Classification: G06F,H04L,Y02D

Abstract:
1. A method for determining an optimized placement of virtual machines and their associated workloads hosted on at least one virtualized computing system, the method comprising: determining virtual machine placement based on measurement of performance, utilization or other selected values of the at least one virtualized computing system or at least one component of the at least one virtualized computing system, the determining of virtual machine placement comprising determining a selected balance metric of program execution on selected resources in the at least one virtualized computing system or a selected balance metric of another selected parameter associated with selected resources in the at least one virtualized computing system, the determining of a selected balance metric being based on (i) any of utilization or throughput, and (ii) detected capacity to move virtual machines assigned to at least one physical computing system associated with the at least one virtualized computing system, the method further comprising: utilizing a virtual machine monitor element or process (VMM) in communication with the selected resources or components, to capture performance or utilization measurements across a plurality of virtual machines; mapping respective measurements of each of a plurality of virtual machines corresponding to a given VMM, wherein the resulting map is stored in at least one memory element and sets forth performance or utilization values for respective ones of the virtual machines corresponding to the given VMM; computing, using a computer processor, a balance metric comprising the sum of performance or utilization values mapped to a given VMM; comparing, using a computer processor, a set of computed balance metrics, each corresponding to a given VMM in a set of VMMs, to detect differences in the computed balance metrics corresponding to respective VMMs; and executing, using a computer processor, a set of defined transformations to attempt to reduce the detected differences to zero, or as close as possible to zero, thereby to define virtual machine movement yielding an optimized configuration of virtual machines.