Machine learning-based auto-scaling for containerized applications

被引:0
作者
Mahmoud Imdoukh
Imtiaz Ahmad
Mohammad Gh. Alfailakawi
机构
[1] Kuwait University,Department of Computer Engineering, College of Engineering and Petroleum
来源
Neural Computing and Applications | 2020年 / 32卷
关键词
Containerization; Auto-scaling; Proactive controller; Prediction; Neural network; Long short-term memory;
D O I
暂无
中图分类号
学科分类号
摘要
Containers are shaping the new era of cloud applications due to their key benefits such as lightweight, very quick to launch, consuming minimum resources to run an application which reduces cost, and can be easily and rapidly scaled up/down as per workload requirements. However, container-based cloud applications require sophisticated auto-scaling methods that automatically and in a timely manner provision and de-provision cloud resources without human intervention in response to dynamic fluctuations in workload. To address this challenge, in this paper, we propose a proactive machine learning-based approach to perform auto-scaling of Docker containers in response to dynamic workload changes at runtime. The proposed auto-scaler architecture follows the commonly abstracted four steps: monitor, analyze, plan, and execute the control loop. The monitor component continuously collects different types of data (HTTP request statistics, CPU, and memory utilization) that are needed during the analysis and planning phase to determine proper scaling actions. We employ in analysis phase a concise yet fast, adaptive, and accurate prediction model based on long short-term memory (LSTM) neural network to predict future HTTP workload to determine the number of containers needed to handle requests ahead of time to eliminate delays caused by starting or stopping running containers. Moreover, in the planning phase, the proposed gradually decreasing strategy avoids oscillations which happens when scaling operations are too frequent. Experimental results using realistic workload show that the prediction accuracy of LSTM model is as accurate as auto-regression integrated moving average model but offers 600 times prediction speedup. Moreover, as compared with artificial neural network model, LSTM model performs better in terms of auto-scaler metrics related to provisioning and elastic speedup. In addition, it was observed that when LSTM model is used, the predicted workload helped in using the minimum number of replicas to handle future workload. In the experiments, the use of GDS showed promising results in keeping the desired performance at reduced cost to handle cases with sudden workload increase/decrease.
引用
收藏
页码:9745 / 9760
页数:15
相关论文
共 91 条
[1]  
Varghese B(2018)Next generation cloud computing: new trends and research directions Future Gener Comput Syst 79 849-861
[2]  
Buyya R(2014)Containers and cloud: from lxc to docker to kubernetes IEEE Cloud Comput 1 81-84
[3]  
Bernstein D(2016)Borg, omega, and kubernetes ACM Queue 14 70-93
[4]  
Burns B(2018)Microservices: the journey so far and challenges ahead IEEE Softw 35 24-35
[5]  
Grant B(2018)The pains and gains of microservices: a systematic grey literature review J Syst Softw 146 215-232
[6]  
Oppenheimer D(2017)Evaluating performance of containerized iot services for clustered devices at the network edge IEEE Internet Things J 4 1019-1030
[7]  
Brewer E(2018)A manifesto for future generation cloud computing: research directions for the next decade ACM Comput Surv 51 105:1-105:38
[8]  
Wilkes J(2018)Elasticity in cloud computing: state of the art and research challenges IEEE Trans Serv Comput 11 430-447
[9]  
Jamshidi P(2014)A review of auto-scaling techniques for elastic applications in cloud environments J Grid Comput 12 559-592
[10]  
Pahl C(2017)Auto-scaling web applications in clouds: a cost-aware approach J Netw Comput Appl 95 26-41