AI Chat Paper
Note: Please note that the following content is generated by AMiner AI. SciOpen does not take any responsibility related to this content.
{{lang === 'zh_CN' ? '文章概述' : 'Summary'}}
{{lang === 'en_US' ? '中' : 'Eng'}}
Chat more with AI
PDF (7.6 MB)
Collect
Submit Manuscript AI Chat Paper
Show Outline
Outline
Show full outline
Hide outline
Outline
Show full outline
Hide outline
Open Access

Extending OpenStack Monasca for Predictive Elasticity Control

Scuola Normale Superiore, Pisa 56126, Italy
the Real-Time Systems Laboratory (RETIS), Telecommunications, Computer Engineering, and Photonics Institute (TeCIP), Scuola Superiore Sant’Anna, Pisa 56127, Italy
Department of Computer Science, University of Pisa, Pisa 56127, Italy
National Research Council, Pisa56127, Italy
Show Author Information

Abstract

Traditional auto-scaling approaches are conceived as reactive automations, typically triggered when predefined thresholds are breached by resource consumption metrics. Managing such rules at scale is cumbersome, especially when resources require non-negligible time to be instantiated. This paper introduces an architecture for predictive cloud operations, which enables orchestrators to apply time-series forecasting techniques to estimate the evolution of relevant metrics and take decisions based on the predicted state of the system. In this way, they can anticipate load peaks and trigger appropriate scaling actions in advance, such that new resources are available when needed. The proposed architecture is implemented in OpenStack, extending the monitoring capabilities of Monasca by injecting short-term forecasts of standard metrics. We use our architecture to implement predictive scaling policies leveraging on linear regression, autoregressive integrated moving average, feed-forward, and recurrent neural networks (RNN). Then, we evaluate their performance on a synthetic workload, comparing them to those of a traditional policy. To assess the ability of the different models to generalize to unseen patterns, we also evaluate them on traces from a real content delivery network (CDN) workload. In particular, the RNN model exhibites the best overall performance in terms of prediction error, observed client-side response latency, and forecasting overhead. The implementation of our architecture is open-source.

References

[1]
R. Buyya, J. Broberg, and A. M. Goscinski, Cloud Computing : Principles and Paradigms. Hoboken, NJ, USA: John Wiley & Sons, 2011.
[2]
S. Brunner, M. Blöchlinger, G. Toffetti, J. Spillner, and T. M. Bohnert, Experimental evaluation of the cloud-native application design, in Proc. 2015 IEEE/ACM 8 th Int. Conf. Utility and Cloud Computing (UCC), Limassol, Cyprus, 2015, pp. 488–493.
[3]
Q. Rebjock, V. Flunkert, T. Januschowski, L. Callot, and J. Castellon, A simple and effective predictive resource scaling heuristic for large-scale cloud applications, presented at 2nd Int. Workshop on Applied AI for Database Systems and Applications, Online Event, Tokyo, Japan, 2020.
[4]
W. Vogels, A new era of DevOps, powered by machine learning, https://www.allthingsdistributed.com/2021/05/devops-powered-by-machine-learning.html, 2021.
[5]
S. Horsfield and A. Sethi, Introducing native support for predictive scaling with Amazon EC2 auto scaling, https://aws.amazon.com/blogs/compute/introducing-native-support-for-predictive-scaling-with-amazon-ec2-auto-scaling, 2021.
[6]
A. Sethi, Using EC2 auto scaling predictive scaling policies with blue/green deployments, https://aws.amazon.com/blogs/compute/retaining-metrics-across-blue-green-deployment-for-predictive-scaling, 2021.
[7]

S. Tuli, S. S. Gill, M. Xu, P. Garraghan, R. Bahsoon, S. Dustdar, R. Sakellariou, O. Rana, R. Buyya, G. Casale, et al., Hunter: AI based holistic resource management for sustainable cloud computing, J. Systems and Software, vol. 184, p. 111124, 2022.

