Title: Adaptive Control of Virtualized Resources in Utility Computing Environments
1Adaptive Control of Virtualized Resources in
Utility Computing Environments
Pradeep Padala, Kang G. Shin University of
Michigan
- HP Labs Xiaoyun Zhu, Mustafa Uysal, Zhikui Wang,
Sharad Singhal - University of Waterloo Kenneth Salem
2A typical scenario in data centers
Customer A
Customer B
Run auction site
Run news site
Shared Data Center
3Hosting applications
Data Center
Common idiom One-to-one mapping of applications
to nodes
4Problem Poor utilization
Wasted Resources
Ad-hoc resource allocation schemes waste resources
5Solution Virtual data center
Web server
Linux
Virtualization (Xen, OpenVZ, VMware)
Consolidate
Improved utilization using consolidation
6Problem Provisioning
Wasted Resources
Bursty Load
Bad response time
Peak
Average
Provisioning for dynamic workloads is hard!
Solution Adaptive controller
7Goals
- Good utilization
-
- Good performance
- QoS differentiation
Average CPU utilization 80
Average response time 100ms
Gold vs. Silver customers 21 resources
8Outline
- Motivation
- Background
- Modeling
- Design
- Evaluation
- Conclusion
9How do we provision the customers ?
Customer A
Auction Client
News Client
Virtualized Server I
Virtualized Server II
Customer B
10What are we controlling ?
- Goals
- Good performance
- Good utilization
- QoS differentiation
VM I
50
80
Goals met ? NO
50
20
VM II
Policy
Mechanism
CPU Usage ?
Controller
Xen scheduler
Set CPU shares
Virtualized Server
11Related work
- Existing research
- Cluster management
- Load balancing
- Resource allocation scheduling
- QoS differentiation
- Our contribution Adaptive resource control
- Quantitative model of system behavior
- Fine-grained, adaptive control
- No wastage of resources
- High throughput, low response time
- QoS differentiation
12How do we design an adaptive resource controller?
Understand system variables Input
Output
Design controller PI, PID, I controller
Stress the controller
Goals met ?
A control theoretic approach to systems
13Outline
- Motivation
- Background
- Modeling
- Design
- Evaluation
- Conclusion
14Modeling a virtual data center
VM utilization
VM Shares
Throughput
Response time
Workload
QoS differentiation
Virtualized Server I
Virtualized Server II
How to differentiate between two multi-tiered
systems ?
15Modeling two multi-tiered systemsQoS metric
Linear
Non-Linear
Response time ratio is more controllable than
loss ratio
16Outline
- Motivation
- Background
- Modeling
- Design
- Evaluation
- Conclusion
17Utilization controller an example
Controller
Utilization goal 80
Using 20
New Utilization 20/25100 80
Utilization 20/40100 50
- Problems
- Utilization is variable
- Delays and errors in sensing setting
- Stability concerns
Solution Self-tuning integral controller
18Utilization controller
Workload
Error in utilization e(k-1)
Self-tuning controller
System
CPU allocation u(k)
Utilization goal
Measured utilization u(k-1)
-
- Adjusts to varying demand
- Maintains goal utilization
- Knobs to control aggression (Kp)
- Proven stable Wang DSOM05
19Let there be controllers
110 Cant fit (Saturation)
Want 40
Want 70
Virtualized Server I
Container consumptions
Problem All controllers independent
Solution Arbiter controller enforcing QoS
differentiation
Virtualized Server II
20Final controller
Requested CPU shares
Final CPU shares
Arbiter Controller
Virtualized Server I
Container consumptions
Desired response time ratio
Virtualized Server II
21Outline
- Motivation
- Background
- Modeling
- Design
- Evaluation
- Conclusion
22Evaluation
- Multi-tiered systems
- 2 HP Proliant servers
- Apache MySQL
- Xen 3.0 with SEDF scheduler
- Clients
- RUBiS auction client
- 2 RUBiS clients 500 1000 threads
- Can we maintain 70 QoS ratio ?
23Varying load - throughput
1000 threads
500 threads
24Varying load - control
Saturation
Buffer to maintain good performance
Penalized to maintain QoS ratio
25Varying load QoS ratio
Goal
Goal ratio of 70 maintained!
26Conclusion
- Adaptive control of virtual data center
- Good application performance
- High throughput
- Low response time
- Good utilization
- Maintain goal CPU utilization
- QoS differentiation
- Maintain goal QoS ratio
- Project page http//kabru.eecs.umich.edu/twiki/bi
n/view/Main/DynamicControl - E-mail ppadala_at_eecs.umich.edu
- Questions ?
27Backup and old slides
28Enterprise data centers
- Large data centers
- 100s/1000s of nodes
- Shared infrastructure
- Run critical applications
- Should meet service levels
- Problems
- Power costs
- Management costs
- Poor utilization
- Unmet service levels
29Solution Consolidate !
30Hosting two multi-tiered systems
Auction Client
Customer A
News Client
Virtualized Server II
Virtualized Server I
Customer B
31Varying load
1000 clients
500 clients
Workload I
Workload II
Time
32(No Transcript)
33(No Transcript)
34Modeling results - throughput
Dom0 effect
Web share
Throughput
Saturation causes Real throughput lt Offered
throughput
35Arbiter controller features
- Is an integral controller
- Decides final shares based on QoS differentiation
goals - Integral gain knobs for aggression
- Stable gain value based on model
36Modeling a multi-tiered system
Workload
Web usage
Web share
DB usage
DB share
QoS metrics
Virtual Server
- Stress the system in various scenarios
- Observe all variables
37Modeling results response time
Dom0 effect
Web share
Response time
38Questions