Applying an Economic Market Model to VM Management
(At the bottom of this post is a slide deck summarizing the economic market model and technology.)
The VMTurbo suite uses patented analytics to automate key virtualization management operational procedures including complex workload balancing, real-time & continuous rightsizing, and virtual infrastructure performance & capacity management.
We start by recasting the resource and performance management problems as balancing the supply and demand for resources. For example, bottlenecks are formed when local workload demands exceed the local supply of resource capacity. This suggests the use of economic solution techniques to efficiently redistribute the demand, or increase the supply. (Indeed, a large body of research has established the value of economic techniques for IT resource management, through several thousand publications.)
VMTurbo resource and performance management technologies are based on an economic model involving two sets of abstractions:
- Modeling the virtualized IT stack as a service supply chain, where components, e.g., VMs, consume services of other components, e.g., physical hosts, and offer services to their consumers, e.g., guest OS’s and applications;
- Using virtual currency to balance the supply and demand of services along this supply chain. Resource services may be priced to reflect imbalances between supply and demand, and drive resource allocation decision. For example, a bottleneck, reflecting excess demand over supply, will result in rising prices of the respective resource. Applications competing over the resource may shift their workloads to alternate resources to lower their costs, resolving the bottleneck.
MODELING VIRTUALIZED IT STACKS AS SERVICE SUPPLY CHAINS
The figure below depicts a virtualization management scenario – a service supply chain model of the IT stack:

An administrator, managing the virtualized system, is depicted on the right. VMTurbo presents to the administrator a unified view of the system as a layered supply chain of IT services. The top layer consists of business units (users) consuming applications services. These applications services consume services offered by the VMs of the virtualization layer. The VMs, in turn, consume services provided by the physical layer. The physical layer, including the hosts, LAN and SAN, provides services to the VMs and consumes services provided by a layer of shared operating services. And, these operating services include dynamic services, such as energy, cooling network and storage access, as well as static services such as space, CAPEX and OPEX.
This supply chain model may be represented by a small number of software abstractions –e.g., provider, consumer, demand, capacity -- to capture the resource allocation relationships along virtualized IT stacks. Notice that the model views a resource as service provider. For example, the sales application, at VM1, may consume services offered by a database server, depicted as App1 at VM5. Notice, too, that the services supply chain may be highly dynamic; service components may be deployed or terminated dynamically and may dynamically change their demand for services by other components.
USING VIRTUAL CURRENCY TO MANAGE SUPPLY AND DEMAND
The supply-chain abstractions are complemented by virtual currency abstraction, used to balance the supply and demand for services. Service components use virtual currency to price and pay for services. For example, a server may price its CPU, memory, network and storage I/O services in terms of virtual currency. VMs must pay for the services they wish to acquire using the income from their applications. The applications, in turn, pay for the VM services they consume, using budgets provided by their users. Users may budget applications to reflect their business value.
The pricing of services may be guided by the dynamics of supply and demand, as well as underlying costs and ROI targets. For example, Host1 may set its prices for CPU, memory, storage I/O and network I/O to first reflect its costs for operating services, and second, account for the differences between supply and demand for these resources. An excess demand for storage I/O, by the Sales and HR VMs, will result in price increases. VM2, executing the HR application, may be unable to afford the I/O bandwidth required and may migrate to another host. In contrast, VM1 may use its higher budget, provided by the Sales application, to acquire increasing share of the I/O bandwidth.
Note that:
- Standard pricing mechanisms can be used to accomplish optimized load balancing of supply and demand, through a “distributed invisible hand.”
- Applications of higher business value may be budgeted accordingly and obtain service levels commensurable with their value.
- Virtual currency permits rigorous quantification of the ROI of a service component in terms of its revenues and costs; the underlying economics can optimize the ROI of the entire supply chain. The costs of IT are used to price the operating services at the lowest layer. Budgets are used to reflect business value returned by the applications at the highest layer. Pricing drives the resource management decisions along the intermediate layers, to optimize the relationships between the costs and returns.
THE VALUE OF VIRTUAL MONEY
We consider now the value of money in managing the tradeoffs between utilization and performance. This is illustrated in the figure below:

