Vadara: Predictive Elasticity for Cloud Applications

Elasticity is a key feature in cloud computing, and perhaps what distinguishes it from other computing paradigms. Despite the advantages of elasticity, realizing its full potential is hard due to multiple challenges stemming from the need to estimate workload demand. A desirable solution would require predicting system workload and allocating resources a priori, i.e., A predictive approach. Instead, what is mainly available are reactive solutions, requiring difficult parameter tuning. Since each Cloud Provider (CP) has its own implementation idiosyncrasies, it's impossible for developers to: (i) learn only about one platform and re-use that knowledge in others, (ii) migrate developed elasticity solutions between different CPs, and (iii) to develop reusable predictive elasticity rules or algorithms. This paper makes three contributions to provide an effective elasticity environment. First, Vadara, a totally generic elasticity framework, that transparently connects and abstracts several CPs API behaviour, and enables the use of pluggable CP-agnostic elasticity strategies. Second, it presents a predictive workload forecasting approach, which ensembles several individual forecasting methods, and introduces a padding system based on the most recent prediction errors for both under- and over-provisioning. Finally, results show (1) Vadara's successful connection to well-known CPs, (2) the improvements made regarding under- and over-provisioning due to our padding system, and (3) the effectiveness of our ensemble forecasting technique.

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

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

[3]  Michael R Nelson,et al.  Building an Open Cloud , 2009, Science.

[4]  Raouf Boutaba,et al.  Cloud computing: state-of-the-art and research challenges , 2010, Journal of Internet Services and Applications.

[5]  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.

[6]  Khaled Ghédira,et al.  Unsupervised Neural Predictor to Auto-administrate the Cloud Infrastructure , 2012, 2012 IEEE Fifth International Conference on Utility and Cloud Computing.

[7]  Rajkumar Buyya,et al.  The Aneka platform and QoS-driven resource provisioning for elastic applications on hybrid Clouds , 2012, Future Gener. Comput. Syst..

[8]  Samuel Ajila,et al.  Cloud Client Prediction Models for Cloud Resource Provisioning in a Multitier Web Application Environment , 2013, 2013 IEEE Seventh International Symposium on Service-Oriented System Engineering.

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

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

[11]  Parijat Dube,et al.  Adaptive, Model-driven Autoscaling for Cloud Applications , 2014, ICAC.

[12]  Autoflex: Service Agnostic Auto-scaling Framework for IaaS Deployment Models , 2013, 2013 13th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing.

[13]  Guilherme Galante,et al.  A Survey on Cloud Computing Elasticity , 2012, 2012 IEEE Fifth International Conference on Utility and Cloud Computing.

[14]  Li-Der Chou,et al.  A novel VM workload prediction using Grey Forecasting model in cloud data center , 2014, The International Conference on Information Networking 2014 (ICOIN2014).

[15]  Tharam S. Dillon,et al.  Cloud Computing: Issues and Challenges , 2010, 2010 24th IEEE International Conference on Advanced Information Networking and Applications.

[16]  Marty Humphrey,et al.  Scaling and Scheduling to Maximize Application Performance within Budget Constraints in Cloud Workflows , 2013, 2013 IEEE 27th International Symposium on Parallel and Distributed Processing.

[17]  Ying Wang,et al.  A workload prediction-based multi-VM provisioning mechanism in cloud computing , 2013, 2013 15th Asia-Pacific Network Operations and Management Symposium (APNOMS).

[18]  Tao Li,et al.  ASAP: A Self-Adaptive Prediction System for Instant Cloud Resource Demand Provisioning , 2011, 2011 IEEE 11th International Conference on Data Mining.

[19]  Hui Zou,et al.  Combining time series models for forecasting , 2004, International Journal of Forecasting.

[20]  Prasad Saripalli,et al.  Load Prediction and Hot Spot Detection Models for Autonomic Cloud Computing , 2011, 2011 Fourth IEEE International Conference on Utility and Cloud Computing.

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

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

[23]  Nando de Freitas,et al.  An Introduction to MCMC for Machine Learning , 2004, Machine Learning.

[24]  Samuel Ajila,et al.  Predicting cloud resource provisioning using machine learning techniques , 2013, 2013 26th IEEE Canadian Conference on Electrical and Computer Engineering (CCECE).