[8]
OpenStack, Welcome to Monasca’s documentation, https://docs.openstack.org/monasca, 2022.
[9]
T. Hastie, R. Tibshirani, and J. Friedman, The Elements of Statistical Learning : Data Mining, Inference, and Prediction. New York, NY, USA: Springer, 2009.
[10]
G. E. Box, G. M. Jenkins, and G. C. Reinsel, Time Series Analysis : Forecasting and Control. Hoboken, NJ, USA: John Wiley & Sons, 2018.
[11]
G. Lanciano, F. Galli, T. Cucinotta, D. Bacciu, and A. Passarella, Predictive auto-scaling with OpenStack monasca, in Proc. 14 th IEEE/ACM Int. Conf. Utility and Cloud Computing, Leicester, UK, 2021, pp. 1–10.
[12]
M. Leznik, R. G. Leiva, T. L. Duc, S. Svorobej, L. Närvä, M. N. Mariño, P. Willis, K. M. Giannoutakis, R. Loomba, H. Humanes, et al., RECAP artificial data traces, https://zenodo.org/record/3458559, 2019.
[13]
NFV Industry Specification Group, Network functions virtualisation, Introductory White Paper, http://portal.etsi.org/NFV/NFVWhitePaper.pdf, 2012.
[14]
N. Roy, A. Dubey, and A. Gokhale, Efficient autoscaling in the cloud using predictive models for workload forecasting, in Proc. 2011 IEEE 4 th Int. Conf. Cloud Computing, Washington, DC, USA, 2011, pp. 500–507.
[15]

S. Abdelwahed, J. Bai, R. Su, and N. Kandasamy, On the application of predictive control techniques for adaptive performance management of computing systems, IEEE Trans. Netw. Serv. Manag., vol. 6, no. 4, pp. 212–225, 2009.

[16]
V. A. F. Almeida, Capacity planning for web services techniques and methodology, in Performance Evaluation of Complex Systems : Techniques and Tools, M. C. Calzarossa and S. Tucci, eds. Berlin, Germany: Springer, 2002, pp. 142–157.
[17]

S. Islam, J. Keung, K. Lee, and A. Liu, Empirical prediction models for adaptive resource provisioning in the cloud, Future Gener. Comput. Syst., vol. 28, no. 1, pp. 155–162, 2012.

[18]
TPC, TPC-W benchmark, http://www.tpc.org/tpcw/, 2021.
[19]
M. Borkowski, S. Schulte, and C. Hochreiner, Predicting cloud resource utilization, in Proc. 9 th Int. Conf. Utility and Cloud Computing, Shanghai, China, 2016, pp. 37–42.
[20]

W. Iqbal, A. Erradi, M. Abdullah, and A. Mahmood, Predictive auto-scaling of multi-tier applications using performance varying cloud resources, IEEE Trans. Cloud Comput., vol. 10, no. 1, pp. 595–607, 2022.

[21]
P. Kang and P. Lama, Robust resource scaling of containerized microservices with probabilistic machine learning, in Proc. 2020 IEEE/ACM 13 th Int. Conf. Utility and Cloud Computing (UCC), Leicester, UK, 2020, pp. 122–131.
[22]
A. Bashar, Autonomic scaling of cloud computing resources using BN-based prediction models, in Proc. 2013 IEEE 2 nd Int. Conf. Cloud Networking (CloudNet), San Francisco, CA, USA, 2014, pp. 200–204.
[23]
H. Tariq, H. Al-Sahaf, and I. Welch, Modelling and prediction of resource utilization of hadoop clusters: A machine learning approach, in Proc. 12 th IEEE/ACM Int. Conf. Utility and Cloud Computing, Auckland, New Zealand, 2019, pp. 93–100.
[24]
L. Ju, P. Singh, and S. Toor, Proactive autoscaling for edge computing systems with kubernetes, in Proc. 14 th IEEE/ACM Int. Conf. Utility and Cloud Computing Companion, Leicester, UK, 2021, pp. 1–8.
[25]
E. Cortez, A. Bonde, A. Muzio, M. Russinovich, M. Fontoura, and R. Bianchini, Resource central: Understanding and predicting workloads for improved resource management in large cloud platforms, in Proc. 26 th Symp. Operating Systems Principles, Shanghai, China, 2017, pp. 153–167.
[26]

