The University of Southampton
University of Southampton Institutional Repository

PASCAL: An architecture for proactive auto-scaling of distributed services

PASCAL: An architecture for proactive auto-scaling of distributed services
PASCAL: An architecture for proactive auto-scaling of distributed services
One of the main characteristics that today makes cloud services so popular is their ability to be elastic, i.e., they can adapt their provisioning to variable workloads, thus increasing resource utilization and reducing operating costs. At the core of any elastic service lies an automatic scaling mechanism that drives provisioning on the basis of a given strategy. In this paper we propose PASCAL , an architecture for Proactive Auto-SCALing of generic distributed services. PASCAL combines a proactive approach, to forecast incoming workloads, with a profiling system, to estimate required provision. Scale-in/out operations are decided according to an application-specific strategy, which aims at provisioning the minimum number of resources needed to sustain the foreseen workload. The main novelties introduced with PASCAL architecture are: (i) a strategy to proactively auto-scale a distributed stream processing system (namely, Apache Storm) with the aim of load balancing operators through an accurate system performance estimation model, and (ii) a strategy to proactively auto-scale a distributed datastore (namely, Apache Cassandra), focused on how to choose when executing scaling actions on the basis of the time needed for the activation/deactivation of storage nodes so as to have the configuration ready when needed. We provide a prototype implementation of PASCAL for both use cases and, through an experimental evaluation conducted on a private cloud, we validate our approach and demonstrate the effectiveness of the proposed strategies in terms of saved resources and response time.
0167-739X
342-361
Lombardi, Federico
78e41297-64c9-4c1e-9515-8eb59334a795
Muti, Andrea
0d26f288-f95e-4ec1-8dc1-439fdf80c139
Aniello, Leonardo
9846e2e4-1303-4b8b-9092-5d8e9bb514c3
Baldoni, Roberto
6ea5e1cc-92fe-4b9d-9ed3-0b7970553965
Bonomi, Silvia
776b25cf-fe55-4e7e-80cc-32ea9f7e010c
Querzoni, Leonardo
c0eee656-74e7-419d-876c-3cad808683d6
Lombardi, Federico
78e41297-64c9-4c1e-9515-8eb59334a795
Muti, Andrea
0d26f288-f95e-4ec1-8dc1-439fdf80c139
Aniello, Leonardo
9846e2e4-1303-4b8b-9092-5d8e9bb514c3
Baldoni, Roberto
6ea5e1cc-92fe-4b9d-9ed3-0b7970553965
Bonomi, Silvia
776b25cf-fe55-4e7e-80cc-32ea9f7e010c
Querzoni, Leonardo
c0eee656-74e7-419d-876c-3cad808683d6

Lombardi, Federico, Muti, Andrea, Aniello, Leonardo, Baldoni, Roberto, Bonomi, Silvia and Querzoni, Leonardo (2019) PASCAL: An architecture for proactive auto-scaling of distributed services. Future Generation Computer Systems, 98, 342-361. (doi:10.1016/j.future.2019.03.003).

Record type: Article

Abstract

One of the main characteristics that today makes cloud services so popular is their ability to be elastic, i.e., they can adapt their provisioning to variable workloads, thus increasing resource utilization and reducing operating costs. At the core of any elastic service lies an automatic scaling mechanism that drives provisioning on the basis of a given strategy. In this paper we propose PASCAL , an architecture for Proactive Auto-SCALing of generic distributed services. PASCAL combines a proactive approach, to forecast incoming workloads, with a profiling system, to estimate required provision. Scale-in/out operations are decided according to an application-specific strategy, which aims at provisioning the minimum number of resources needed to sustain the foreseen workload. The main novelties introduced with PASCAL architecture are: (i) a strategy to proactively auto-scale a distributed stream processing system (namely, Apache Storm) with the aim of load balancing operators through an accurate system performance estimation model, and (ii) a strategy to proactively auto-scale a distributed datastore (namely, Apache Cassandra), focused on how to choose when executing scaling actions on the basis of the time needed for the activation/deactivation of storage nodes so as to have the configuration ready when needed. We provide a prototype implementation of PASCAL for both use cases and, through an experimental evaluation conducted on a private cloud, we validate our approach and demonstrate the effectiveness of the proposed strategies in terms of saved resources and response time.

Text
pascal-main - Accepted Manuscript
Restricted to Repository staff only until 19 March 2020.
Request a copy

More information

Accepted/In Press date: 3 March 2019
e-pub ahead of print date: 19 March 2019
Published date: September 2019

Identifiers

Local EPrints ID: 429880
URI: https://eprints.soton.ac.uk/id/eprint/429880
ISSN: 0167-739X
PURE UUID: d102535b-3995-4d37-9034-c1b661c54967
ORCID for Federico Lombardi: ORCID iD orcid.org/0000-0001-6463-8722

Catalogue record

Date deposited: 08 Apr 2019 16:30
Last modified: 30 Apr 2019 00:23

Export record

Altmetrics

Contributors

Author: Federico Lombardi ORCID iD
Author: Andrea Muti
Author: Leonardo Aniello
Author: Roberto Baldoni
Author: Silvia Bonomi
Author: Leonardo Querzoni

University divisions

Download statistics

Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.

View more statistics

Atom RSS 1.0 RSS 2.0

Contact ePrints Soton: eprints@soton.ac.uk

ePrints Soton supports OAI 2.0 with a base URL of https://eprints.soton.ac.uk/cgi/oai2

This repository has been built using EPrints software, developed at the University of Southampton, but available to everyone to use.

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×