Automatic Resource Scaling for Web Applications in the Cloud
Ching-Chi Lin
Institute of Information Science, Academia Sinica
Department of Computer Science and Information Engineering, Nation Taiwan University
Jeng-An Lin, Li-Chung Song
Department of Computer Science and Information Engineering, Nation Taiwan University
Pangfeng Liu
Department of Computer Science and Information Engineering, Nation Taiwan University Graduate Institute of Networking and Multimedia, Nation Taiwan University
Jan-Jan Wu
Institute of Information Science, Academia Sinica
Research Center for Information Technology Innovation, Academia Sinica
Introduction
Web applications face fluctuating loads.
◦Using a fixed number of VM as web ser ver is not enough.
◦Over-provision or under provision.
Auto-scaling
Auto-Scaling
Estimate the load.
Up-scale or down-scale the resourc es.
Purpose
◦Maintains application service quality .
◦Reduces wasted resources.
Related Works
Cloud service: Amazon EC2, Google App Engine, …
Software: Scalr, RightScale, …
Constraints:
◦Replying on user-provided scaling met rics and threshold values.
◦Employing the simple Majority Vote sc aling algorithm.
◦Lack of capability for predicting wor kload change.
Our Contribution
WebScale
◦A modularized auto scaling system for dynamic resource provision in data ce nters.
Consider different algorithms
Propose a trend analysis technique .
Technical approach
Majority Vote
◦Each VM makes their choice according to their current loading.
Compare with threshold.
◦The scaling decision equals to the ma jority one among all choices.
Workload-Based
Determines the number of running V Ms needed based on the incoming wo rkload.
Has the advantage of knowing the n eeded number of VMs in advance com pare to Majority Vote.
current VM
scale VM
Capacity Workload
VM
Trend Analysis
Works as a helper to the scaling a lgorithms.
◦More ”correct” decision.
Only predict the trend of workload change instead of accurately value .
◦Trend is the direction of workload ch anging.
Example of Trend Analysis
Experiment Setting
Environment:
◦24 physical servers, each with 4 core X5460 CPU * 2 with hyperthreading,16 GB memory, and 250 GB disk.
Web application: MediaWiki
Performance measuring tool: Httper f
Experiment Workload
Experiment Results – Majority Vo
te
Experiment Results – Workload-ba
sed
Experiment Results – Database
Experiment results - Summa ry
Majority vote is not an effective.
◦Especially with frequently changing w orkloads.
Workload-based with trend analysis performs the best among all three strategies.
Conclusion
Auto-scaling technique provides o n-demand resources according to wo rkload in cloud computing system.
We implemented an modularized aut o-scaling system, WebScale.
Our experiment results show that f or workloads with periodic behavio r, using workload-based algorithm with trend analysis performs the b est among all three strategies.