J. Kumar, A. K. Singh, and R. Buyya, Self directed learning based workload forecasting model for cloud resource management, Inf. Sci., vol. 543, pp. 345–366, 2021.

[27]

R. N. Calheiros, E. Masoumi, R. Ranjan, and R. Buyya, Workload prediction using ARIMA model and its impact on cloud applications’ QoS, IEEE Trans. Cloud Comput., vol. 3, no. 4, pp. 449–458, 2015.

[28]
I. K. Kim, W. Wang, Y. Qi, and M. Humphrey, CloudInsight: Utilizing a council of experts to predict future cloud application workloads, in Proc. 2018 IEEE 11 th Int. Conf. Cloud Computing (CLOUD), San Francisco, CA, USA, 2018, pp. 41–48.
[29]
V. K. Jayakumar, J. Lee, I. K. Kim, and W. Wang, A self-optimized generic workload prediction framework for cloud computing, in Proc. 2020 IEEE Int. Parallel and Distributed Processing Symp. (IPDPS), New Orleans, LA, USA, 2020, pp. 779–788.
[30]
C. H. Z. Nicodemus, C. Boeres, and V. E. F. Rebello, Managing vertical memory elasticity in containers, in Proc. 2020 IEEE/ACM 13 th Int. Conf. Utility and Cloud Computing (UCC), Leicester, UK, 2020, pp. 132–142.
[31]
C. Makaya, D. Freimuth, D. Wood, and S. Calo, Policy-based NFV management and orchestration, in Proc. 2015 IEEE Conf. Network Function Virtualization and Software Defined Network (NFV-SDN), San Francisco, CA, USA, 2016, pp. 128–134.
[32]
X. Fei, F. Liu, H. Xu, and H. Jin, Adaptive VNF scaling and flow routing with proactive demand prediction, in Proc. IEEE Conf. Computer Communications, Honolulu, HI, USA, 2018, pp. 486–494.
[33]
S. Rahman, T. Ahmed, M. Huynh, M. Tornatore, and B. Mukherjee, Auto-scaling VNFs using machine learning to improve QoS and reduce cost, in Proc. 2018 IEEE Int. Conf. Communications (ICC), Kansas City, MO, USA, 2018, pp. 1–6.
[34]
S. S. Rangapuram, M. Seeger, J. Gasthaus, L. Stella, Y. Wang, and T. Januschowski, Deep state space models for time series forecasting, in Proc. 32 nd Int. Conf. Neural Information Processing Systems, Montreal, Canada, 2018, pp. 7796–7805.
[35]
N. Laptev, J. Yosinski, L. E. Li, and S. Smyl, Time-series extreme event forecasting with neural networks at Uber, presented at ICML 2017 Time Series Workshop, Sydney, Australia, 2017.
[36]

H. I. Fawaz, G. Forestier, J. Weber, L. Idoumghar, and P. A. Muller, Deep learning for time series classification: A review, Data Min. Knowl. Discov., vol. 33, no. 4, pp. 917–963, 2019.

[37]
P. Malhotra, V. Tv, L. Vig, P. Agarwal, and G. Shroff, TimeNet: Pre-trained deep recurrent neural network for time series classification, presented at 25th European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning, Bruges, Belgium, 2017.
[38]
Z. Zaman, S. Rahman, and M. Naznin, Novel approaches for VNF requirement prediction using DNN and LSTM, in Proc. 2019 IEEE Global Communications Conference (GLOBECOM), Waikoloa, HI, USA, 2020, pp. 1–6.
[39]
I. Sutskever, O. Vinyals, and Q. V. Le, Sequence to sequence learning with neural networks, in Proc. 27 th Int. Conf. Neural Information Processing Systems, Montreal, Canada, 2014, pp. 3104–3112.
[40]
T. Cucinotta, G. Lanciano, A. Ritacco, F. Brau, F. Galli, V. Iannino, M. Vannucci, A. Artale, J. Barata, and E. Sposato, Forecasting operation metrics for virtualized network functions, in Proc. 2021 IEEE/ACM 21 st Int. Symp. on Cluster, Cloud and Internet Comp., Melbourne, Australia, 2021, pp. 596–605.
[41]

