Heterogeneity and Interference-Aware Virtual Machine Provisioning for Predictable Performance in the Cloud

Infrastructure-as-a-service (IaaS) cloud providers offer tenants elastic computing resources in the form of virtual machine (VM) instances to run their jobs. Recently, providing predictable performance (i.e., performance guarantee) for tenant applications is becoming increasingly compelling in IaaS clouds. However, the hardware heterogeneity and performance interference across the same type of cloud VM instances can bring substantial performance variation to tenant applications, which inevitably stops the tenants from moving their performance-sensitive applications to the IaaS cloud. To tackle this issue, this paper proposes Heifer, a Heterogeneity and interference-aware VM provisioning framework for tenant applications, by focusing on MapReduce as a representative cloud application. It predicts the performance of MapReduce applications by designing a lightweight performance model using the online-measured resource utilization and capturing VM interference. Based on such a performance model, Heifer provisions the VM instances of the good-performing hardware type (i.e., the hardware that achieves the best application performance) to achieve predictable performance for tenant applications, by explicitly exploring the hardware heterogeneity and capturing VM interference. With extensive prototype experiments in our local private cloud and a real-world public cloud (i.e., Microsoft Azure) as well as complementary large-scale simulations, we demonstrate that Heifer can guarantee the job performance while saving the job budget for tenants. Moreover, our evaluation results show that Heifer can improve the job throughput of cloud datacenters, such that the revenue of cloud providers can be increased, thereby achieving a win-win situation between providers and tenants.

[1]  Philipp Leitner,et al.  Patterns in the Chaos—A Study of Performance Variation and Predictability in Public IaaS Clouds , 2014, ACM Trans. Internet Techn..

[2]  Haiyang Wang,et al.  On interference-aware provisioning for cloud-based big data processing , 2013, 2013 IEEE/ACM 21st International Symposium on Quality of Service (IWQoS).

[3]  Guillaume Pierre,et al.  Resource Provisioning of Web Applications in Heterogeneous Clouds , 2011, WebApps.

[4]  Pramod Bhatotia,et al.  Orchestrating the Deployment of Computations in the Cloud with Conductor , 2012, NSDI.

[5]  Hitesh Ballani,et al.  Towards predictable datacenter networks , 2011, SIGCOMM 2011.

[6]  Yogendra P. Chaubey,et al.  Resampling Methods: A Practical Guide to Data Analysis , 2000, Technometrics.

[7]  Benjamin Farley,et al.  More for your money: exploiting performance heterogeneity in public clouds , 2012, SoCC '12.

[8]  Randy H. Katz,et al.  Improving MapReduce Performance in Heterogeneous Environments , 2008, OSDI.

[9]  Hai Jin,et al.  Building a network highway for big data: architecture and challenges , 2014, IEEE Network.

[10]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[11]  Randy H. Katz,et al.  Heterogeneity and dynamicity of clouds at scale: Google trace analysis , 2012, SoCC '12.

[12]  Herodotos Herodotou,et al.  No one (cluster) size fits all: automatic cluster sizing for data-intensive analytics , 2011, SoCC.

[13]  Antony I. T. Rowstron,et al.  Bridging the tenant-provider gap in cloud services , 2012, SoCC '12.

[14]  Albert G. Greenberg,et al.  Sharing the Data Center Network , 2011, NSDI.

[15]  Bo Li,et al.  iAware: Making Live Migration of Virtual Machines Interference-Aware in the Cloud , 2014, IEEE Transactions on Computers.

[16]  Athanasios V. Vasilakos,et al.  Managing Performance Overhead of Virtual Machines in Cloud Computing: A Survey, State of the Art, and Future Directions , 2014, Proceedings of the IEEE.

[17]  Hai Jin,et al.  Fair Network Bandwidth Allocation in IaaS Datacenters via a Cooperative Game Approach , 2016, IEEE/ACM Transactions on Networking.

[18]  Hai Jin,et al.  MultiGreen: cost-minimizing multi-source datacenter power supply with online control , 2013, e-Energy '13.

[19]  Roy H. Campbell,et al.  Resource Provisioning Framework for MapReduce Jobs with Performance Goals , 2011, Middleware.

[20]  Karsten Schwan,et al.  HeteroVisor: Exploiting Resource Heterogeneity to Enhance the Elasticity of Cloud Platforms , 2015, VEE.

[21]  C S LuiJohn,et al.  Fair network bandwidth allocation in iaas datacenters via a cooperative game approach , 2016 .

[22]  Cheng-Zhong Xu,et al.  Interference and locality-aware task scheduling for MapReduce applications in virtual clusters , 2013, HPDC.

[23]  Xiaobo Zhou,et al.  User-Centric Heterogeneity-Aware MapReduce Job Provisioning in the Public Cloud , 2014, ICAC.

[24]  Archana Ganapathi,et al.  The Case for Evaluating MapReduce Performance Using Workload Suites , 2011, 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems.

[25]  Antti Ylä-Jääski,et al.  Is the Same Instance Type Created Equal? Exploiting Heterogeneity of Public Clouds , 2013, IEEE Transactions on Cloud Computing.

[26]  T. S. Eugene Ng,et al.  Application-specific configuration selection in the cloud: Impact of provider policy and potential of systematic testing , 2015, 2015 IEEE Conference on Computer Communications (INFOCOM).

[27]  H. Howie Huang,et al.  Matrix: Achieving Predictable Virtual Machine Performance in the Clouds , 2014, ICAC.

[28]  Hai Jin,et al.  Network-Aware Task Assignment for MapReduce Applications in Shared Clusters , 2015 .

[29]  Ishai Menache,et al.  Network-Aware Scheduling for Data-Parallel Jobs: Plan When You Can , 2015, SIGCOMM.

[30]  Prashant J. Shenoy,et al.  Empirical evaluation of latency-sensitive application performance in the cloud , 2010, MMSys '10.

[31]  Xiaosong Ma,et al.  Accelerating Batch Analytics with Residual Resources from Interactive Clouds , 2013, 2013 IEEE 21st International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems.

[32]  Muthu Dayalan,et al.  MapReduce : Simplified Data Processing on Large Cluster , 2018 .

[33]  Mingfa Zhu,et al.  Minimizing Interference and Maximizing Progress for Hadoop Virtual Machines , 2015, PERV.