Fine-Grained Resource Scaling in a Public Cloud: A Tenant's Perspective

Growing tenant workload needs and an increasingly competitive market will force cloud providers to operate their data centers at significantly higher utilization levels than seen today. We argue that a key enabler of such cloud ecosystems would be facilities for tenants to engage in fine-grained resource scaling in addition to those offered by current providers. The basic unit of resource scaling exposed by current cloud providers is the canonical interface of virtual machines (VMs) with relatively static resource capacities. This paper describes opportunities and challenges in augmenting this interface to also include fine-grained scaling of CPU and memory within an already procured VM. Qualitative arguments for why this would offer cost benefits for both the provider and its tenants are presented. We focus on the cost-effective operation of a tenant in such an environment via the design of a feedback controller. The efficacy of our ideas is illustrated by implementing a case study in a Memcached tenant workload. Our results are promising and point to an interesting and broad area for further research - e.g., with the real-world workload in our evaluation, up to 50% utility improvement can be achieved by just applying memory scaling, a further 66% improvement can be achieved by coordinating fine-grained CPU and memory scaling.

[1]  Xiaohui Gu,et al.  CloudScale: elastic resource scaling for multi-tenant cloud systems , 2011, SoCC.

[2]  Erik Elmroth,et al.  Towards Faster Response Time Models for Vertical Elasticity , 2014, 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing.

[3]  Thilo Kielmann,et al.  Autoscaling Web Applications in Heterogeneous Cloud Infrastructures , 2014, 2014 IEEE International Conference on Cloud Engineering.

[4]  Thomas F. Wenisch,et al.  Disaggregated memory for expansion and sharing in blade servers , 2009, ISCA '09.

[5]  Samuel Kounev,et al.  Runtime Vertical Scaling of Virtualized Applications via Online Model Estimation , 2014, 2014 IEEE Eighth International Conference on Self-Adaptive and Self-Organizing Systems.

[6]  Xiaoyun Zhu,et al.  Application-driven dynamic vertical scaling of virtual machines in resource pools , 2014, 2014 IEEE Network Operations and Management Symposium (NOMS).

[7]  Xiaohui Gu,et al.  AGILE: Elastic Distributed Resource Scaling for Infrastructure-as-a-Service , 2013, ICAC.

[8]  Christoph Meinel,et al.  Elastic Virtual Machine for Fine-Grained Cloud Resource Provisioning , 2011 .

[9]  Luiz André Barroso,et al.  The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines , 2009, The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines.

[10]  Guillaume Pierre,et al.  Wikipedia workload analysis for decentralized hosting , 2009, Comput. Networks.

[11]  Kang G. Shin,et al.  Automated control of multiple virtualized resources , 2009, EuroSys '09.

[12]  Moustafa Ghanem,et al.  Lightweight Resource Scaling for Cloud Applications , 2012, 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (ccgrid 2012).

[13]  Eloy Romero,et al.  Elastic Memory Management of Virtualized Infrastructures for Applications with Dynamic Memory Requirements , 2013, ICCS.

[14]  Asit K. Mishra,et al.  METE: meeting end-to-end QoS in multicores through system-wide resource management , 2011, PERV.

[15]  Samuel Kounev,et al.  Proactive Memory Scaling of Virtualized Applications , 2015, 2015 IEEE 8th International Conference on Cloud Computing.

[16]  Steven Hand,et al.  Self-adaptive and self-configured CPU resource provisioning for virtualized servers using Kalman filters , 2009, ICAC '09.

[17]  Prashant J. Shenoy,et al.  Resource overbooking and application profiling in shared hosting platforms , 2002, OSDI '02.

[18]  Zhenhuan Gong,et al.  PRESS: PRedictive Elastic ReSource Scaling for cloud systems , 2010, 2010 International Conference on Network and Service Management.

[19]  Jordi Vilaplana,et al.  A queuing theory model for cloud computing , 2014, The Journal of Supercomputing.

[20]  B. Urgaonkar,et al.  Navigating the Public Cloud Labyrinth : A Study of Price , Capacity , and Scaling Granularity Trade-offs , 2016 .

[21]  Asser N. Tantawi,et al.  An analytical model for multi-tier internet services and its applications , 2005, SIGMETRICS '05.

[22]  Erik Elmroth,et al.  Coordinating CPU and Memory Elasticity Controllers to Meet Service Response Time Constraints , 2015, 2015 International Conference on Cloud and Autonomic Computing.

[23]  Christof Fetzer,et al.  Vertical Scaling for Prioritized VMs Provisioning , 2012, 2012 Second International Conference on Cloud and Green Computing.

[24]  G ShinKang,et al.  Adaptive control of virtualized resources in utility computing environments , 2007 .