SLA AWARE REACTIVE AUTOSCALING FOR CONTAINERIZED CLOUD APPLICATIONS USING APPLICATION AND INFRASTRUCTURE METRICS
Keywords:
cloud computing, elasticity, auto-scaling, docker, container, reactiveAbstract
Cloud computing is an online technology to provides computing resources (machines) to
end-users on demand for running their applications over the internet. Applications hosted in a cloud
computing environment may face fluctuating workloads. To deal with such fluctuating workloads
cloud resources are allocated automatically to applications. Allocating cloud resources to applications
in an automatic manner is known as Elasticity which can be implemented using auto-scaling. Autoscaling can be implemented as a reactive or proactive approach. Cloud providers use Virtual Machine
based or Container-based virtualization to host applications. Some of the factors that affect the
availability of the application are computing resources and users accessing those applications. It is
required to allocate/deallocate resources at the right moment, else failing to it can lead to SLA
Violation which can result in cloud service user dissatisfaction, negative review for the cloud service
provider, etc. During the literature study, it is found that reactive auto-scaling decisions are taken
based on CPU utilization threshold. In this paper, we have proposed a reactive auto-scaling algorithm
that uses application level (response time) and infrastructure level (CPU utilization) metrics together.
This work has been evaluated and validated using our custom microservice-based application. The
result shows that our approach improves 4% of SLA achievement and 3% in request processing
during a simulation duration of 15 minutes.
References
H. Mezni, S. Aridhi, and A. Hadjali, “THE UNCERTAIN CLOUD: STATE OF THE
ART AND RESEARCH CHALLENGES,” Int. J. Approx. Reason., vol. 1, pp. 1–14,
M. K. Hussein, M. H. Mousa, and M. A. Alqarni, “A placement architecture for a
container as a service (CaaS) in a cloud environment,” J. Cloud Comput., vol. 8, no. 1,
M. P. Yadav, Rohit, and D. K. Yadav, “Maintaining container sustainability through
machine learning,” Cluster Comput., vol. 24, no. 4, pp. 3725–3750, 2021.
E. F. Coutinho, F. R. de Carvalho Sousa, P. A. L. Rego, D. G. Gomes, and J. N. de
Souza, “Elasticity in cloud computing: a survey,” Ann. des Telecommun. Telecommun.,
vol. 70, no. 7–8, pp. 289–309, 2015.
M. Abdullah, W. Iqbal, A. Erradi, and F. Bukhari, “Learning predictive autoscaling
policies for cloud-hosted microservices using trace-driven modeling,” in Proceedings
of the International Conference on Cloud Computing Technology and Science,
CloudCom, 2019, vol. 2019-Decem, no. October, pp. 119–126.
L. Zhang, Y. Zhang, P. Jamshidi, L. Xu, and C. Pahl, “Service workload patterns for
Qos-driven cloud resource management,” J. Cloud Comput., vol. 4, no. 1, pp. 1–21,
M. S. Aslanpour and S. E. Dashti, “Proactive Auto-Scaling Algorithm (PASA) for
Cloud Application,” Int. J. Grid High Perform. Comput., vol. 9, no. 3, pp. 1–16, 2017.
J. Herrera and G. Molto, “Towards Bio-inspired Auto-Scaling Algorithms: An
Elasticity Approach for Container Orchestration Platforms,” IEEE Access, vol. 8, no.
, pp. 52139–52150, 2020.
X. Wan, X. Guan, T. Wang, G. Bai, and B. Y. Choi, “Application deployment using
Microservice and Docker containers: Framework and optimization,” J. Netw. Comput.
Appl., vol. 119, no. July, pp. 97–109, 2018.
R. Peinl, F. Holzschuher, and F. Pfitzer, “Docker Cluster Management for the Cloud -
Survey Results and Own Solution,” J. Grid Comput., vol. 14, no. 2, pp. 265–282,
P. Prakash and R. Suresh, “Comparative analysis on Docker and virtual machine in
cloud computing,” Int. J. Pure Appl. Math., vol. 117, no. 7 Special Issue, pp. 175–184,
M. P. Yadav, N. Pal, and D. K. Yadav, “Resource provisioning for containerized
applications,” Cluster Comput., vol. 5, 2021.
M. S. Alexiou and E. G. M. Petrakis, “Elixir: An Agent for Supporting Elasticity in
Docker Swarm,” Adv. Intell. Syst. Comput., vol. 1151 AISC, pp. 1114–1125, 2020



