A Review of Auto-scaling Techniques for Elastic Applications in Cloud Environments

Cloud computing environments allow customers to dynamically scale their applications. The key problem is how to lease the right amount of resources, on a pay-as-you-go basis. Application re-dimensioning can be implemented effortlessly, adapting the resources assigned to the application to the incoming user demand. However, the identification of the right amount of resources to lease in order to meet the required Service Level Agreement, while keeping the overall cost low, is not an easy task. Many techniques have been proposed for automating application scaling. We propose a classification of these techniques into five main categories: static threshold-based rules, control theory, reinforcement learning, queuing theory and time series analysis. Then we use this classification to carry out a literature review of proposals for auto-scaling in the cloud.

[1]  R. Meyer,et al.  The Fundamental Theorem of Exponential Smoothing , 1961 .

[2]  James S. Albus,et al.  New Approach to Manipulator Control: The Cerebellar Model Articulation Controller (CMAC)1 , 1975 .

[3]  Erol Gelenbe,et al.  Computer and Information Sciences - 3 , 1989 .

[4]  Prashant J. Shenoy,et al.  Dynamic resource allocation for shared data centers using online measurements , 2003, IWQoS'03.

[5]  Peter Dayan,et al.  Q-learning , 1992, Machine Learning.

[6]  Dan Rubenstein,et al.  Provisioning servers in the application tier for e-commerce systems , 2004, Twelfth IEEE International Workshop on Quality of Service, 2004. IWQOS 2004..

[7]  Virgílio A. F. Almeida,et al.  Performance by Design - Computer Capacity Planning By Example , 2004 .

[8]  Rajarshi Das,et al.  A Hybrid Reinforcement Learning Approach to Autonomic Resource Allocation , 2006, 2006 IEEE International Conference on Autonomic Computing.

[9]  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).

[10]  Jing Xu,et al.  On the Use of Fuzzy Modeling in Virtualized Data Center Management , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).

[11]  Suman Nath,et al.  Energy-Aware Server Provisioning and Load Dispatching for Connection-Intensive Internet Services , 2008, NSDI.

[12]  Emily Halili,et al.  Apache JMeter , 2008 .

[13]  Prashant J. Shenoy,et al.  Agile dynamic provisioning of multi-tier Internet applications , 2008, TAAS.

[14]  Le Yi Wang,et al.  VCONF: a reinforcement learning approach to virtual machines auto-configuration , 2009, ICAC '09.

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

[16]  Eugene Ciurana,et al.  Google App Engine , 2009 .

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

[18]  Michael I. Jordan,et al.  Statistical Machine Learning Makes Automatic Control Practical for Internet Datacenters , 2009, HotCloud.

[19]  Rajkumar Buyya,et al.  CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services , 2009, ArXiv.

[20]  Ajay Mohindra,et al.  Dynamic Scaling of Web Applications in a Virtualized Cloud Computing Environment , 2009, 2009 IEEE International Conference on e-Business Engineering.

[21]  Jeffrey S. Chase,et al.  Automated control in cloud computing: challenges and opportunities , 2009, ACDC '09.

[22]  Sang-Min Park,et al.  Self-Tuning Virtual Machines for Predictable eScience , 2009, 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid.

[23]  Radu Prodan,et al.  Prediction-based real-time resource provisioning for massively multiplayer online games , 2009, Future Gener. Comput. Syst..

[24]  Eddy Caron,et al.  Forecasting for Grid and Cloud Computing On-Demand Resources Based on Pattern Matching , 2010, 2010 IEEE Second International Conference on Cloud Computing Technology and Science.

[25]  Abhishek Chandra,et al.  Resource Bundles: Using Aggregation for Statistical Large-Scale Resource Discovery and Management , 2010, IEEE Transactions on Parallel and Distributed Systems.

[26]  Jeffrey S. Chase,et al.  Automated control for elastic storage , 2010, ICAC '10.