R. Mijumbi, S. Hasija, S. Davy, A. Davy, B. Jennings, and R. Boutaba, Topology-aware prediction of virtual network function resource requirements, IEEE Trans. Netw. Serv. Manag., vol. 14, no. 1, pp. 106–120, 2017.

[42]

D. Bacciu, F. Errica, A. Micheli, and M. Podda, A gentle introduction to deep learning for graphs, Neural Netw., vol. 129, pp. 203–221, 2020.

[43]
G. A. Carella, M. Pauls, L. Grebe, and T. Magedanz, An extensible autoscaling engine (AE) for software-based network functions, in Proc. 2016 IEEE Conf. Network Function Virtualization and Software Defined Networks (NFC-SDN), Palo Alto, CA, USA, 2016, pp. 219–225.
[44]
P. Tang, F. Li, W. Zhou, W. Hu, and L. Yang, Efficient auto-scaling approach in the telco cloud using self-learning algorithm, in Proc. 2015 IEEE Global Communications Conference (GLOBECOM), San Diego, CA, USA, 2015, pp. 1–6.
[45]
Y. Xiao, Q. Zhang, F. Liu, J. Wang, M. Zhao, Z. Zhang, and J. Zhang, NFVdeep: Adaptive online service function chain deployment with deep reinforcement learning, in Proc. 2019 IEEE/ACM 27 th Int. Symp. Quality of Service (IWQoS), Phoenix, AZ, USA, 2019, pp. 1–10.
[46]
C. H. T. Arteaga, F. Rissoi, and O. M. C. Rendon, An adaptive scaling mechanism for managing performance variations in network functions virtualization: A case study in an NFV-based EPC, in Proc. 2017 13 th Int. Conf. Network and Service Management, Tokyo, Japan, 2017, pp. 1–7.
[47]
H. Arabnejad, C. Pahl, P. Jamshidi, and G. Estrada, A comparison of reinforcement learning techniques for fuzzy cloud auto-scaling, in Proc. 2017 17 th IEEE/ACM Int. Symp. Cluster, Cloud and Grid Computing, Madrid, Spain, 2017, pp. 64–73.
[48]
A. A. Khaleq and I. Ra, Development of QoS-aware agents with reinforcement learning for autoscaling of microservices on the cloud, in Proc. 2021 IEEE Int. Conf. Autonomic Computing and Self-Organizing Systems Companion, Washington, DC, USA, 2021, pp. 13–19.
[49]
L. Schuler, S. Jamil, and N. Kühl, AI-based resource allocation: Reinforcement learning for adaptive autoscaling in serverless environments, in Proc. 2021 IEEE/ACM 21 st Int. Symp. Cluster, Cloud and Internet Comp., Melbourne, Australia, 2021, pp. 804–811.
[50]
OpenStack, OpenStack compute (nova), https://docs.openstack.org/nova, 2022.
[51]
OpenStack, OpenStack block storage (cinder) documentation, https://docs.openstack.org/cinder, 2022.
[52]
OpenStack, Welcome to glance’s documentation! https://docs.openstack.org/glance, 2022.
[53]
OpenStack, Welcome to neutron’s documentation! https://docs.openstack.org/neutron, 2022.
[54]
OpenStack, Welcome to the Senlin documentation! https://docs.openstack.org/senlin, 2022.
[55]
OpenStack, Welcome to the heat documentation! https://docs.openstack.org/heat, 2022.
[56]
D. Truong and J. Cross, How blizzard entertainment uses autoscaling with overwatch, https://www.openstack.org/videos/summits/denver2019/how-blizzard-entertainment-uses-autoscaling-with-overwatch, 2022.
[57]
OpenStack, Octavia documentation, https://docs.openstack.org/octavia, 2022.
[58]
I. Goodfellow, Y. Bengio, and A. Courville, Deep Learning. Cambridge, MA, USA: MIT Press, 2016.
[59]

S. Hochreiter and J. Schmidhuber, Long short-term memory, Neural Comput., vol. 9, no. 8, pp. 1735–1780, 1997.