[25]  Paul Brebner,et al.  Is your cloud elastic enough?: performance modelling the elasticity of infrastructure as a service (IaaS) cloud applications , 2012, ICPE '12.

[26]  Antonio Pescapè,et al.  Cloud monitoring: A survey , 2013, Comput. Networks.

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

[28]  Zhen Xiao,et al.  Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Environment , 2013, IEEE Transactions on Parallel and Distributed Systems.

[29]  Rob J Hyndman,et al.  Another look at measures of forecast accuracy , 2006 .

[30]  Ricardo Bianchini,et al.  DejaVu: accelerating resource allocation in virtualized environments , 2012, ASPLOS XVII.

[31]  V. Chiang,et al.  Eucalyptus , 2008, Economic Botany.

[32]  Andreas Menychtas,et al.  ElaaS: An Innovative Elasticity as a Service Framework for Dynamic Management across the Cloud Stack Layers , 2012, 2012 Sixth International Conference on Complex, Intelligent, and Software Intensive Systems.

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

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

[35]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

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

[37]  Xifeng Yan,et al.  Workload characterization and prediction in the cloud: A multiple time series approach , 2012, 2012 IEEE Network Operations and Management Symposium.

[38]  Eddy Caron,et al.  Auto-Scaling, Load Balancing and Monitoring in Commercial and Open-Source Clouds , 2011 .

[39]  Rajkumar Buyya,et al.  InterCloud: Utility-Oriented Federation of Cloud Computing Environments for Scaling of Application Services , 2010, ICA3PP.

[40]  Leonardo O. Moreira,et al.  Scale-Space Filtering for Workload Analysis and Forecast , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[41]  Kevin Lee,et al.  How a consumer can measure elasticity for cloud platforms , 2012, ICPE '12.

[42]  K. Chandra Sekaran,et al.  An Approach for Dynamic Scaling of Resources in Enterprise Cloud , 2013, 2013 IEEE 5th International Conference on Cloud Computing Technology and Science.

[43]  Ronald H. Perrott,et al.  Provider-Independent Use of the Cloud , 2009, Euro-Par.

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

[45]  Rob J Hyndman,et al.  Forecasting with Exponential Smoothing: The State Space Approach , 2008 .

[46]  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.

[47]  Nidhi Singh,et al.  Online Ensemble Learning Approach for Server Workload Prediction in Large Datacenters , 2012, 2012 11th International Conference on Machine Learning and Applications.

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

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

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

[51]  Samuel Kounev,et al.  Elasticity in Cloud Computing: What It Is, and What It Is Not , 2013, ICAC.

[52]  Paul Marshall,et al.  Elastic Site: Using Clouds to Elastically Extend Site Resources , 2010, 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing.

[53]  Julie A. McCann,et al.  A survey of autonomic computing—degrees, models, and applications , 2008, CSUR.

[54]  Fermín Galán Márquez,et al.  From infrastructure delivery to service management in clouds , 2010, Future Gener. Comput. Syst..

[55]  Konrad Campowsky,et al.  Elasticity as a service for federated cloud testbeds , 2013, 2013 IEEE International Conference on Communications Workshops (ICC).

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

[57]  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.

[58]  K. Nikolopoulos,et al.  The theta model: a decomposition approach to forecasting , 2000 .

[59]  José Antonio Lozano,et al.  A Review of Auto-scaling Techniques for Elastic Applications in Cloud Environments , 2014, Journal of Grid Computing.

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

[61]  Rob J Hyndman,et al.  Automatic Time Series Forecasting: The forecast Package for R , 2008 .

[62]  Christoph Meinel,et al.  Elastic VM for Cloud Resources Provisioning Optimization , 2011, ACC.

[63]  Kranthimanoj Nagothu,et al.  Prediction of cloud data center networks loads using stochastic and neural models , 2011, 2011 6th International Conference on System of Systems Engineering.

[64]  C Chapman,et al.  Elastic service definition in computational clouds , 2010, 2010 IEEE/IFIP Network Operations and Management Symposium Workshops.

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

