Browse Prior Art Database

Simple Calibration of Conflicting Goals in Cloud Optimization Disclosure Number: IPCOM000237745D
Publication Date: 2014-Jul-09
Document File: 10 page(s) / 90K

Publishing Venue

The Prior Art Database


The invention described in this article is of a technique for building an optimization model for placing virtual machines in a cloud environment (i.e., on a cluster of hosts with virtualization capabilities), based on a few calibration scenarios presented to a user. Such a technique can be implemented in cloud management products, to enable easy and intuitive customization of the cloud control. The resulting model combines both balancing and consolidation of workloads on hosts (which are conflicting approaches), together with considering the relocation costs for VMs and the costs of powering hosts on and off. The invention's novelty is that despite the model handling a complex trade-off of the aforementioned components, it remains simple, testable and predictable. Furthermore, the model automatically adapts itself to varying populations of hosts and virtual machines.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 18% of the total text.

Page 01 of 10

Simple Calibration of Conflicting Goals in Cloud Optimization

The problem addressed by this invention is building a model for cloud optimization

which "makes sense": simple to configure, yields predictable and testable behavior, covers useful patterns of load-balancing and consolidation, and automatically adapts to its user's VMs.

    First, some definitions. "cloud" means a set of hosts with virtualization capabilities. Each host may run one or more virtual machines (VMs). Each VM consumes resources from its host (memory, CPU, etc) and in particular, contributes to the host's utilization. The hosts are connected by a network which allows relocations of

VMs among the hosts.

    In this context, "cloud optimization" means relocating some of the VMs among the hosts and/or accommodating deployments of new VMs so that the resulting placement (assignment of VMs to hosts) improves an overall score of "goodness" of the cloud. Typical scores are load-balancing and consolidation. Load-balancing of hosts means spreading the VMs among the hosts to make the total utilization at each host more even. Consolidation means packing the VMs in a subset of the hosts to vacate the other hosts. Load-balancing is typically used for performance, by distributing the free CPU capacity among the hosts to allow them to accommodate utilization bursts. Consolidation is typically used for energy saving, as it allows shutting down the vacant hosts to save power.

    Cloud optimization is no simple task, as it strives to balance conflicting goals of consolidation and load-balancing. It is further complicated by considering the cost of relocation of each VM. Relocating a VM has a significant impact on the cloud: it consumes many additional resources (cpu, memory, network bandwidth) for the time of the relocation and de-stabilizes the performance of the services provided by the VMs. Therefore, engaging relocations is a matter of weighing the cost of relocating each VM against the gain obtained by improving the score.

    Under the above conditions, a cloud optimization model may likely encounter at least one of the following issues:

1. Require a lot of parameters, controlling each of the load-balancing, consolidation, their balance, the cost of relocation, etc. .

2. Yield a complex behavior that is hard to predict, and consequently, hard to test. The resulting behavior can only be described in vague terms.

3. Require complex tuning of parameters to match each new cloud setting (big/small VMs and hosts, different cost models, etc)

    This disclosure describes a model that overcomes the above issues. It is simple to understand, can be configured by a few (3-4) parameters, and self-calibrates to the cloud setting, yielding the same behavior in different settings. And, of course, it provides a sensible trade-off of load-balancing, consolidation and the cost of relocation. The user can predict the behavior of the model and easily construct test cases with deterministic outcome to become...