dynamic resource allocation using virtual machine for cloud computing environment zhen xiao, weijia...

36
Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking University http://zhenxiao.com/ ChinaSys2012 Talk 1

Upload: piers-asher-montgomery

Post on 18-Dec-2015

224 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment

Zhen Xiao, Weijia Song, and Qi ChenDept. of Computer Science

Peking Universityhttp://zhenxiao.com/

ChinaSys2012 Talk

1

Page 2: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Introduction

Background: Nowadays Cloud computing allows

business customers to scale up and down their resource usage based on needs. It uses virtualization technology to multiplex hardware resources among a large group of users.

Problem: How can a cloud service provider best

multiplex virtual to physical resources?2

Page 3: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Amazon EC2-Style Service

4

User

User

Virtual Machines

Physical Servers

Virtualization

I-a-a-S Service

Page 4: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

PM1

PM2 PM3

VM1cpu:0.1net:0.1

mem:0.61

VM2cpu:0.1net:0.1

mem:0.3

VM3cpu:0.6net:0.6

mem:0.05

VM4cpu:0.3net:0.3

mem:0.2

Amazon EC2-Style Service

VM

sPM

s

5

Page 5: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Goals and objectivesOur goals:

overload avoidance: the capacity of a PM should be sufficient to satisfy the resource needs of all VMs running on it. Otherwise, the PM is overloaded and can lead to degraded performance of its VMs.

green computing: the number of PMs used should be minimized as long as they can still satisfy the needs of all VMs. Idle PMs can be put to sleep to save energy. 6

Page 6: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Overview of the rest of the talk

System overview

Details of the algorithm

Simulation results

Experiment results

Conclusion

7

Page 7: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

System Overview

Xen HypervisorWS Prober

Dom 0

MM Adjustor

Usher LNM

Dom U

Xen HypervisorWS Prober

Dom 0

MM Adjustor

Usher LNM

Dom U

Xen HypervisorWS Prober

Dom 0

MM Adjustor

Usher LNM

Dom U

Usher CTRL

VM Scheduler Plugin

Predictor Hotspot Solver Migration listMigration listColdspot Solver

8

Page 8: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

System overviewHow to collect the usage statistics of resources for each VM ?

The CPU and network usage can be calculated by monitoring the scheduling events in Xen (XenStat)

The memory usage can be calculated by a working set prober (WS Prober) on each hypervisor to estimate the working set sizes of VMs. (We use the random page sampling technique as in the VMware ESX Server)

10

Page 9: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

System overviewHow to predict the future resource demands of VMs and the future load of PMs?

VMware ESX Server uses EWMA (exponentially weighted moving average)

Our system uses FUSD (Fast Up and Slow Down)

11

Page 10: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Overview of the rest of the talk

System overview

Details of the algorithm

Simulation results

Experiments

Conclusion

12

Page 11: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Our Algorithm

Definitions1We define a server as a hot spot if the utilization of any of its resources is above a hot threshold. This indicates that the server is overloaded and hence some VMs running on it should be migrated away.

We define a server as a cold spot if the utilizations of all its resources are below a cold threshold. This indicates that the server is mostly idle and a potential candidate to turn off/sleep to save energy. 13

Page 12: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Parameters of the algorithm

Hot threshold

Cold threshold

Green computing threshold

Warm threshold

Consolidation limit

14

Page 13: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Our Algorithm

Definitions2We use skewness to quantify the unevenness in the utilization of multiple resources on a serverLet n be the number of resources we consider and be the utilization of the ith resource. We define the resource skewness of a server p as

where is the average utilization of all resources for server p.

cpu mem net0

0.2

0.4

0.6

skewness=0

cpu mem net0

0.20.40.60.8

1

skewness=1.13

15

Page 14: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Our Algorithm

Definitions3We define the temperature of a hot spot p as the square sum of its resource utilization beyond the hot thresholdLet R be the set of overloaded resources in server p and rt be the hot threshold for resource r. The definition of the temperature is :

16

Page 15: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Layout Predict results

Solv

e ho

tspo

tsInit hot threshold

Generate hotspots and sort them by their temperature

Any hotspots to solve?

Done

N

Choose a hot pm and try to solve it

Y

17

Page 16: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Our Algorithm

For each hot spot • Which VM to migrate

away?• Where does it migrated

to?

18

Page 17: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

hotspot

Sort the vms on the hot pm based on the resulting temperature if

that vm is migrated away

Find out the pm which may accept the vm without becoming hotspot and generate a target list

Any vm to try?

Choose the pm with the maximum decrease of skewness value after

acceptting that vm to be the destination

N

Migrate the vm and solve (or cool) the hotspot

Is the target list empty?

Y

Y

Fail to solve this hotspot

N

Solv

e ho

tspo

t

19

Page 18: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Skewness

PM1 (mem > 0.9) PM2

PM3

VM1cpu:0.1net:0.1

mem:0.61

VM2cpu:0.1net:0.1

mem:0.3

