Presentation on theme: "Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale 4th IEEE International Conference."— Presentation transcript:
1 Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale 4th IEEE International Conference on Cloud Computing (Cloud 2011)
2 Agenda Introduction Related Work Challenge Solution Evaluation ConclusionComment
3 Introduction (1/4)Typically customers maintain SLAs with service providers for the QoS properties.Failure to comply with satisfying these QoS metrics leads to a major loss of revenue in the form of decreased user baseCatering to the SLA while still keeping costs low is challenging for such enterprise systems
5 Introduction (3/4) A problem with such a resource allocation scheme Is the chance of thrashing where due to frequent variation of workload, machines can be added and released on every sampleA desirable solution would require an ability to predict the incoming workload on the system and allocate resources a priori
6 Introduction (4/4)autoscaling the resources in a cloud environment is not an easy and straightforward task.(i) overheads related to state transition when number of resources are changed(ii) ability to accurately predict future workload(iii) compute the right number of resources required for the expected increase or decrease in workload.
7 Related Work (1/2)(1) Heuristics-based virtual machine allocation and migrationUrgaonkar et. al. , 2008VM, dynamic provisioning, Queueing modelOnly a single VM can be run in a hostWood et. al. , 2007VM, dynamic migrationdefine a unique metric based on the consumption data of the three resources to make the migration decisionCPU, network and memoryCunha et. al. , 2007Queueing modelPricing Model that gives rewards for throughput to be within SLA limits and penalty for throughput going above
8 Related Work (2/2)(2) Autonomic management of virtual computing environment using control-theoretic approaches:Wang et. al. A load balancing controllerVMs are all load-balanced and the response time of the applications in all the VMs are the sameMoreno et. al. An architecture for elastic management of cluster-based servicesWaheed et. al. Reactive algorithm to allocate resources to a cluster farmYang et. al Profiled based approach
9 Challenge (1/4) Challenge 1: Workload Forecasting Correctness of predictionReleasing resources is easy, but..Acquiring resourcesMake a call on the cloud API which starts the acquisition processThe machine will be needed to boot up with the specified imageThe application need to be started
10 Challenge (2/4)Challenge 2: Identify Resource Requirement for Incoming LoadThe required number of resources is a function ofthe number of customersthe nature of the applicationthe type of calls that each customer makes on the application
11 Challenge (3/4)Challenge 3: Resource Allocation while Optimizing Multiple Cost FactorsTo optimize resource usage and/or minimize idle resourcesdefine a time interval and change resources as many times as possible as workload changes.In the limit, this interval could be made infinitesimally small and resources are changed continuously in accordance with the change in load
12 Challenge (4/4) Obviously, such as scheme is not possible the overhead in allocating a resourcescaling up or down resources also involves cost and needs to be optimized
13 Solution (1/9)Control theory offers a promising methodology to address the challenges
14 Solution (2/9)1. For every future time step, it computes the cost of selecting each possible resource allocation2. To compute the cost of a particular allocation, it uses Algorithm 1 to compute the estimated response time for that particular machine configuration3. Once the response time is calculated, it is used to calculate the cost of the allocation which is a combination ofhow far the estimated response time is from the SLA bounds (SLA violation)cost of leasing additional machinesand also a cost of re-configuration
15 Solution (3/9) A. Workload Prediction Authors used a second order autoregressive moving average method (ARMA) filter for the workloadThe value for the variables β and γ are given by the values 0.8 and 0.15ARMA models are widely used for prediction of economic and industrial time series
16 ARMA Autoregressive Model (AR) a model depends on the level of the lagged observationsFor example, if we observe a high realisation of GDP we would expect that the GDP in the next few periods are high as well
17 ARMA Moving Average Model (MA) model that the observations of a random variable at time t are not only affected by the shock at time t, but also the shocks of prior periodsEx. if we observe a negative shock to the economy, say, 9/11, then we would expect that the negative effect affects the economy also for the near future.
18 ARMA Autoregressive Moving Average Model combine both models we get a ARMA(p,q) modelARMA models are widely used for prediction of economic and industrial time series
20 Solution (5/9) B. Performance Model The next challenge we resolve is identifying resource requirements for the predicted workloadThe workload used in this work is the number of users currently in the system.It also depends upon what each user does.In prior work  we have used Customer Behavior Modeling Graphs (CBMG) (?) to model the overall behavior of customers
21 Solution (6/9)A CBMG is built from a log of previous customer behavior and computes the probability of a typical user to visit each pageUsing this information, we can calculate the number of visits to a single page from the total number of customers in the system.The number of visits to each page helps in calculating the average load on each page.
23 Solution (8/9) C. Optimizing Resource Provisioning The intuition is to identify the right number of time intervalsOur solution works on look-ahead optimizationiteratively solves an optimization problem, Costopt, starting from t0
24 Solution (9/9) The actual algorithm is not described here The next challenge is the choice of the look-ahead period.A small look-ahead period will neglect trendsA very large period will increase computational complexityThe actual algorithm is not described herebecause the implementation requires recursive data structuresis difficult to describe in the limited space available.
26 Evaluation (2/7) Just in time Resource Allocation the weights on each component of the cost function is the same
27 Evaluation (3/7) -- Resource Usage under Different Cost Priorities 1) SLA violation against Resource CostThe ratio of SLA penalty to machine cost is varied from 4 : 1 to 1 : 13
28 Evaluation (4/7) -- Resource Usage under Different Cost Priorities
29 Evaluation (5/7) -- Resource Usage under Different Cost Priorities
30 Evaluation (6/7) -- Resource Usage under Different Cost Priorities 2) Including the Cost of Reconfiguration
31 Evaluation (7/7) -- Resource Usage under Different Cost Priorities
32 Conclusionthis paper describes a look-ahead resource allocation algorithm based on model predictive controlpredicts future workloadadjusts resources allocated to users ahead-of-time
33 Comments The detail of the model in the paper is too simple I cannot understand why the authors did these evaluationsThe paper use control theory and it seems to have a good prediction of workloadSomething in 3 challengesthe overhead of allocating resourcesthe prediction intervalthe costs of SLA violation, reconfiguring machine….