justrunit: experiment-based management of virtualized data centers

27
JustRunIt: Experiment-Based Management of Virtualized Data Centers Wei Zheng Ricardo Bianchini Rutgers University Yoshio Turner Renato Santos John Janakiraman HP Labs

Upload: abner

Post on 25-Feb-2016

37 views

Category:

Documents


1 download

DESCRIPTION

JustRunIt: Experiment-Based Management of Virtualized Data Centers. Wei Zheng Ricardo Bianchini Rutgers University. Yoshio Turner Renato Santos John Janakiraman HP Labs. Motivation. Managing data center is a challenging task - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: JustRunIt: Experiment-Based Management of Virtualized Data Centers

JustRunIt: Experiment-Based Management of Virtualized Data Centers

Wei ZhengRicardo Bianchini

Rutgers University

Yoshio TurnerRenato Santos

John JanakiramanHP Labs

Page 2: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Motivation

• Managing data center is a challenging task– Resource allocation, evaluation of software/hardware upgrades,

capacity planning, etc.– Decisions affect performance, availability, energy consumption

• State-of-the-art uses modeling for these tasks – Models give insight into system behavior– Fast exploration of large parameter spaces

• Modeling has some important drawbacks– Consumes a very expensive resource: human labor– Needs to be re-calibrated and re-validated as the systems evolve

Page 3: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Our Approach

• Idea: experiments are a better approach– Consume a cheaper resource: machine time (and energy)– High fidelity

• JustRunIt: an infrastructure for experiment-based management of virtualized data centers

• Management system or administrator can use JustRunIt results to perform management tasks– Resource management and hardware/software upgrades– Select the best value for software tunables– Evaluate the correctness of administrator actions

Page 4: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Outline

• Motivation

• JustRunIt design and implementation

• Evaluation– Case study 1: resource management– Case study 2: hardware upgrades

• Related work

• Conclusion

Page 5: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Target Environment

• Virtualized data centers host multiple independent Internet services

• Each service comprises multiple tiers, e.g. a web tier, an application tier, and a database tier

• Each service has strict negotiated SLAs (Service Level Agreements), e.g. response time

• All services are hosted in VMs for isolation, easy migration, management flexibility

Page 6: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Data Center with JustRunIt• Creates sandbox• Clones VMs• Applies configuration changes• Duplicates live workload to sandbox

• Properties– No effect on on-line services– Does not replicate entire service– Almost service-independent

Assess performance and energy of different configurations

A1A2

A1A2

A2A3

A2A3

A1A2A3

W1W2

W1W2

W2W3

W1W2W3

D1D2

D1D3

D2D3

D1D2D3

S-A2Sandbox S-W2 S-D2

On-linesystem

Page 7: JustRunIt: Experiment-Based Management of Virtualized Data Centers

JustRunIt Architecture

X X

X X X

X I I XI I I IX X I X

T T

T

Driver

Checker

- Parameter Ranges

- Heuristics- Time Limit

Interpolator

Management Entity

Param valuesExperiment results

Para

m

valu

esEx

perim

ent r

esul

tsExperimenter

JustRunIt

param2

para

m1

Page 8: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Experimenter• Step 1: Clone subset of

production system to a sandbox– VM cloning: Modify Xen live

migration to resume original VM instead of destroying it

– Storage cloning: LVM copy-on-write snapshot for sandbox VM

– L2/L3 network address translation: implemented in driver domain netback driver to prevent network address conflict

• Step 2: Apply configuration changes– Exs: CPU allocation, frequency

VMVM

VM

Page 9: JustRunIt: Experiment-Based Management of Virtualized Data Centers

• Proxies filter requests/replies from the sandbox VM

• Emulates the timing and functional behavior of preceding and following service tiers– Application protocol level requests/replies (e.g. HTTP)

Experimenter

Tier-N VMIn-Proxy Out-Proxy

Sandbox VM

• Step 3: Duplicates live workload to sandbox using proxies

Page 10: JustRunIt: Experiment-Based Management of Virtualized Data Centers

JustRunIt Architecture

X X

X X X

X I I XI I I IX X I X

T T

T

Driver

Checker

- Parameter Ranges

- Heuristics- Time Limit

Interpolator

Management Entity

Param valuesExperiment results

Para

m

valu

esEx

perim

ent r

esul

tsExperimenter

JustRunIt

param2

para

m1

Page 11: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Driver

• Goal: Fill in results matrix within a time limit

• Corners• Midpoints (recursive)• Heuristics

– Cancel experiments if gain for a resource addition falls below a threshold

– Cancel experiments for tiers that do not produce the largest gains from a resource addition

X X

XX

X X

X

X

X

CPU allocation

CPUFreq

(min,min)

Page 12: JustRunIt: Experiment-Based Management of Virtualized Data Centers

JustRunIt Architecture

X X

X X X

X I I XI I I IX X I X

T T

T

Driver

Checker

- Parameter Ranges

- Heuristics- Time Limit

Interpolator

Management Entity

Param valuesExperiment results

Para

m

valu

esEx

perim

ent r

esul

tsExperimenter

JustRunIt

