Abstract
Control theory has proven to be a practical approach for the design and implementation of controllers, which does not inherit the problems of non-control theoretic controllers due to its strong mathematical background. State-of-the-art auto-scaling controllers suffer from one or more of the following limitations: (1) lack of a reliable performance model, (2) using a performance model with low scalability, tractability, or fidelity, (3) being application- or architecture-specific leading to low extendability, and (4) no guarantee on their efficiency. Consequently, in this article, we strive to mitigate these problems by leveraging an adaptive controller, which is composed of a neural network as the performance model and a Proportional-Integral-Derivative (PID) controller as the scaling engine. More specifically, we design, implement, and analyze different flavours of these adaptive and non-adaptive controllers, and we compare and contrast them against each other to find the most suitable one for managing containerized cloud software systems at runtime. The controller’s objective is to maintain the response time of the controlled software system in a pre-defined range, and meeting the Service-level Agreements, while leading to efficient resource provisioning.
- Alma Y. Alanis, Jorge D. Rios, Jorge Rivera, Nancy Arana-Daniel, and Carlos Lopez-Franco. 2015. Real-time discrete neural control applied to a Linear Induction Motor. Neurocomputing 164 (2015), 240–251.Google Scholar
Digital Library
- Hanieh Alipour and Yan Liu. 2017. Online machine learning for cloud resource provisioning of microservice backend systems. In Proceedings of the IEEE International Conference on Big Data (Big Data’17). IEEE, 2433–2441.Google Scholar
Cross Ref
- Kiam Heong Ang, Gregory Chong, and Yun Li. 2005. PID control system analysis, design, and technology. IEEE Trans. Control Syst. Technol. 13, 4 (2005), 559–576.Google Scholar
Cross Ref
- Hamid Arabnejad, Claus Pahl, Pooyan Jamshidi, and Giovani Estrada. 2017. A comparison of reinforcement learning techniques for fuzzy cloud auto-scaling. In Proceedings of the 17th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing. IEEE Press, 64–73.Google Scholar
Digital Library
- Davide Arcelli and Vittorio Cortellessa. 2016. Challenges in applying control theory to software performance engineering for adaptive systems. In Companion Publication for ACM/SPEC on International Conference on Performance Engineering. ACM, New York, NY, 35–40.Google Scholar
Digital Library
- D. Arcelli, V. Cortellessa, A. Filieri, and A. Leva. 2015. Control theory for model-based performance-driven software adaptation. In Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures (QoSA’15). 11–20.Google Scholar
- M. Arlitt and T. Jin. 2000. A workload characterization study of the 1998 World Cup website. Netwrk. Mag. Global Internetwkg. 14, 3 (2000), 30–37.Google Scholar
Digital Library
- Michael Armbrust, Armando Fox, Rean Griffith, Anthony D. Joseph, Randy Katz, Andy Konwinski, Gunho Lee, David Patterson, Ariel Rabkin, Ion Stoica et al. 2010. A view of cloud computing. Commun. ACM 53, 4 (2010), 50–58.Google Scholar
Digital Library
- L. Baresi and S. Guinea. 2013. Event-based multi-level service monitoring. In Proceedings of the IEEE 20th International Conference on Web Services. 83–90.Google Scholar
- Luciano Baresi, Sam Guinea, Alberto Leva, and Giovanni Quattrocchi. 2016. A discrete-time feedback controller for containerized cloud applications. In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE’16). Association for Computing Machinery, New York, NY, USA, 217–228. DOI:https://doi.org/10.1145/2950290.2950328Google Scholar
Digital Library
- C. Barna, M. Fokaefs, M. Litoiu, M. Shtern, and J. Wigglesworth. 2016. Cloud adaptation with control theory in industrial clouds. In Proceedings of the IEEE International Conference on Cloud Engineering Workshop (IC2EW’16). 231–238.Google Scholar
- Cornel Barna, Hamzeh Khazaei, Marios Fokaefs, and Marin Litoiu. 2017. Delivering elastic containerized cloud applications to enable devops. In Proceedings of the IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS’17). 65–75.Google Scholar
Digital Library
- Cornel Barna, Hamzeh Khazaei, Marios Fokaefs, and Marin Litoiu. 2017. A DevOps architecture for continuous delivery of containerized big data applications. In Proceedings of the International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS’17). IEEE.Google Scholar
- Cornel Barna, Marin Litoiu, Marios Fokaefs, Mark Shtern, and Joe Wigglesworth. 2018. Runtime performance management for cloud applications with adaptive controllers. In Proceedings of the ACM/SPEC International Conference on Performance Engineering. ACM, New York, NY, 176–183.Google Scholar
Digital Library
- Xiaolin Chang, Ruofan Xia, Jogesh K. Muppala, Kishor S. Trivedi, and Jiqiang Liu. 2016. Effective modeling approach for IaaS data center performance analysis under heterogeneous workload. IEEE Trans. Cloud Comput. 6, 4 (2016), 991–1003.Google Scholar
Cross Ref
- S. Chen and S. A. Billings. 1992. Neural networks for nonlinear dynamic system modelling and identification. Int. J. Control 56, 2 (1992), 319–346.Google Scholar
Cross Ref
- Long Cheng, Weichuan Liu, Zeng Guang Hou, Junzhi Yu, and Min Tan. 2015. Neural-network-based nonlinear model predictive control for piezoelectric actuators. IEEE Trans. Industr. Electron. 62, 12 (2015), 7717–7727.Google Scholar
Cross Ref
- George Cybenko. 1989. Approximation by superpositions of a sigmoidal function. Math. Control, Signals Syst. 2, 4 (1989), 303–314.Google Scholar
Cross Ref
- David Desmeurs, Cristian Klein, Alessandro Vittorio Papadopoulos, and Johan Tordsson. 2015. Event-driven application brownout: Reconciling high utilization and low tail response times. In Proceedings of the International Conference on Cloud and Autonomic Computing. 1–12.Google Scholar
Digital Library
- Docker. 2018. Create a Docker Swarm manager. Retrieved from https://docs.docker.com/swarm/reference/manage/.Google Scholar
- Jonas Durango, Manfred Dellkrantz, Martina Maggio, Cristian Klein, Alessandro Vittorio Papadopoulos, Francisco Hernandez-Rodriguez, Erik Elmroth, and Karl Erik Arzen. 2014. Control-theoretical load-balancing for cloud applications with brownout. In Proceedings of the IEEE Conference on Decision and Control. 5320–5327.Google Scholar
Cross Ref
- S. Farokhi, P. Jamshidi, D. Lucanin, and I. Brandic. 2015. Performance-based vertical memory elasticity. In Proceedings of the IEEE International Conference on Autonomic Computing. 151–152.Google Scholar
- Antonio Filieri, Martina Maggio, Konstantinos Angelopoulos, Nicolás D’Ippolito, Ilias Gerostathopoulos, Andreas Berndt Hempel, Henry Hoffmann, Pooyan Jamshidi, Evangelia Kalyvianaki, Cristian Klein, Filip Krikava, Sasa Misailovic, Alessandro V. Papadopoulos, Suprio Ray, Amir M. Sharifloo, Stepan Shevtsov, Mateusz Ujma, and Thomas Vogel. 2017. Control strategies for self-adaptive software systems. ACM Trans. Auton. Adapt. Syst. 11, 4 (2017), 1–31.Google Scholar
Digital Library
- M. Fokaefs, Y. Rouf, C. Barna, and M. Litoiu. 2017. Evaluating adaptation methods for cloud applications: An empirical study. In Proceedings of the IEEE 10th International Conference on Cloud Computing (CLOUD’17). 632–639.Google Scholar
- Ian Gergin, Bradley Simmons, and Marin Litoiu. 2014. A decentralized autonomic architecture for performance control in the cloud. Proceedings of the IEEE International Conference on Cloud Engineering (IC2E’14). 574–579.Google Scholar
Digital Library
- Ian Goodfellow, Yoshua Bengio, Aaron Courville, and Yoshua Bengio. 2016. Deep Learning. Vol. 1. MIT Press, Cambridge, MA.Google Scholar
Digital Library
- Google. 2020. Benchmarks for Linux VM instances. Retrieved from https://cloud.google.com/compute/docs/benchmarks-linux.Google Scholar
- Google, Inc.2019. Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops. Retrieved from http://kubernetes.io/.Google Scholar
- Beitao Guo, Hongyi Liu, Zhong Luo, and Fei Wang. 2009. Adaptive PID controller based on BP neural network. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI’09). 148–150.Google Scholar
Digital Library
- Heyman, Jonatan and Bystrom, Carl and Hamren, Joakim and Heyman, Hugo. 2019. Locust—A modern load testing framework. Retrieved from http://locust.io/.Google Scholar
- Kurt Hornik, Maxwell Stinchcombe, Halbert White et al. 1989. Multilayer feedforward networks are universal approximators. Neural Netw. 2, 5 (1989), 359–366.Google Scholar
Cross Ref
- Emilio Incerto, Mirco Tribastone, and Catia Trubiani. 2017. Software performance self-adaptation through efficient model predictive control. In Proceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE’17). 485–496.Google Scholar
Digital Library
- Emilio Incerto, Mirco Tribastone, and Catia Trubiani. 2018. Combined vertical and horizontal auto-scaling through model predictive control. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 11014 LNCS (2018), 147–159.Google Scholar
- Engin Ipek, Bronis R. De Supinski, Martin Schulz, and Sally A. McKee. 2005. An approach to performance prediction for parallel applications. In Proceedings of the European Conference on Parallel Processing. Springer, 196–205.Google Scholar
- Pooyan Jamshidi, Amir Sharifloo, Claus Pahl, Hamid Arabnejad, Andreas Metzger, and Giovani Estrada. 2016. Fuzzy self-learning controllers for elasticity management in dynamic cloud architectures. In Proceedings of the 12th International ACM SIGSOFT Conference on Quality of Software Architectures (QoSA’16). IEEE, 70–79.Google Scholar
Cross Ref
- Hamzeh Khazaei, Jelena Misic, and Vojislav Misic. 2013. A fine-grained performance model of cloud computing centers. IEEE Trans. Parallel Distrib. Syst. 24, 11 (Nov. 2013), 2138–2147.Google Scholar
Digital Library
- Hamzeh Khazaei, Jelena Misic, Vojislav Misic, and S. Rashwand. 2013. Analysis of a pool management scheme for cloud computing centers. IEEE Trans. Parallel Distrib. Syst. 24, 5 (May 2013), 849–861.Google Scholar
Digital Library
- Hamzeh Khazaei, Jelena Misic, and Vojislave B. Misic. 2011. Modelling of cloud computing centers using M/G/m queues. In Proceedings of the 31st International Conference on Distributed Computing Systems Workshops. IEEE, 87–92.Google Scholar
- Hamzeh Khazaei, Jelena Misic, and Vojislav B. Misic. 2011. Performance analysis of cloud computing centers using m/g/m/m+ r queuing systems. IEEE Trans. Parallel Distrib. Syst. 23, 5 (2011), 936–943.Google Scholar
Digital Library
- Hamzeh Khazaei, Jelena Misic, and Vojislav B. Misic. 2012. A fine-grained performance model of cloud computing centers. IEEE Trans. Parallel Distrib. Syst. 24, 11 (2012), 2138–2147.Google Scholar
Digital Library
- Hamzeh Khazaei, Jelena Misic, and Vojislav B. Misic. 2012. Performance of cloud centers with high degree of virtualization under batch task arrivals. IEEE Trans. Parallel Distrib. Syst. 24, 12 (2012), 2429–2438.Google Scholar
Digital Library
- Diederik P. Kingma and Jimmy Ba. 2014. Adam: A Method for Stochastic Optimization. Retrieved from arxiv:https://cs.LG/1412.6980.Google Scholar
- Cristian Klein, Martina Maggio, Karl-Erik Årzén, and Francisco Hernández-Rodriguez. 2014. Brownout: Building more robust cloud applications. In Proceedings of the 36th International Conference on Software Engineering (ICSE’14). 700–711.Google Scholar
Digital Library
- Harold C. Lim, Shivnath Babu, Jeffrey S. Chase, and Sujay S. Parekh. 2009. Automated control in cloud computing: Challenges and opportunities. In Proceedings of the 1st Workshop on Automated Control for Datacenters and Clouds (ACDC’09). ACM, New York, NY, 13–18.Google Scholar
- Martina Maggio, Cristian Klein, and Karl Erik Årzén. 2014. Control strategies for predictable brownouts in cloud computing. IFAC Proc. Vol. (IFAC-PapersOnline) 19 (2014), 689–694.Google Scholar
Cross Ref
- Saif U. R. Malik, Samee U. Khan, and Sudarshan K. Srinivasan. 2013. Modeling and analysis of state-of-the-art VM-based cloud management platforms. IEEE Trans. Cloud Comput. 1, 1 (2013), 1–1.Google Scholar
Cross Ref
- Dirk Merkel. 2014. Docker: Lightweight linux containers for consistent development and deployment. Linux J. 2014, 239 (2014), 2.Google Scholar
Digital Library
- Mesosphere, Inc.2018. Marathon Recipes. Retrieved from https://mesosphere.github.io. https://mesosphere.github.io/marathon/docs/recipes.Google Scholar
- Tommi Nylander, Cristian Klein, Karl Erik Årzén, and Martina Maggio. 2018. BrownoutCC: Cascaded control for bounding the response times of cloud applications. In Proceedings of the American Control Conference. 3354–3361.Google Scholar
Cross Ref
- Fernando Ornelas-Tellez, J. Jesus Rico-Melgoza, Angel E. Villafuerte, and Febe J. Zavala-Mendoza. 2019. Neural Networks: A Methodology for Modeling and Control Design of Dynamical Systems. Elsevier, 21–38.Google Scholar
- Alessandro Vittorio Papadopoulos, Cristian Klein, Martina Maggio, Jonas Dürango, Manfred Dellkrantz, Francisco Hernández-Rodriguez, Erik Elmroth, and Karl Erik Årzén. 2016. Control-based load-balancing techniques: Analysis and performance evaluation via a randomized optimization approach. Control Eng. Practice 52 (2016), 24–34.Google Scholar
Cross Ref
- Haiyang Qian, Deep Medhi, and Kishor Trivedi. 2011. A hierarchical model to evaluate quality of experience of online services hosted by cloud computing. In Proceedings of the 12th IFIP/IEEE International Symposium on Integrated Network Management (IM’11). IEEE, 105–112.Google Scholar
- Shashank Shekhar, Hamzah Abdel-Aziz, Anirban Bhattacharjee, Aniruddha Gokhale, and Xenofon Koutsoukos. 2018. Performance interference-aware vertical elasticity for cloud-hosted latency-sensitive applications. In Proceedings of the IEEE 11th International Conference on Cloud Computing (CLOUD’18). IEEE, 82–89.Google Scholar
Cross Ref
- Stepan Shevtsov, Mihaly Berekmeri, Danny Weyns, and Martina Maggio. 2017. Control-theoretical software adaptation: A systematic literature review. IEEE Trans. Softw. Eng. 44, 8 (2017), 784–810.Google Scholar
Digital Library
- Stepan Shevtsov, Mihaly Berekmeri, Danny Weyns, and Martina Maggio. 2018. Control-theoretical software adaptation: A systematic literature review. IEEE Trans. Softw. Eng. 44, 8 (2018), 784–810.Google Scholar
Digital Library
- Bartlomiej Sniezynski, Piotr Nawrocki, Michal Wilk, Marcin Jarzab, and Krzysztof Zielinski. 2019. VM reservation plan adaptation using machine learning in cloud computing. J. Grid Comput. 17, 4 (2019), 797–812. https://doi.org/10.1007/s10723-019-09487-xGoogle Scholar
Digital Library
- Giovanni Toffetti, Sandro Brunner, Martin Blöchlinger, Josef Spillner, and Thomas Michael Bohnert. 2017. Self-managing cloud-native applications: Design, implementation, and experience. Future Gen. Comput. Syst. 72 (2017), 165–179.Google Scholar
Cross Ref
- Amjad Ullah, Jingpeng Li, Yindong Shen, and Amir Hussain. 2018. A control theoretical view of cloud elasticity: Taxonomy, survey and challenges. Cluster Comput. 21, 4 (2018), 1735–1764.Google Scholar
Digital Library
- W3Techs. 2019. Usage statistics and market share of WordPress. Retrieved from https://w3techs.com/technologies/details/cm-wordpress/all/all.Google Scholar
- Kaiqi Xiong and Harry Perros. 2009. Service performance and analysis in cloud computing. In Proceedings of the Congress on Services-I. IEEE, 693–700.Google Scholar
Digital Library
Index Terms
Optimizing the Performance of Containerized Cloud Software Systems Using Adaptive PID Controllers
Recommendations
Adaptive PID controller based on Q ‐learning algorithm
An adaptive proportional–integral–derivative (PID) controller based on Q ‐learning algorithm is proposed to balance the cart–pole system in simulation environment. This controller was trained using Q ‐learning algorithm and implemented the learned Q ‐...
Optimum PID controller tuning for AVR system using adaptive tabu search
ICCOMP'08: Proceedings of the 12th WSEAS international conference on ComputersIn this paper contend with the determination of offline, optimal proportional-integral-derivative (PID) controller parameters of an automatic voltage regulator (AVR) system using Adaptive Tabu Search (ATS) algorithm is presented. Parameter of this PID ...
Research on Application of Fuzzy PID Controller in Two-Container Water Tank System Control
MVHI '10: Proceedings of the 2010 International Conference on Machine Vision and Human-machine InterfaceSince the liquid level control system of the two-container water tank is characterized by nonlinearity and timing-varying parameter, the paper, based on analysis of the limitation of conventional PID controller, adopts fuzzy logic and applies the ...






Comments