OPTIMAL PLACEMENT OF VIRTUAL MACHINES WITH DIFFERENT PLACEMENT

  • Slides: 52
Download presentation
OPTIMAL PLACEMENT OF VIRTUAL MACHINES WITH DIFFERENT PLACEMENT CONSTRAINTS IN IAAS CLOUDS LEI SHI,

OPTIMAL PLACEMENT OF VIRTUAL MACHINES WITH DIFFERENT PLACEMENT CONSTRAINTS IN IAAS CLOUDS LEI SHI, BERNARD BUTLER, RUNXIN WANG, DMITRI BOTVICH AND BRENDAN JENNINGS Adviser: Frank, Yeong-Sung Lin Present by Chris Chang

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

INTRODUCTION Cloud computing is becoming a general utility (like electricity or piped water) that

INTRODUCTION Cloud computing is becoming a general utility (like electricity or piped water) that provides on-demand resource leases as transparent services to the user. Cloud computing provides a variety of services ranging from web search, online social networking and online office applications, to IT infrastructure outsourcing.

INTRODUCTION These services are generally categorized as : � Infrastructure as a Service (Iaa.

INTRODUCTION These services are generally categorized as : � Infrastructure as a Service (Iaa. S) � Platform as a Service (Paa. S) � Software as a Service (Saa. S) � Everything as a service (Xaa. S)

INTRODUCTION In a data center a group of servers is provided and multiple requests

INTRODUCTION In a data center a group of servers is provided and multiple requests for VMs need to be placed in these servers. Each request has a list of the number of different VM types, along with a placement constraint. For example : �A request for services requiring high-level fault tolerance has an anti-collocation placement constraint. � A request for data safety-sensitive services requires hardware-based security.

INTRODUCTION When there is a profit associated with each allocated VM… The goal of

INTRODUCTION When there is a profit associated with each allocated VM… The goal of this paper is to maximize the total profit of the VMs assigned to the servers, while ensuring that the placement is feasible in respect of the server capacity and placement constraints.

INTRODUCTION Most research focuses on selected aspects of placement optimization including server consolidation, migration

INTRODUCTION Most research focuses on selected aspects of placement optimization including server consolidation, migration costs or placement restrictions. However, considerations such as revenue maximization, multiple requests that each contains a list of the number of different VM types, and mixture of different placement constraints associated with these requests are rarely considered together.

INTRODUCTION Our approaches address the problem of predicting the optimized allocation of VM sets,

INTRODUCTION Our approaches address the problem of predicting the optimized allocation of VM sets, which enables the cloud provider to have a better understanding of revenue and operational considerations before negotiating SLAs with groups of customers. Given a typical mix of customer demands for virtualized computing resources, our approach formulates this resource allocation problem as an integer linear programming (ILP) problem.

INTRODUCTION The ILP model produces an optimal placement for VMs with different placement constraints.

INTRODUCTION The ILP model produces an optimal placement for VMs with different placement constraints. The performance of the algorithm is evaluated by means of numerical experiments.

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

RELATED WORK The problem outlined in this paper is closely related to the vector

RELATED WORK The problem outlined in this paper is closely related to the vector bin packing problem. � the resources used by each item (e. g. , CPU and memory) are “additive in each dimension” In [12], the authors claim that for the large dimensional vector bin packing problem, no practical algorithms better than variants of (first-fit decreasing) FFD have been found.

RELATED WORK In Urgaonkar’s work [11], they consider maximizing the number of placed applications,

RELATED WORK In Urgaonkar’s work [11], they consider maximizing the number of placed applications, where each application comprise a set of application components that should be placed in full on a cluster of servers. They also considered anti-collocation placement constraints for failure tolerance purpose.

RELATED WORK In Breitgand’s work [3], they also consider maximizing the Iaa. S provider

RELATED WORK In Breitgand’s work [3], they also consider maximizing the Iaa. S provider profit from service provisioning obtained from the placed VMs, while respecting placement constraints and resource capacity constraints. A direct integer programming formulation is proposed to obtain the exact solutions However, in [3] only full deployment and anticollocation constraints are considered not hardware-based security placement constraint

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

INTEGER LINEAR PROGRAMMING FORMULATION We are given a set H of h physical hosts

INTEGER LINEAR PROGRAMMING FORMULATION We are given a set H of h physical hosts and n VM provisioning requests. Each request is associated with a placement constraint k and contains VMs, s ∈ [1. . n ], representing the demands of various customers.

INTEGER LINEAR PROGRAMMING FORMULATION Table 1 lists the four placement constraint types (best-effort, security,

INTEGER LINEAR PROGRAMMING FORMULATION Table 1 lists the four placement constraint types (best-effort, security, anti-collocation and full deployment) together with the feasible pairs of constraint types that may be applied together in any VM request set.

INTEGER LINEAR PROGRAMMING FORMULATION Each VM l of request has size and value to

INTEGER LINEAR PROGRAMMING FORMULATION Each VM l of request has size and value to the cloud provider when it is assigned to physical host i. Each physical host i has a d-dimensional capacity c ( i ) in terms of CPU, memory, network bandwidth, etc.

INTEGER LINEAR PROGRAMMING FORMULATION For each VM l of request , there are two

INTEGER LINEAR PROGRAMMING FORMULATION For each VM l of request , there are two (0, 1)valued decision variables : : = 1 indicates that VM l is assigned to physical host i and = 0 otherwise. : = 1 means request is included into the placement, 0 means that for all VMs l belonging to this request , all are zero.

INTEGER LINEAR PROGRAMMING FORMULATION The purpose of the integer programming formulation for the VM

INTEGER LINEAR PROGRAMMING FORMULATION The purpose of the integer programming formulation for the VM placement problem is to maximize the objective which is the sum of values (where each value is the revenue per hour per allocated VM).

INTEGER LINEAR PROGRAMMING FORMULATION The full deployment (β) constraint ensures that the total revenue

INTEGER LINEAR PROGRAMMING FORMULATION The full deployment (β) constraint ensures that the total revenue of a given VM subset is the sum of the revenues of all its constituent VMs if the whole subset is placed; otherwise its value is zero. The anti-collocation (γ) constraint requires (for fault tolerance purposes) that every VM of a given subset should be assigned to a different physical server.

INTEGER LINEAR PROGRAMMING FORMULATION The security (α) constraint requires that each server can accommodate

INTEGER LINEAR PROGRAMMING FORMULATION The security (α) constraint requires that each server can accommodate only those VMs from a particular request in order to exclude VMs of other requests. The best effort (τ) placement is effectively unconstrained, apart from the usual constraints such as the resource placement constraints in the VM request set.

INTEGER LINEAR PROGRAMMING FORMULATION The anti-collocation and the security constraints are effectively mutually exclusive.

INTEGER LINEAR PROGRAMMING FORMULATION The anti-collocation and the security constraints are effectively mutually exclusive. Full deployment is compatible with each of the other constraints (constraints δ and κ)

INTEGER LINEAR PROGRAMMING FORMULATION Security α: � For security reasons, the VMs belonging to

INTEGER LINEAR PROGRAMMING FORMULATION Security α: � For security reasons, the VMs belonging to the same request must be placed on the same physical server.

INTEGER LINEAR PROGRAMMING FORMULATION Full deployment β: � This placement constraint ensures that VM

INTEGER LINEAR PROGRAMMING FORMULATION Full deployment β: � This placement constraint ensures that VM requests should be either fully placed, or none of the VMs will be allocated. � Assigning the value of to 0 means all are zero.

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation (Fault tolerance) γ: � This ensures that the VMs

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation (Fault tolerance) γ: � This ensures that the VMs of a given request with placement constraint γ cannot be placed on the same server.

INTEGER LINEAR PROGRAMMING FORMULATION Security and full-deployment δ: � To meet both requirements, given

INTEGER LINEAR PROGRAMMING FORMULATION Security and full-deployment δ: � To meet both requirements, given a server accommodating VM(s) of a request with placement constraint δ, no VMs from other requests could coexist on the same physical host.

INTEGER LINEAR PROGRAMMING FORMULATION Security and full-deployment δ:

INTEGER LINEAR PROGRAMMING FORMULATION Security and full-deployment δ:

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation and full-deployment κ: � For a given server and

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation and full-deployment κ: � For a given server and VM request , only one VM from can be placed on this server, which satisfies the requirement of anti-collocation. � We also have the full-deployment constraint specified.

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation and full-deployment κ:

INTEGER LINEAR PROGRAMMING FORMULATION Anti-collocation and full-deployment κ:

INTEGER LINEAR PROGRAMMING FORMULATION Best effort τ: � For all VM requests associated with

INTEGER LINEAR PROGRAMMING FORMULATION Best effort τ: � For all VM requests associated with placement constraint τ, as long as the capacity constraint is not violated, as many VMs as possible of this request could be placed into the physical hosts.

INTEGER LINEAR PROGRAMMING FORMULATION Best effort τ: � Let designate the rth-dimension resource requirement

INTEGER LINEAR PROGRAMMING FORMULATION Best effort τ: � Let designate the rth-dimension resource requirement when VM l in request is assigned to physical host i. � When VM l in request is assigned to physical host i. cr ( i ) is used to describe the rth-dimension of the resource capacity of host i, and d indicates the number of dimensions of resource capacities.

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

PERFORMANCE EVALUATION Performance Evaluation � Test Setup � Experimental Results

PERFORMANCE EVALUATION Performance Evaluation � Test Setup � Experimental Results

PERFORMANCE EVALUATION (TEST SETUP) For all experiments, the specification of the servers is homogeneous:

PERFORMANCE EVALUATION (TEST SETUP) For all experiments, the specification of the servers is homogeneous: 24 processors (each equivalent to 1 Amazon ECU) with each server having 32 GB of memory. We set up 4 different test cases for our experiment and form 2 main groups. In experiments 1– 3, the algorithm chooses how to allocate server resources (notably, memory and CPU) to VMs that can be drawn from Amazon EC 2 VM instance types, as indicated in Table 2.

PERFORMANCE EVALUATION (TEST SETUP) For each VM request in test 1 -3, the VM

PERFORMANCE EVALUATION (TEST SETUP) For each VM request in test 1 -3, the VM instances are generated by a combinatorial auction algorithm. Test 2 has the least requested VMs and Test 3 has an intermediate number of request VMs. In test 4, we target the scalability issue of our model and increase the number of VMs tested to 1276. The placement constraints, VM types and VM ranges are randomly assigned to each request.

PERFORMANCE EVALUATION (TEST SETUP) Table 3 summarizes the experiments we used to investigate the

PERFORMANCE EVALUATION (TEST SETUP) Table 3 summarizes the experiments we used to investigate the usefulness of the model.

PERFORMANCE EVALUATION (TEST SETUP) Generally, in test 1 -3, the experiment “sizes” were chosen

PERFORMANCE EVALUATION (TEST SETUP) Generally, in test 1 -3, the experiment “sizes” were chosen in such a way that experiment run-times were considered acceptable. We limit the run time of each placement for test 1 -3 to 10 minutes. For test 4, due to the increased complexity of the VM placement program with the large scale input, we limit the run time of each placement to 5 minutes.

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The results show that given the VM requests which have

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The results show that given the VM requests which have a variety of VM types and placement constraints, placement can have a dramatic change with the increase of physical servers.

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The best effort placement constraint (τ) : � It often

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The best effort placement constraint (τ) : � It often change in each placement plan, mainly because the VMs belonging to the same VM type are essentially the same for maximizing revenue. The requests with security placement constraint (α and δ) : � If the number of VMs in this request is small, they might be only placed when there are enough servers because they generates relatively small profit compared to the servers it consumes.

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The request with both full and anti-collocation placement constraint (κ)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS) The request with both full and anti-collocation placement constraint (κ) : � It requires as many servers as the number of VMs in this request, it can be allocated when there are enough servers. The requests with full or anti-collocation placement constraints (β and γ) � They can co-exist with best effort requests and can be selected even there are only few servers.

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

PERFORMANCE EVALUATION (EXPERIMENTAL RESULTS)

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

AGENDA Introduction Related Work Integer Linear Programming Formulation Performance Evaluation Conclusion and Future Work

CONCLUSION AND FUTURE WORK We present a model of VM placement that enables cloud

CONCLUSION AND FUTURE WORK We present a model of VM placement that enables cloud service providers to perform numerical simulations of different VM demand scenarios. The main contributions are the followings : �A comprehensive ILP model dealing with a wide variety of placement constraints and VM types. � This model is such that it can be solved by standard commercial software.

CONCLUSION AND FUTURE WORK The results show that having a variety of VM types

CONCLUSION AND FUTURE WORK The results show that having a variety of VM types and placement constraints can have a dramatic effect on VM placements, but interestingly, relatively little effect on predicted revenue. That is, such complicated scenarios present operational difficulties, but are not critical when the cloud provider prepares a business model.

CONCLUSION AND FUTURE WORK Future research : � First, the linear programming method can

CONCLUSION AND FUTURE WORK Future research : � First, the linear programming method can be used in combination with heuristic and other methods to speed up the allocation decision. � Secondly, not only considering just the VM allocation problem with limited number of placement constraints but also applying the method to more general VM allocation scenarios that also model the effect of reallocation costs.

Thanks for your listening

Thanks for your listening