Publication Year

Authors

BibTeX

Abstract

Dynamically adjusting the number of virtual machines (VMs) assigned to a cloud
application to keep up with load changes and interference from other uses typically
requires detailed application knowledge and an ability to know the future, neither
of which are readily available to infrastructure service providers or application
owners. The result is that systems need to be over-provisioned (costly), or risk
missing their performance Service Level Objectives (SLOs) and have to pay penalties
(also costly). AGILE deals with both issues: it uses wavelets to provide a
medium-term resource demand prediction with enough lead time to start up new
application server instances before performance falls short, and it uses dynamic VM
cloning to reduce application startup times. Tests using RUBiS and Google cluster
traces show that AGILE can predict varying resource demands over the medium-term
with up to 3.42× better true positive rate and 0.34× the false positive rate than
existing schemes. Given a target SLO violation rate, AGILE can efﬁciently handle
dynamic application workloads, reducing both penalties and user dissatisfaction.