param2

para

m1

Page 13: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Interpolator and Checker

• For simplicity, we use linear interpolation

• Checker will verify the interpolated result by invoking the experimenter to run corresponding experiments in the background

Page 14: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Cost of JustRunIt

• Building JustRunIt needs human effort also– The most time-consuming part is proxies implementation– Current proxies understand HTTP, mod_jk, MySQL protocols– Developed from an open source proxy daemon, each proxy need

800~1500 new lines of C code

• Cost of VM Cloning: 42 lines of Python code in xend and 244 lines of C in netback driver

• The engineering cost of JustRunIt can be amortized for any service based on the same protocols

Page 15: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Outline

• Motivation

• JustRunIt design and implementation

• Evaluation– Case study 1: resource management– Case study 2: hardware upgrades

• Related work

• Conclusion

Page 16: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Methodology

• 15 HP Proliant C-class blades (8G, 2 Xeon dual-core) interconnected with Gbit network

• 2 types of 3 tier Internet service – RUBiS: online auction service modeled after Ebay.com– TPC-W: online book store modeled after Amazon.com

• Xen 3.3 with Linux 2.6.18

• Dom0 pinned to separate core for performance isolation

Page 17: JustRunIt: Experiment-Based Management of Virtualized Data Centers

0

10

20

30

40

50

60

70

80

300 600 900 1200 1500 1800

Offered Load (reqs/s)

Res

pons

e Ti

me

(ms)

PlainProxiesInstalledJustRunIt

3-tier service with one node per tier; two nodes for proxiesOverhead exposed – slight RT degradation, no effect on TP

Overhead on On-line Service?

Page 18: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Fidelity of The Sandbox Execution?

0

5

10

15

20

25

30

35

25 50 75 100

CPU Allocation

Res

pons

e Ti

me

(ms)

0

50

100

150

200

250

300

350

400

450

Thro

ughp

ut (r

eeks

/s) Live RT

SB RTLive TSB T

Thro

ughp

ut (r

eqs /

s)

Application server at 400 requests/second (similar results for higher load)

Response Time

Throughput

Page 19: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Automated Management

Management Entity

Data CenterJustRunIt

“Wha

t if”

Answ

erMonitoring

Action

Change

Result

Page 20: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Case Study 1: Resource Management

• Goal: consolidate the hosted services onto the smallest possible set of nodes, while satisfying all SLAs

• Management entity invokes JustRunIt when response time SLA is violated, or when SLA is met by a large margin

• Management entity uses performance-resource matrix to determine resource needs

• Management entity performs bin packing (via simulated annealing) to minimize number of physical machines and number of VM migrations

Page 21: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Case Study 1: Resource Management

• 9 blades: 2 for first tier; 2 for second tier; 2 for third tier; 3 for load balancing and storage service

• 4 services are populated

• Each VM allocated 50% CPU

• SLA: 50ms

• Service 0 workload is increased to 1500reqs/sec after 2 mins

Page 22: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Resource Management with JustRunIt

0

10

20

30

40

50

60

1 2 3 4 5 6 7 8 9

Time (minutes)

Res

pons

e Ti

me

(ms)

Service 0 RTService 1 RTService 2 RTService 3 RT

0

10

20

30

40

50

60

1 2 3 4 5 6 7 8 9

Time (minutes)

Res

pons

e Ti

me

(ms)

Service 0 RTService 1 RTService 2 RTService 3 RT

4 services on 11 nodesSLA = 50msIncrease load on S0Run 3 exps for 3 mins

JRI

Modeling

Violating SLA Running experimentsMigrating

Violating SLASolving modelMigrating

Page 23: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Case Study 2: Hardware Upgrades• Goal: evaluate if hardware upgrade allow further

consolidation and lower overall power consumption

• JustRunIt uses one instance of new hardware in sandbox to determine the consolidation savings

• Bin packing determines necessary number of new machines to accommodate production workload

Page 24: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Case Study 2: Hardware Upgrades

• Initial server uses 90% of one CPU core on old hardware (emulate using low frequency mode)

• New machine (emulate using high frequency mode) requires 72%

• This would allow further consolidation in a large system

Page 25: JustRunIt: Experiment-Based Management of Virtualized Data Centers

• Modeling, feedback control, and machine learning for managing data centers [Stewart’05, Stewart’08, Padala’07, Padala’09, Cohen’04]

• Scaling down data centers emulation [Gupta’06, Gupta’08]

• Sandboxing and duplication for managing data centers [Nagaraja’04, Tan’05, Oliveira’06]

• Run experiments quickly [Osogami’06, Osogami’07]

• Selecting experiments to run [Zheng’07, Shivam’08]

Related Work

Page 26: JustRunIt: Experiment-Based Management of Virtualized Data Centers

Conclusions

• JustRunIt infrastructure combines well with automated management systems

• Answers “what-if” questions realistically and transparently

• Can support a variety of management tasks

• Future investigation– Tier interactions– Different workload mix– Build proxies for a database server

Page 27: JustRunIt: Experiment-Based Management of Virtualized Data Centers

THANK YOU!QUESTIONS?