Skip to main content
Log in

Maintaining container sustainability through machine learning

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Container-based virtualization is a new technology used by cloud providers to provide cloud services to end-user. This technology has various advantages (e.g. lightweight, quickly deployable, and efficient for resource utilization) for executing an application. It reduces the operating cost, carbon emission, and allocates the resources dynamically. Different cloud applications have different requirements. Deploying resources according to peak requirements always can be costly. On the other hand, always having minimum computing resources may not meet workload’s peak requirements, and may cause degraded system performance, less throughput, more response time and service level agreement violations. Hence, it becomes a challenge to maintain optimal level of resources to fulfill the SLA requirements for the applications. To address the above issues, we propose an auto-scaler which uses proactive approach (Support Vector Regression) to perform horizontal elasticity for Docker containers in response to fluctuating workload for real-time applications. As the workload increases, additional resources will be allocated dynamically supporting elasticity. The increase in capacity of a machine dynamically is termed as elasticity. The effective mechanism of elasticity avoids the violation of SLA and penalties in terms of user’s loss. The proposed auto-scaler uses the IBM computing model, MAPE-K principle to perform elasticity using the workload predictions made by the SVR model. The predicted workload helps auto-scaler to find out the minimum numbers of replicas needed for a container of a cluster so that it handles the future workload. The experimental results show that the results of SVM prediction keep the performance of the system sustainable with fluctuating workload.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  1. Zhang, Q., Cheng, L., Boutaba, R.: Cloud computing: state-of-the-art and research challenges. J. Internet Serv. Appl. 1(1), 7–18 (2010)

    Article  Google Scholar 

  2. Varghese, B., Buyya, R.: Next generation cloud computing: New trends and research directions. Fut. Gener. Comput. Syst. 79, 849–861 (2018)

    Article  Google Scholar 

  3. Alouane, M., Bakkali, H. E.: Virtualization in cloud computing: Existing solutions and new approach. In: 2016 2nd International Conference on Cloud Computing Technologies and Applications (CloudTech), IEEE, (2016), pp. 116–123

  4. Al-Dhuraibi, Y., Paraiso, F., Djarallah, N., Merle, P.: Elasticity in cloud computing: state of the art and research challenges. IEEE Trans. Serv. Comput. 11(2), 430–447 (2017)

    Article  Google Scholar 

  5. Pahl, C., Brogi, A., Soldani, J., Jamshidi, P.: Cloud container technologies: a state-of-the-art review. IEEE Trans. Cloud Comput. 7, 677 (2017)

    Article  Google Scholar 

  6. Cloud, A. E. C.: Amazon web services. Accessed November 9 (2011)

  7. Copeland, M., Soh, J., Puca, A., Manning, M., Gollob, D.: Microsoft Azure. Apress, New York (2015)

    Book  Google Scholar 

  8. Jamshidi, P., Pahl, C., Mendonça, N.C., Lewis, J., Tilkov, S.: Microservices: The journey so far and challenges ahead. IEEE Softw. 35(3), 24–35 (2018)

    Article  Google Scholar 

  9. Soldani, J., Tamburri, D.A., Van Den Heuvel, W.-J.: The pains and gains of microservices: A systematic grey literature review. J. Syst. Softw. 146, 215–232 (2018)

    Article  Google Scholar 

  10. Alulema, D., Criado, J., Iribarne, L., Fernández-García, A.J., Ayala, R.: A model-driven engineering approach for the service integration of IoT systems. Clust. Comput. 23(3), 1937–1954 (2020)

    Article  Google Scholar 

  11. Buyya, R., Srirama, S.N., Casale, G., Calheiros, R., Simmhan, Y., Varghese, B., Gelenbe, E., Javadi, B., Vaquero, L.M., Netto, M.A., et al.: A manifesto for future generation cloud computing: Research directions for the next decade. ACM Comput. Surv. (CSUR) 51(5), 1–38 (2018)

    Article  Google Scholar 

  12. Khebbeb, K., Hameurlain, N., Belala, F.: Formalizing and simulating cross-layer elasticity strategies in cloud systems. Clust. Comput. 23, 1603 (2020)

    Article  Google Scholar 

  13. Kirchoff, D.F., Xavier, M., Mastella, J., De Rose, C.A.: A preliminary study of machine learning workload prediction techniques for cloud applications. In: 27th Euromicro international conference on parallel, Distributed and Network-Based Processing (PDP). IEEE, pp. 222–227 (2019)

  14. Lorido-Botran, T., Miguel-Alonso, J., Lozano, J.A.: A review of auto-scaling techniques for elastic applications in cloud environments. J. Grid Comput. 12(4), 559–592 (2014)

    Article  Google Scholar 

  15. Casalicchio, E.: A study on performance measures for auto-scaling CPU-intensive containerized applications. Clust. Comput. 22(3), 995–1006 (2019)

    Article  MathSciNet  Google Scholar 

  16. Klinaku, F., Frank, M., Becker, S.: Caus: An elasticity controller for a containerized microservice. In: Companion of the 2018 ACM/SPEC International Conference on Performance Engineering, (2018), pp. 93–98

  17. Verma, M., Gangadharan, G., Narendra, N.C., Vadlamani, R., Inamdar, V., Ramachandran, L., Calheiros, R.N., Buyya, R.: Dynamic resource demand prediction and allocation in multi-tenant service clouds. Concurr. Comput. 28(17), 4429–4442 (2016)

    Article  Google Scholar 

  18. Box, G.E., Jenkins, G.M., Reinsel, G.C., Ljung, G.M.: Time Series Analysis: Forecasting and Control. Wiley, Hoboken (2015)

    MATH  Google Scholar 

  19. Herbst, N. R., Kounev, S., Reussner, R.: Elasticity in cloud computing: What it is, and what it is not. In: 10th International Conference on Autonomic Computing (\(\{ICAC\}\) 13), (2013), pp. 23–27

  20. Maurya, A.K., Tripathi, A.K.: On benchmarking task scheduling algorithms for heterogeneous computing systems. J. Supercomput. 74(7), 3039–3070 (2018)

    Article  Google Scholar 

  21. Shevade, S.K., Keerthi, S.S., Bhattacharyya, C., Murthy, K.R.K.: Improvements to the SMO algorithm for SVM regression. IEEE Trans. Neural Netw. 11(5), 1188–1193 (2000)

    Article  Google Scholar 

  22. Schölkopf, B., Smola, A.J., Bach, F., et al.: Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond. MIT Press, Cambridge (2002)

    Google Scholar 

  23. Moreno-Vozmediano, R., Montero, R.S., Huedo, E., Llorente, I.M.: Efficient resource provisioning for elastic cloud services based on machine learning techniques. J. Cloud Comput. 8(1), 5 (2019)

    Article  Google Scholar 

  24. Arcaini, P., Riccobene, E., Scandurra, P.: Modeling and analyzing mape-k feedback loops for self-adaptation. In: IEEE/ACM 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. IEEE, pp. 13–23 (2015)

  25. Rutten, E., Marchand, N., Simon, D.: Feedback control as mape-k loop in autonomic computing. In: Software Engineering for Self-Adaptive Systems III. Assurances, Springer, (2017), pp. 349–373

  26. Merkel, D.: Docker: lightweight linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014)

    Google Scholar 

  27. Chiang, R.C.: Contention-aware container placement strategy for docker swarm with machine learning based clustering algorithms. Clust. Comput. 1–11 (2020)

  28. Chae, M., Lee, H., Lee, K.: A performance comparison of linux containers and virtual machines using docker and kvm. Clust. Comput. 22(1), 1765–1775 (2019)

    Article  Google Scholar 

  29. Kubernetes horizontal pod auto-scaling, http://kubernetes.io/ docs/tasks/run-application/horizontalpod-autoscale. accessed 08 Nov 2018

  30. Al-Dhuraibi, Y., Paraiso, F., Djarallah, N., Merle, P.: Autonomic vertical elasticity of docker containers with elasticdocker. In: IEEE 10th international conference on cloud computing (CLOUD). IEEE 2017, 472–479 (2017)

  31. Belgacem, A., Beghdad-Bey, K., Nacer, H., Bouznad, S.: Efficient dynamic resource allocation method for cloud computing environment. Clust. Comput. 23(4), 2871–2889 (2020)

    Article  Google Scholar 

  32. Singh, P., Gupta, P., Jyoti, K.: TASM: technocrat ARIMA and SVR model for workload prediction of web applications in cloud. Clust. Comput. 22(2), 619–633 (2019)

    Article  Google Scholar 

  33. Kumar, J., Singh, A.K.: Cloud datacenter workload estimation using error preventive time series forecasting models. Clust. Comput. 23(2), 1363–1379 (2020)

    Article  Google Scholar 

  34. Shahidinejad, A., Ghobaei-Arani, M., Esmaeili, L.: An elastic controller using colored petri nets in cloud computing environment. Clust. Comput. 1–27 (2019)

  35. Meng, Y., Rao, R., Zhang, X., Hong, P.: Crupa: A container resource utilization prediction algorithm for auto-scaling based on time series analysis. In: International conference on progress in informatics and computing (PIC). IEEE 2016, 468–472 (2016)

  36. Kan, C.: Docloud: An elastic cloud platform for web applications based on docker. In: 18th international conference on advanced communication technology (ICACT). IEEE 2016, 478–483 (2016)

  37. Li, Y., Xia, Y.: Auto-scaling web applications in hybrid cloud based on docker. In: 5th International conference on computer science and network technology (ICCSNT). IEEE 2016, 75–79 (2016)

  38. Ye, T., Guangtao, X., Shiyou, Q., Minglu, L.: An auto-scaling framework for containerized elastic applications. In: 3rd international conference on big data computing and communications (BIGCOM). IEEE 2017, 422–430 (2017)

  39. Ciptaningtyas, H. T., Santoso, B. J., Razi, M. F.: Resource elasticity controller for docker-based web applications. In: 2017 11th International Conference on Information & Communication Technology and System (ICTS), IEEE, (2017), pp. 193–196

  40. Baresi, L., Guinea, S., Leva, A., Quattrocchi, G.: A discrete-time feedback controller for containerized cloud applications. In: Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, (2016), pp. 217–228

  41. Wu, S., Zhang, D., Yan, B., Guo, F., Sheng, D.: Auto-scaling web application in docker based on gray prediction. In: 2018 International Conference on Network, Communication, Computer Engineering (NCCE 2018), Atlantis Press, (2018)

  42. Taherizadeh, S., Stankovski, V.: Dynamic multi-level auto-scaling rules for containerized applications. Comput. J. 62(2), 174–197 (2019)

    Article  Google Scholar 

  43. Zhang, F., Tang, X., Li, X., Khan, S.U., Li, Z.: Quantifying cloud elasticity with container-based autoscaling. Fut. Gener. Comput. Syst. 98, 672–681 (2019)

    Article  Google Scholar 

  44. Borkowski, M., Schulte, S., Hochreiner, C.: Predicting cloud resource utilization. In: Proceedings of the 9th International Conference on Utility and Cloud Computing, (2016), pp. 37–42

  45. Kim, W.-Y., Lee, J.-S., Huh, E.-N.: Study on proactive auto scaling for instance through the prediction of network traffic on the container environment. In: Proceedings of the 11th International Conference on Ubiquitous Information Management and Communication, (2017), pp. 1–8

  46. Erradi, A., Iqbal, W., Mahmood, A., Bouguettaya, A.: Web application resource requirements estimation based on the workload latent features. IEEE Trans. Serv. Comput.

  47. Dataset of Complutense University of Madrid. https://goo.gl/Jez9Kg. accessed 28 Nov 2017

  48. Messias, V.R., Estrella, J.C., Ehlers, R., Santana, M.J., Santana, R.C., Reiff-Marganiec, S.: Combining time series prediction models using genetic algorithm to autoscaling web applications hosted in the cloud infrastructure. Neural Comput. Appl. 27(8), 2383–2406 (2016)

    Article  Google Scholar 

  49. Cherkassky, V., Ma, Y.: Practical selection of SVM parameters and noise estimation for SVM regression. Neural Netw. 17(1), 113–126 (2004)

    Article  Google Scholar 

  50. Bauer, A., Grohmann, J., Herbst, N., Kounev, S.: On the value of service demand estimation for auto-scaling. In: International Conference on Measurement, Modelling and Evaluation of Computing Systems, Springer, (2018), pp. 142–156

Download references

Acknowledgements

This research was supported/partially supported by [Visvesvaraya Ph.D. scheme for Electronics and IT, Ministry of Electronics and Information Technology, Government of India]. We thank our colleagues from [Motilal Nehru National Institute of Technology Allahabad, Prayagraj, India] who provided insight and expertise that greatly assisted the research, although they may not agree with all of the interpretations/conclusions of this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mahendra Pratap Yadav.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Yadav, M.P., Rohit & Yadav, D.K. Maintaining container sustainability through machine learning. Cluster Comput 24, 3725–3750 (2021). https://doi.org/10.1007/s10586-021-03359-4

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-021-03359-4

Keywords

Navigation