TUNING RESOURCE AND PERFORMANCE MANAGEMENT USING MONEY
Part I of the figure depicts the utilization of a resource at three different hosts: A, B, C. Host A is lightly loaded; B is comfortably utilized below the risk thresholds. From time to time, however, the utilization of B may fluctuate to the right, resulting in temporary congestion. Host C is utilized beyond the risk threshold, possibly resulting in congestion, bottlenecks, losses and likely failures.
Each of these utilizations reflects a different balance between supply and demand. The prices of the resource will grow with utilization. Therefore, the resource price at host A could be very low, while the price at C could far exceed the budgets of its VMs. VMs may decide to migrate to hosts offering lower prices. This will cause utilizations at hosts C and B to drop, by shifting workloads to host A, whose utilization increases. This scenario is depicted in Part II; workloads are shifted until prices at hosts A,B,C are equalized, within acceptable deviation from each other.
This pricing-based tuning of the utilization-performance tradeoffs may be used to resolve difficult resource and performance management problems simply and uniformly. The next section illustrates the use of pricing to resolve such problems.
ECONOMIC MANAGEMENT OF RESOURCE AND PERFORMANCE
Let's take a look at how the economic mechanisms can resolve several common virtualization management problems.
Avoiding Resource Congestion and Bottlenecks
Hosts increase the prices of resources as their demand grows. The pricing function can ascertain that the resource utilization remains below some congestion threshold, by increasing prices indefinitely as utilization approaches the limit. This will avoid congestion by pricing out lower priority applications. These applications will shop for alternate resources freeing the congested resource to higher priority applications.
In particular, the workload economy can be used to detect emerging bottlenecks and eliminate them. A bottleneck is formed through sustained congestion. Such congestion will cause price increases that may be easily detected. This can trigger workload management mechanisms to shift applications to alternate resources and proactively eliminate the bottleneck.
Assuring SLA of Mission Critical Applications
A mission-critical application can be budgeted sufficiently high to buy sufficient capacity to assure its SLA. Furthermore, pricing mechanisms can assign price to delays and thus enable applications to assure that the delays they see meet their tolerance levels.
Eliminating Interference Problems
Applications sharing a host can create complex interference problems. For example, interfering demands for memory can result in hypervisor page swapping, or excessive ballooning, causing significant performance problems. It is possible to see such behaviors as resource “services” provided by the hypervisor to applications and price them high to eliminate these behaviors. Thus, applications may be charged for swapping sufficiently high to cause low-priority applications to reduce their memory consumption.
Similarly, the hypervisor co-scheduling mechanisms keep applications requiring multiple CPUs in the CPU-Ready-Queue until all the CPU they require are available. Applications requiring a single CPU will thus get their demands satisfied first, possibly starving applications requiring multiple CPUs who will experience excessive delays in the Ready-Queue. Pricing can rectify these subtle interference patterns by assigning a price for Ready-Queue delays. This price, paid by all applications, may cause lower priority applications to run out of budget and allow higher-priority applications requiring co-scheduled CPUs to control their delays.
Optimizing Resource Utilization
The workload management economy creates an invisible-hand effect of settling into competitive equilibrium. This competitive equilibrium can be mathematically proven to create an optimally balanced resource utilization.
Eliminating Sprawling Dormant VMs
Sprawling is formed when VMs are created and retained beyond their useful lifetime. Such VMs can become dormant as their image is kept in storage, and cause resource waste and annoying administration problems. The workload marketplace can easily detect and eliminate such sprawling and dormant VMs as they will quickly run out of budget and trigger automated handling processes that may eliminate them automatically under administrators control.
Optimizing Energy Use
Energy use by hosts can accounts for as much as 20% of data center OPEX. The workload economy may be used simply to optimize energy use by hosts. A host may be “charged” for its energy use out of its revenues. This energy charge may be transferred to applications sharing the host by reflecting energy costs into the prices of host resources. This charge may cause applications to migrate to other hosts and leave the host with insufficient revenues to cover its energy. This may trigger workload management process that switch the host into standby-mode and reduce its energy consumption. The host may be switched back into operational mode when prices of the workload marketplace exceed thresholds to cover its energy costs.
Disruptive Correlated Workloads
Start with the problem of mutually disruptive correlated workloads. Administrators initiate simultaneous installation of patches for a large number of guest OS. This creates correlated workloads at a large number of VMs, exhausting the host resources and leading to performance problems and failures. Manual administration requires administrators to carefully schedule the patch installations and monitor their performance impact to handle the problem.
With economic management, the patch installation application will be budgeted as low priority, compared with business critical applications. As soon as traffic increases, these patching applications will be priced out and queued, until resources are more affordable to them. This can automatically spread the scheduling of the patch installation, eliminating the workload correlations and respective peaks.
Storage I/O Bottleneck
Now consider a storage I/O bottleneck. Suppose the sales application sees a dramatic decline in its performance during off-peak hours. This decline may result from disruption of the sequential access stream of the Sales application, by a random-access stream of the HR application. The administrator of the Sales application requires complex collaborations with the virtualization and storage administrators to monitor, analyze and isolate the problem. Once the source of the performance bottleneck has been determined, the administrators can resolve it by separating the two traffic streams.
With economic management, the storage I/O capacity to service random access is significantly higher than sequential access. One can introduce additional pricing of interference induced by random access. The HR application will see significant increase of I/O prices and will seek alternate, lower priced storage I/O services (e.g., by shifting its I/O stream to a different path, or moving its storage to a different LUN). This can be entirely automatic, with administrators’ involvement limited to approving the recommended decisions, on alternate resources, proposed by the economic management system.
Co-Scheduling Problems
The co-scheduling problem arises when a VM providing vSMP services is starved for concurrent allocation of the multiple vCPUs it needs. At the same time, other VMs requiring less vCPUs, grab CPU resources as soon as they become available. This problem arises because the effective capacity allocated for the vSMP service, is too low to meet its demand. With economic management, this excess demand by the vSMP service, will cause an increase in the price of a vCPU for all VMs sharing the host. They may cause lower priority VMs to migrate to other hosts offering lower prices. This will reduce the pressure on vCPU availability to serve the vSMP. Pricing, in effect, corrects the unfair prioritization by the hypervisor scheduler, giving lower priority to meet the vSMP needs, as compared with VMs requiring a single vCPU.
SUMMARY
The supply chain abstraction of the virtualized infrastructure provides a simple, unified and scalable solution to a broad range of virtualization management problems.
In summary:
- Virtualization systems stretch traditional operations management paradigms beyond their useful limits. New approaches are required to handle the resource and performance management needs of virtualization systems.
- The abstractions of the supply-chain economy can dramatically simplify and unify the solutions of virtualization management problems. These economic-based solutions are intrinsically scalable and support automated problems resolution.
- The supply-chain economy can reflect business priorities of applications. Applications generating higher business value may be endowed with higher budgets, enabling them to acquire priority access to resources and improved performance.
- Furthermore, the supply chain economy associates natural ROI metrics with resources and their utilization. The lowest layer in the supply chain is one which expends real money to acquire operating resources. The highest layer allocates budgets to applications to monetize their business value. The supply chain economy essentially allocates resources to optimize the returns in business value, on investment of IT resources costs. Therefore, the supply chain economy may be best viewed as establishing a systemic ROI-centric management of virtualization resources and performance.