[27]  Jano I. van Hemert,et al.  Resource management of enterprise cloud systems using layered queuing and historical performance models , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).

[28]  Eddy Caron,et al.  Pattern Matching Based Forecast of Non-periodic Repetitive Behavior for Cloud Clients , 2011, Journal of Grid Computing.

[29]  Eddy Caron,et al.  Forecasting for Cloud computing on-demand resources based on pattern matching , 2010 .

[30]  R. Prodan,et al.  GroudSim: An Event-Based Simulation Framework for Computational Grids and Clouds , 2010, Euro-Par Workshops.

[31]  Tharindu Patikirikorala,et al.  Feedback controllers in the cloud , 2010, APSEC 2010.

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

[33]  Nandini Mukherjee,et al.  Optimizing the utilization of virtual resources in Cloud environment , 2010, 2010 IEEE International Conference on Virtual Environments, Human-Computer Interfaces and Measurement Systems.

[34]  Xiaobo Zhou,et al.  Autonomic Provisioning with Self-Adaptive Neural Fuzzy Control for End-to-end Delay Guarantee , 2010, 2010 IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[35]  Gang Yin,et al.  Online Self-Reconfiguration with Performance Guarantee for Energy-Efficient Large-Scale Cloud Computing Data Centers , 2010, 2010 IEEE International Conference on Services Computing.

[36]  Artur Andrzejak,et al.  Decision Model for Cloud Computing under SLA Constraints , 2010, 2010 IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[37]  Isis Truck,et al.  From Data Center Resource Allocation to Control Theory and Back , 2010, 2010 IEEE 3rd International Conference on Cloud Computing.

[38]  Rajkumar Buyya,et al.  Adaptive threshold-based approach for energy-efficient consolidation of virtual machines in cloud data centers , 2010, MGC '10.

[39]  Eduard Ayguadé,et al.  A survey on performance management for internet applications , 2010 .

[40]  Rizos Sakellariou,et al.  Enacting SLAs in Clouds Using Rules , 2011, Euro-Par.

[41]  Waheed Iqbal,et al.  Adaptive resource provisioning for read intensive multi-tier applications in the cloud , 2011, Future Gener. Comput. Syst..

[42]  Marty Humphrey,et al.  Auto-scaling to minimize cost and meet application deadlines in cloud workflows , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[43]  Kun Wang,et al.  A Distributed Self-Learning Approach for Elastic Provisioning of Virtualized Cloud Resources , 2011, 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems.

[44]  Ajay Mohindra,et al.  Scalability and Performance of Web Applications in a Compute Cloud , 2011, 2011 IEEE 8th International Conference on e-Business Engineering.

[45]  Marin Litoiu,et al.  Managing a SaaS application in the cloud using PaaS policy sets and a strategy-tree , 2011, 2011 7th International Conference on Network and Service Management.

[46]  Jun Han,et al.  A multi-model framework to implement self-managing control systems for QoS management , 2011, SEAMS '11.

[47]  Marin Litoiu,et al.  Exploring Alternative Approaches to Implement an Elasticity Policy , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[48]  Isis Truck,et al.  Using Reinforcement Learning for Autonomic Resource Allocation in Clouds: towards a fully automated workflow , 2011 .

[49]  Ivona Brandic,et al.  Revealing the MAPE loop for the autonomic management of Cloud infrastructures , 2011, 2011 IEEE Symposium on Computers and Communications (ISCC).

[50]  Wlodzimierz Funika,et al.  Dynamic Business Metrics-driven Resource Provisioning in Cloud Environments , 2011, PPAM.

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

[52]  Jing Xu,et al.  Fuzzy Modeling Based Resource Management for Virtualized Database Systems , 2011, 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems.

[53]  Eduardo F. Morales,et al.  An Introduction to Reinforcement Learning , 2011 .

[54]  Cheng-Zhong Xu,et al.  A Model-free Learning Approach for Coordinated Configuration of Virtual Machines and Appliances , 2011, 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems.

