1 / 33

Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting

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). Agenda. Introduction Related Work Challenge Solution Evaluation Conclusion Comment.

eithne
Download Presentation

Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale4th IEEE International Conference on Cloud Computing (Cloud 2011)

  2. Agenda • Introduction • Related Work • Challenge • Solution • Evaluation • Conclusion • Comment

  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 base • Catering to the SLA while still keeping costs low is challenging for such enterprise systems

  4. Introduction (2/4) – naïve method

  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 sample • A 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 migration • Urgaonkar et. al. [2], 2008 • VM, dynamic provisioning, Queueing model • Only a single VM can be run in a host • Wood et. al. [3], 2007 • VM, dynamic migration • define a unique metric based on the consumption data of the three resources to make the migration decision • CPU, network and memory • Cunha et. al. [4], 2007 • Queueing model • Pricing 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. [6] • A load balancing controller • VMs are all load-balanced and the response time of the applications in all the VMs are the same • Moreno et. al. [7] • An architecture for elastic management of cluster-based services • Waheed et. al. [8] • Reactive algorithm to allocate resources to a cluster farm • Yang et. al [9] • Profiled based approach

  9. Challenge (1/4) • Challenge 1: Workload Forecasting • Correctness of prediction • Releasing resources is easy, but.. • Acquiring resources • Make a call on the cloud API which starts the acquisition process • The machine will be needed to boot up with the specified image • The application need to be started

  10. Challenge (2/4) • Challenge 2: Identify Resource Requirement for Incoming Load • The required number of resources is a function of • the number of customers • the nature of the application • the type of calls that each customer makes on the application

  11. Challenge (3/4) • Challenge 3: Resource Allocation while Optimizing Multiple Cost Factors • To optimize resource usage and/or minimize idle resources • define 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 resource • scaling 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 allocation • 2. To compute the cost of a particular allocation, it uses Algorithm 1 to compute the estimated response time for that particular machine configuration • 3. Once the response time is calculated, it is used to calculate the cost of the allocation which is a combination of • how far the estimated response time is from the SLA bounds (SLA violation) • cost of leasing additional machines • and 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 workload • The value for the variables βand γ are given by the values 0.8 and 0.15

  16. ARMA • Autoregressive Model (AR) • a model depends on the level of the lagged observations • For 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 periods • Ex. 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) model • ARMA models are widely used for prediction of economic and industrial time series

  19. Solution (4/9)

  20. Solution (5/9) • B. Performance Model • The next challenge we resolve is identifying resource requirements for the predicted workload • The 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 [20] 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 page • Using 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.

  22. Solution (7/9)

  23. Solution (8/9) • C. Optimizing Resource Provisioning • The intuition is to identify the right number of time intervals • Our solution works on look-ahead optimization • iteratively solves an optimization problem, Costopt, starting from t0

  24. Solution (9/9) • The next challenge is the choice of the look-ahead period. • A small look-ahead period will neglect trends • A very large period will increase computational complexity • The actual algorithm is not described here • because the implementation requires recursive data structures • is difficult to describe in the limited space available.

  25. Evaluation (1/7) • Cost Function

  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 Cost • The 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. Conclusion • this paper describes a look-ahead resource allocation algorithm based on model predictive control • predicts future workload • adjusts 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 evaluations • The paper use control theory and it seems to have a good prediction of workload • Something in 3 challenges • the overhead of allocating resources • the prediction interval • the costs of SLA violation, reconfiguring machine….

More Related