[60]
J. F. Kolen and S. C. Kremer, Gradient flow in recurrent nets: The difficulty of learning LongTerm dependencies, in A Field Guide to Dynamical Recurrent Networks, J. F. Kolen and S. C. Kremer, eds. New York, NY, USA: Wiley-IEEE Press, 2001, pp. 237–243.
[61]
M. Turowski and A. Lenk, Vertical scaling capability of OpenStack, in Service-Oriented Computing - ICSOC 2014 Workshops, F. Toumani, B. Pernici, D. Grigori, D. Benslimane, J. Mendling, N. B. Hadj-Alouane, B. Blake, O. Perrin, I. S. Moustafa, and S. Bhiri, eds. Cham, Switzerland: Springer, 2015, pp. 351–362.
[62]
L. Kidane, P. Townend, T. Metsch, and E. Elmroth, When and how to retrain machine learning-based cloud management systems, in Proc. 2022 IEEE Int. Parallel and Distributed Processing Symp. Workshops (IPDPSW), Lyon, France, 2022, pp. 688–698.
[63]
G. Lanciano, Monasca-predictor, https://github.com/giacomolanciano/monasca-predictor, 2022.
[64]

F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Grisel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, et al., Scikit-learn: Machine learning in python, J. Mach. Learn. Res., vol. 12, no. 85, pp. 2825–2830, 2011.

[65]
S. Seabold and J. Perktold, Statsmodels: Econometric and statistical modeling with python, in Proc. 9 th Python in Science Conf., Austin, TX, USA, 2010, pp. 92–96.
[66]
A. Paszke, S. Gross, F. Massa, A. Lerer, J. Bradbury, G. Chanan, T. Killeen, Z. Lin, N. Gimelshein, L. Antiga, et al., Pytorch: An imperative style, high-performance deep learning library, in Proc. 33 rd Conf. Neural Information Processing Systems, Vancouver, Canada, 2019, pp. 8024–8035.
[67]
M. Abadi, A. Agarwal, P. Barham, E. Brevdo, Z. Chen, C. Citro, G. S. Corrado, A. Davis, J. Dean, M. Devin, et al., TensorFlow: Large-scale machine learning on heterogeneous systems, arXiv preprint arXiv: 1603.04467, 2015.
[68]
T. Cucinotta, Distwalk, https://github.com/tomcucinotta/distwalk, 2022.
[69]
OpenStack, Welcome to Kolla’s documentation! https://docs.openstack.org/kolla, 2022.
[70]
G. Lanciano, F. Galli, T. Cucinotta, D. Bacciu, and A. Passarella, Companion repo of the paper extending OpenStack Monasca for predictive elasticity control, https://github.com/giacomolanciano/predictive-elasticity-monasca, 2022.
[71]

M. Resta, A. Monreale, and D. Bacciu, Occlusion-based explanations in deep recurrent models for biomedical signals, Entropy, vol. 23, no. 8, p. 1064, 2021.

[72]

B. Lim, S. Ö. Arik, N. Loeff, and T. Pfister, Temporal fusion transformers for interpretable multi-horizon time series forecasting, Int. J. Forecast., vol. 37, no. 4, pp. 1748–1764, 2021.

[73]

A. Cossu, A. Carta, V. Lomonaco, and D. Bacciu, Continual learning for recurrent neural networks: An empirical evaluation, Neural Netw., vol. 143, pp. 607–627, 2021.

[74]

G. Merlino, R. Dautov, S. Distefano, and D. Bruneo, Enabling workload engineering in edge, fog, and cloud computing through OpenStack-based middleware, ACM Trans. Internet Technol., vol. 19, no. 2, pp. 1–22, 2019.

Big Data Mining and Analytics
Pages 315-339
Cite this article:
Lanciano G, Galli F, Cucinotta T, et al. Extending OpenStack Monasca for Predictive Elasticity Control. Big Data Mining and Analytics, 2024, 7(2): 315-339. https://doi.org/10.26599/BDMA.2023.9020014

251

Views

54

Downloads

0

Crossref

0

Web of Science

0

Scopus

0

CSCD

Altmetrics

Received: 22 October 2022
Revised: 24 April 2023
Accepted: 16 June 2023
Published: 22 April 2024
© The author(s) 2023.

The articles published in this open access journal are distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/).

Return