[66]  S. K. Nandy,et al.  Elastic Resources Framework in IaaS, Preserving Performance SLAs , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[67]  Calton Pu,et al.  Mistral: Dynamically Managing Power, Performance, and Adaptation Cost in Cloud Infrastructures , 2010, 2010 IEEE 30th International Conference on Distributed Computing Systems.

[68]  Jie Li,et al.  Cloud auto-scaling with deadline and budget constraints , 2010, 2010 11th IEEE/ACM International Conference on Grid Computing.

[69]  Rob J Hyndman,et al.  25 years of time series forecasting , 2006 .

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

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

[72]  Charisios Christodoulos,et al.  Technological Forecasting & Social Change Forecasting with limited data : Combining ARIMA and diffusion models , 2010 .

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

[74]  M. Ashraful Amin,et al.  Neural network and regression based processor load prediction for efficient scaling of Grid and Cloud resources , 2011, 14th International Conference on Computer and Information Technology (ICCIT 2011).

[75]  R. K. Agrawal,et al.  Combining multiple time series models through a robust weighted mechanism , 2012, 2012 1st International Conference on Recent Advances in Information Technology (RAIT).

[76]  Giovanni Petris,et al.  An R Package for Dynamic Linear Models , 2010 .

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

[78]  Marin Litoiu,et al.  Optimal autoscaling in a IaaS cloud , 2012, ICAC '12.

[79]  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.

[80]  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.

[81]  Jordi Guitart,et al.  SLA-driven Elastic Cloud Hosting Provider , 2010, 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing.

[82]  Shigeo Abe DrEng Pattern Classification , 2001, Springer London.

[83]  Rajkumar Buyya,et al.  Author's Personal Copy Future Generation Computer Systems a Coordinator for Scaling Elastic Applications across Multiple Clouds , 2022 .

[84]  Tao Li,et al.  Self-Adaptive Cloud Capacity Planning , 2012, 2012 IEEE Ninth International Conference on Services Computing.

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

[86]  J. Scott Armstrong,et al.  Combining forecasts: The end of the beginning or the beginning of the end? , 1989 .

[87]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[88]  Jerome A. Rolia,et al.  Workload Analysis and Demand Prediction of Enterprise Data Center Applications , 2007, 2007 IEEE 10th International Symposium on Workload Characterization.

[89]  Jie Yang,et al.  A Profile-Based Approach to Just-in-Time Scalability for Cloud Applications , 2009, 2009 IEEE International Conference on Cloud Computing.

[90]  Claus Pahl,et al.  Autonomic resource provisioning for cloud-based software , 2014, SEAMS 2014.

[91]  Samuel Ajila,et al.  Cloud Client Prediction Models Using Machine Learning Techniques , 2013, 2013 IEEE 37th Annual Computer Software and Applications Conference.

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

[93]  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.

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

[95]  Jie Lu,et al.  Optimal Cloud Resource Auto-Scaling for Web Applications , 2013, 2013 13th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing.

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

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

[98]  日経BP社,et al.  Amazon Web Services完全ソリューションガイド , 2016 .

[99]  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.

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

[101]  Naveen Sharma,et al.  Towards autonomic workload provisioning for enterprise Grids and clouds , 2009, 2009 10th IEEE/ACM International Conference on Grid Computing.

[102]  Iain Robertson テクノロジー活用最前線 プライベートクラウドを作る「OpenStack」 ネット、ストレージも統合 完全自動化で構築を迅速化 , 2015 .

[103]  DidonaDiego,et al.  Transactional Auto Scaler , 2014 .

[104]  Cherukuri Aswani Kumar,et al.  A Comparitive Study of Predictive Models for Cloud Infrastructure Management , 2014, 2014 14th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[105]  Ali Khajeh-Hosseini,et al.  Research Agenda in Cloud Technologies , 2010, ArXiv.

[106]  Rajkumar Buyya,et al.  Dynamically scaling applications in the cloud , 2011, CCRV.

[107]  Sara Casolari,et al.  Load prediction models in web-based systems , 2006, valuetools '06.

[108]  Jingfei Jiang,et al.  KSwSVR: A New Load Forecasting Method for Efficient Resources Provisioning in Cloud , 2013, 2013 IEEE International Conference on Services Computing.

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