VM3cpu:0.6net:0.6

mem:0.05

VM4cpu:0.3net:0.3

mem:0.2

PM1 (mem > 0.9) PM2 PM3 PM1

VM1cpu:0.1net:0.1

mem:0.61

VM2cpu:0.1net:0.1

mem:0.3

VM3cpu:0.6net:0.6

mem:0.05

PM2

VM4cpu:0.3net:0.3

mem:0.2

Dt:0.0036Ds:-0.337

Dt:0.0036Ds: 0.106

Dt:0.0035Ds: -1.175 Ds:0.1178 Ds:-0.98

20

Page 19: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Need green computing?

Generate coldspots and noncoldspots, and sort coldspots by used RAM

Any coldspots to

solve?

Choose a cold pm and try to solve it

Can it be solved?

Y

DoneN

Migration list

N

Y

Y

Move the cold pm to

noncoldspots

N

Solved num > limit?

Y

N

Gre

en c

ompu

ting

21

Page 20: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

coldspot

Init

From all non-coldspots find out the pm whose resourse utilization is below

warm threshold after acceptting the vm and generate a target list

Any vm to solve?

Choose a pm with the

maximum decrease of skewness

value after acceptting that vm to

be the destination

N

From all the rest coldspots find out the pm whose resourse utilization is below warm threshold after acceptting the vm

and generate a target list

Is the target list empty?Y

Y

Fail to solve this coldspot

N

Is the target list empty?

Choose a pm with the maximum

decrease of skewness value after acceptting

that vm to be the destination

If the destination pm becomes non-coldspot, move it to non-coldspots

list

succeed

NY

Solv

e co

ldsp

ot

22

Page 21: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

PM1 PM2

PM3

VM1cpu:0.1net:0.1

mem:0.1

VM2cpu:0.1net:0.1

mem:0.1

VM3cpu:0.2net:0.2

mem:0.25Skewness

VM4cpu:0.5net:0.5

mem:0.5

PM3 PM1PM1 PM2

PM2

VM2cpu:0.1net:0.1

mem:0.1

VM3cpu:0.2net:0.2

mem:0.25

PM3

VM4cpu:0.5net:0.5

mem:0.5

cold threshold = 0.25 warm threshold = 0.65

PM1

VM1cpu:0.1net:0.1

mem:0.1

VM2cpu:0.1net:0.1

mem:0.1

VM3cpu:0.2net:0.2

mem:0.25

23

Page 22: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Analysis of the algorithm

The skewness algorithm consists of three parts(let n and m be the number of PMs and VMs in the system):

Load prediction: O(n+m) ~ O(n)hot spot mitigation: O(n2)green computing: O(n2) (if we add restriction to the cold spots to solve, it can be down to O(n))

The overall complexity of the algorithm is bounded by O(n2)

26

Page 23: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Overview of the rest of the talk

System overview

Details of the algorithm

Simulation results

Experiments

Conclusion

27

Page 24: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

SimulationGenerate work load

traces from a variety of servers in our university including our faculty mail server, the central DNS server, the syslog server of our IT department, the index server of our P2P storage project, and many others

a synthetic workload which is created to examine the performance of our algorithm in more extreme situations mimics the shape of a sine function (only the positive part) and ranges from 15% to 95% with a 20% random fluctuation

DNS server

desktop

logmail server

28

Page 25: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Parameters in the simulation

Hot threshold: 0.9

Cold threshold: 0.25

Warm threshold: 0.65

Green computing threshold: 0.4

Consolidation limit: 0.05

29

Page 26: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Effect of thresholds on APMs

(a) Different thresholds

30

(b) #APM with synthetic load

Page 27: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Scalability of the algorithm

(a) average decision time (b) total number of migrations

(c) number of migrations per VM

32

Page 28: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Effect of load prediction

33

Page 29: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Overview of the rest of the talk

System overview

Details of the algorithm

Simulation results

Experiments

Conclusion

35

Page 30: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

ExperimentsEnvironment

30 servers with Intel E5420 CPUx2 and 24GB of RAM. The servers run Xen-3.3 and Linux 2.6.18.The servers are connected over a gigabyte Ethernet to three NFS centralized storage serverTPC-W Benchmark: a transactional web e-Commerce benchmark.

36

Page 31: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Algorithm effectiveness

37

Page 32: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Application Performance

38

Page 33: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Load Balancing

40

Page 34: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Overview of the rest of the talk

System overview

Details of the algorithm

Simulation results

Experiments

Conclusion

44

Page 35: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

ConclusionWe have presented a resource management system for Amazon EC2-style cloud computing services.

We use the skewness metric to combine VMs with different resource characteristics appropriately so that the capacities of servers are well utilized.

Our algorithm achieves both overload avoidance and green computing for systems with multi-resource constraints.

45

Page 36: Dynamic Resource Allocation using Virtual Machine for Cloud Computing Environment Zhen Xiao, Weijia Song, and Qi Chen Dept. of Computer Science Peking

Thank You!

46