Predictive VM consolidation on multiple resources: Beyond load balancing

Effective consolidation of different applications on common resources is often akin to black art as application performance interference may result in unpredictable system and workload delays. In this paper we consider the problem of fair load balancing on multiple servers within a virtualized data center setting. We especially focus on multi-tiered applications with different resource demands per tier and address the problem on how to best match each application tier on each resource, such that performance interference is minimized. To address this problem, we propose a two-step approach. First, a fair load balancing scheme assigns different virtual machines (VMs) across different servers; this process is formulated as a multi-dimensional vector scheduling problem that uses a new polynomial-time approximation scheme (PTAS) to minimize the maximum utilization across all server resources and results in multiple load balancing solutions. Second, a queueing network analytic model is applied on the proposed min-max solutions in order to select the optimal one. We experimentally evaluate the proposed two-stage mechanism using a Xen virtualization testbed that hosts multiple RUBiS multi-tier applications. Experimental results show that the proposed mechanism is robust as it always predicts the optimal consolidation strategy.

[1]  Jie Liu,et al.  Cuanta: quantifying effects of shared on-chip resource interference for consolidated virtual machines , 2011, SoCC.

[2]  B. C. Rennie,et al.  On stirling numbers of the second kind , 1969 .

[3]  Evgenia Smirni,et al.  Achieving application-centric performance targets via consolidation on multicores: myth or reality? , 2012, HPDC '12.

[4]  Leandros Tassiulas,et al.  Maxmin fair scheduling in wireless networks , 2002, Proceedings.Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies.

[5]  Evgenia Smirni,et al.  Burstiness in Multi-tier Applications: Symptoms, Causes, and New Models , 2008, Middleware.

[6]  Kenneth H. Rosen Discrete Mathematics and Its Applications: And Its Applications , 2006 .

[7]  Amin Vahdat,et al.  Usher: An Extensible Framework for Managing Clusters of Virtual Machines , 2007, LISA.

[8]  Evgenia Smirni,et al.  Model-driven consolidation of Java workloads on multicores , 2012, IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2012).

[9]  Benjamin Hindman,et al.  Dominant Resource Fairness: Fair Allocation of Multiple Resource Types , 2011, NSDI.

[10]  L. John,et al.  Modeling program resource demand using inherent program characteristics , 2011, PERV.

[11]  Arun Venkataramani,et al.  Black-box and Gray-box Strategies for Virtual Machine Migration , 2007, NSDI.

[12]  Ashish Goel,et al.  Approximate majorization and fair online load balancing , 2001, TALG.

[13]  Sanjeev Khanna,et al.  On multi-dimensional packing problems , 2004, SODA '99.

[14]  Virgílio A. F. Almeida,et al.  Capacity Planning and Performance Modeling: From Mainframes to Client-Server Systems , 1994 .

[15]  Li Zhao,et al.  VM3: Measuring, modeling and managing VM shared resources , 2009, Comput. Networks.

[16]  Seung-Jae Han,et al.  Fairness and Load Balancing in Wireless LANs Using Association Control , 2004, IEEE/ACM Transactions on Networking.

[17]  Kenneth H. Rosen,et al.  Discrete Mathematics and its applications , 2000 .

[18]  Rina Panigrahy,et al.  Validating Heuristics for Virtual Machines Consolidation , 2011 .

[19]  Sameh Elnikety,et al.  Performance Comparison of Middleware Architectures for Generating Dynamic Web Content , 2003, Middleware.

[20]  Qi Zhang,et al.  A Regression-Based Analytic Model for Dynamic Resource Provisioning of Multi-Tier Applications , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).