240 likes | 403 Views
A Minimum Cost Resource Allocation Approach for Cloud Data Centers . 指導教授:王國禎 學生 :連懷恩 國立交通大學資訊工程系 行動計算與寬頻網路實驗室. Outline. Introduction Related work Model formulation Preliminaries of resizing problem A branch and bound algorithm A server/VM chain algorithm Conclusion Reference.
E N D
A Minimum Cost Resource Allocation Approach for Cloud Data Centers 指導教授:王國禎 學生:連懷恩 國立交通大學資訊工程系 行動計算與寬頻網路實驗室
Outline • Introduction • Related work • Model formulation • Preliminaries of resizing problem • A branch and bound algorithm • A server/VM chain algorithm • Conclusion • Reference
Introduction • Existing approaches only consider come aspects of resource allocation problem(e.g., either for VM or for server level) in cloud data center. • A complete resource allocation approach should include the following features: per application resource allocation, resizing on both VM and server level, transition cost, VM placement, and optimization over time domain. • Generality and minimum cost.
Introduction • Assume that we have a load-prediction module that provides the workload of each application in the following few time slots. • Our objective is a minimum cost resource allocation approach. The “cost” should include operating cost and transition cost.
Model Formulation – Operating Cost • The energy cost of active servers and VMs. [1]
Model Formulation – Transition Cost • The cost to transit the resource allocation between different time slots, including the cost of switching servers to active or dormant state, the cost of adding or removing VMs from an application, and the cost of VM migration. • Mostly it may not have a measurable unit. Operator can decide the ratio between the operating cost and transition cost, which is known as the break-even time.
Model Formulation – Cost Function Assume that there are N apps, M servers, and prediction window size W Minimize Subject to
Preliminaries of Resizing Problem • A traditional linear programming may not be suitable since it is an integer programming in high dimension and it can not exploit the structure of the problem. • Following are some preliminaries of the resizing problem: • It is easy to observe that a minimum cost solution of resizing problem is always to resize the resource provisioning to match the resource demand unless the resource demand goes down then up within a break-even time.
Preliminaries of Resizing Problem • For example, let ∆VMbe the break-even time of a VM. That is, PVM x ∆VM = δVM x 2 , and it implies we should keep the VM alive when the demand goes down then up within a ∆VM . This is also true for servers. • We call this a break-event time condition when the resource demand goes down then up within a VM/server’s break-event time.
Preliminaries of Resizing Problem • Another observation is the off-line migration of VM. PVM x ∆VM ≥ δVM x 2 – Pserver x ∆i, where∆i ≤ ∆VM, when the VM can be migrated to another server off-line and then the original server can be switched to dormant state. • To find a minimum cost solution, we only need to check if we should keep the VM/server alive when there comes a break-even time condition. Note that we also need to consider the off-line migration for a VM’s break-even time condition.
Preliminaries of Resizing Problem • The problem is, when overlapped break-event time condition occur from several apps, it is hard to tell an off-line migration will benefit or not. This will lead to another problem in the break-even time condition of servers, since we can do the resource allocations of servers only when the number of running VMs are determined. • We introduce a branch and bound algorithm to conquer this problem.
B&B Algorithm – Main Idea • The key idea of the B&B algorithm: if the lower bound for some tree node A is greater than the upper bound for some other node B, then A may be safely discarded from the search. Branching and pruning. • A global upper bound: the minimum cost among all accomplished paths so far. • The lower bound of each node: current accumulated cost + minimum remaining operating cost + switching cost to the status of sink node
B&B Algorithm – A Paradigm • PVM = 1.0, Pserver = 0.5, ∆VM= 0.6,∆server = 0.7
B&B Algorithm – Tree Structure • Suppose there are N applications, define the resource provision tuple as a (n+1)-tuple. The 1st element represents the # of active servers, the 2nd element represents the # of VMs for the first app, and i-th element represents the # of VMs for the (i-1)-th app. • A search tree with depth T. Every node consists of a resource provision tuple, the current accumulated cost field and lower bound field. • Using doubly linked list. A path can be represented by its tail node and backtracked to all its preceding nodes.
B&B Algorithm – Branch Table • A branch table consists of T rows resource provision tuple, and it shows the maximum number of resource that can be retained other than the minimum need in each time slot. • A one-pass scan to construct the table. • For a node, the possible number of branches in the next time slot is the product of all elements of the tuple of that node. However, we will not produce any new branch until the time right before we want to discover a new path from it.
B&B Algorithm – Speed Up • The principle of speed up: discard nodes as early as possible、avoid unnecessary branches • Two baseline path • Depth first search • Off-line migration and produce branch only when it is needed
B&B Algorithm – Complexity • If an app can have at most V VMs, the worst case complexity will be O(W VN). But the worst case rarely happens in the real situation. • There is a necessary condition for an off-line migration so that we can reduce the complexity further. • The details of the necessary condition still needs to be clarified.
A Server/VM Chain Algorithm • A chain representation of server/VM in space-time diagram.
A Server/VM Chain Algorithm • We make an assumption that when we want to remove a VM, we always choose the latestadded one to remove. • We make this assumption to reduce the complexity, but in fact, this is also a reasonable assumption.
Conclusion • The most complete resource allocation approach in cloud data center so far. • It is theoretically optimal if we succeed, however the actual results still heavily rely on the quality of prediction. • Some important necessary condition and optimality still needs to be proven.
Reference [1] Chunqiang Tang, MalgorzataSteinder, Michael Spreitzer, and Giovanni Pacifici, “A Scalable Application Placement Controller for Enterprise Data Centers”, ACM '07 Proceedings of the 16th international conference on World Wide Web [2] Norman Bobroff, AndrzejKochut, Kirk Beaty, “Dynamic Placement of Virtual Machines for Managing SLA Violations”, 10th IFIP/IEEE International Symposium on Integrated Network Management, 2007 [3] Minghong Lin, Adam Wierman, Lachlan L. H. Andrew, and EnoThereska, “Dynamic Right-Sizing for Power-Proportional Data Centers,” IEEE INFOCOM, 2011 [4] Anton Beloglazov, Rajkumar Buyya1, Young Choon Lee, and Albert Zomaya, “A Taxonomy and Survey of Energy-Efficient Data Centers and Cloud Computing Systems”, Advances in Computers, Volume 82