[55]  Jing Xu,et al.  Adaptive virtual resource management with fuzzy model predictive control , 2011, ICAC '11.

[56]  Proceedings of the 2nd ACM Symposium on Cloud Computing , 2011, SOCC 2011.

[57]  Aniruddha S. Gokhale,et al.  Efficient Autoscaling in the Cloud Using Predictive Models for Workload Forecasting , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[58]  Emiliano Casalicchio,et al.  Autonomic Management of Cloud-Based Systems: The Service Provider Perspective , 2012, ISCIS.

[59]  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).

[60]  ZhiHui Lv,et al.  RPPS: A Novel Resource Prediction and Provisioning Scheme in Cloud Data Center , 2012, 2012 IEEE Ninth International Conference on Services Computing.

[61]  Giovanni Toffetti Carughi,et al.  Modeling Cloud performance with Kriging , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[62]  Johan Tordsson,et al.  An adaptive hybrid elasticity controller for cloud infrastructures , 2012, 2012 IEEE Network Operations and Management Symposium.

[63]  Cheng-Zhong Xu,et al.  URL: A unified reinforcement learning approach for autonomic cloud management , 2012, J. Parallel Distributed Comput..

[64]  Alexander Clemm,et al.  Integrated and autonomic cloud resource scaling , 2012, 2012 IEEE Network Operations and Management Symposium.

[65]  Qian Zhu,et al.  Resource Provisioning with Budget Constraints for Adaptive Applications in Cloud Environments , 2010, IEEE Transactions on Services Computing.

[66]  Ming Mao,et al.  A Performance Study on the VM Startup Time in the Cloud , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[67]  Jinhui Huang,et al.  Resource prediction based on double exponential smoothing in cloud computing , 2012, 2012 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet).

[68]  Kevin Lee,et al.  Empirical prediction models for adaptive resource provisioning in the cloud , 2012, Future Gener. Comput. Syst..

[69]  Johan Tordsson,et al.  Efficient provisioning of bursty scientific workloads on the cloud using adaptive elasticity control , 2012, ScienceCloud '12.

[70]  Balaji Viswanathan,et al.  SmartScale: Automatic Application Scaling in Enterprise Clouds , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[71]  Xavier Franch,et al.  Enhancing Federated Cloud Management with an Integrated Service Monitoring Approach , 2013, Journal of Grid Computing.

[72]  Enda Barrett,et al.  Applying reinforcement learning towards automating resource allocation and application scalability in the cloud , 2013, Concurr. Comput. Pract. Exp..

[73]  Kathryn Bean,et al.  Transforming reactive auto-scaling into proactive auto-scaling , 2013, CloudDP '13.

[74]  Cheng-Zhong Xu,et al.  Coordinated Self-Configuration of Virtual Machines and Appliances Using a Model-Free Learning Approach , 2013, IEEE Transactions on Parallel and Distributed Systems.

[75]  Víctor Méndez Muñoz,et al.  Rafhyc: an Architecture for Constructing Resilient Services on Federated Hybrid Clouds , 2013, Journal of Grid Computing.

[76]  William Hunt What Is Google Apps for Business , 2013 .

[77]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[78]  Moustafa Ghanem,et al.  Future Generation Computer Systems ( ) – Future Generation Computer Systems Enabling Cost-aware and Adaptive Elasticity of Multi-tier Cloud Applications , 2022 .

[79]  Rajiv Ranjan,et al.  An overview of the commercial cloud monitoring tools: research dimensions, design issues, and state-of-the-art , 2013, Computing.

[80]  Sunilkumar S. Manvi,et al.  Resource management for Infrastructure as a Service (IaaS) in cloud computing: A survey , 2014, J. Netw. Comput. Appl..

[81]  Kevin Wilson Microsoft Office 365 , 2014 .

[82]  김형식,et al.  Xen Hypervisor의 취약점 유형 분석 , 2015 .

[83]  Santosh Krishnan,et al.  Google Compute Engine , 2015 .