42
1 CMG, 2006 Reno Yiping Ding and Ethan Bolker How Many Guests Can You How Many Guests Can You Serve? Serve? - On the Number of - On the Number of Partitions Partitions

1 CMG, 2006 Reno Yiping Ding and Ethan Bolker How Many Guests Can You Serve? - On the Number of Partitions

Embed Size (px)

Citation preview

1 CMG, 2006 Reno

Yiping Ding and Ethan Bolker

How Many Guests Can You Serve?How Many Guests Can You Serve?- On the Number of Partitions- On the Number of Partitions

2CMG 06 Reno

Why Consolidation and Virtualization? Why Consolidation and Virtualization?

3CMG 06 Reno

It is the power, space, … It is the power, space, …

4CMG 06 Reno

Common SenseCommon Sense

“Figure out how many will fit around your dining room table even before you begin to think about how much they will eat.”

Three questions follow:1. What is the size of the dining room?

2. What is the size of the table?

3. How many tables can fit in the dining room?

5CMG 06 Reno

A huge table in a large dining room: no partitionA huge table in a large dining room: no partition

High Utilization

6CMG 06 Reno

Small tables in a large dining room: partitionSmall tables in a large dining room: partition

Low OverheadLow Overhead

7CMG 06 Reno

Large tables in a huge dining room: partitionLarge tables in a huge dining room: partition

High OverheadHigh Overhead

8CMG 06 Reno

A large table in …A large table in …

It’s all yoursIt’s all yours

9CMG 06 Reno

A Basic Computer System without VirtualizationA Basic Computer System without Virtualization

Applications Operating System

Processors

NetworkInterface

I/O Subsystem

Memory

Hardware

10CMG 06 Reno

Single ServerSingle Server

s

sx S

11CMG 06 Reno

Two Queues and Two ServersTwo Queues and Two Servers

2/x s

2/xs

x

12CMG 06 Reno

VocabularyVocabulary

Partition = guest = virtual partition Server = processor

13CMG 06 Reno

Two virtual machines on one physical systemTwo virtual machines on one physical system

Memory

Processors

Hardware

Operating System

Applications

I/O Subsystem Network Interface

Memory Processors, V1(P)

Hardware

I/O Subsystem Network Interface

Virtualized Layer

Hardware

Operating System

Applications

Memory Processors, V2(P)

I/O Subsystem Network Interface

Virtualized Layer

Virtualization Manager

14CMG 06 Reno

Memory

Processors

Hardware

Operating System

Applications

I/O Subsystem Network Interface

Memory Processors, V1(P)

Hardware

I/O Subsystem Network Interface

Virtualized Layer

Hardware

Operating System

Applications

Memory Processors, V2(P)

I/O Subsystem Network Interface

Virtualized Layer

Virtualization Manager

A Queueing Model for Two GuestsA Queueing Model for Two Guests

2/x0s

2/x0s

x s

sx S

15CMG 06 Reno

Partition or not?Partition or not?

You pay overhead for partitionbut it is easy to manage andresults are more predictable.

Without partition, you may serve more

16CMG 06 Reno

Two ways to serve guestsTwo ways to serve guests

Each guest owns a (virtual) server Separate queuesSupermarket model

Guests share the physical processor(s)Single queueBank model

17CMG 06 Reno

Supermarket Model: (M/M/1) Supermarket Model: (M/M/1) × × mm

18CMG 06 Reno

2/x s

2/xs

x

Supermarket Model: (M/M/1) Supermarket Model: (M/M/1) × × mm

19CMG 06 Reno

Bank Model: M/M/mBank Model: M/M/m

20CMG 06 Reno

s

sx

Bank Model: M/M/mBank Model: M/M/m

21CMG 06 Reno

How Many Guests Can You Serve?How Many Guests Can You Serve?

Memory

Processors

Operating System

Applications

I/O Subsystem Network Interface

Memory Processors

Hardware

I/O SubsystemNetwork Interface

Virtualized Layer

Virtualization Manager

Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer … Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer

22CMG 06 Reno

The Difference: Virtualized vs. PhysicalThe Difference: Virtualized vs. Physical

Memory

Processors

Operating System

Applications

I/O Subsystem Network Interface

Memory Processors

Hardware

I/O SubsystemNetwork Interface

Virtualized Layer

Virtualization Manager

Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer … Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer

s

sx

23CMG 06 Reno

Model as M/M/m or M/M/1, with OverheadModel as M/M/m or M/M/1, with Overhead

Memory

Processors

Operating System

Applications

I/O Subsystem Network Interface

Memory Processors

Hardware

I/O SubsystemNetwork Interface

Virtualized Layer

Virtualization Manager

Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer

…Operating System

Applications

Memory Processors

I/O SubsystemNetwork Interface

Virtualized Layer

s

sx

24CMG 06 Reno

Three types of overheadThree types of overhead

Consolidate m (identical) separate physical servers each with utilization u as guests on a single machine n times as powerful as the individual servers

Constant Overhead for virtualization management: c

1. Overhead proportional to number m of guests: f0 per partition, m×f0 total

2. Overhead proportional to guest utilization u: f per second per guest, f×m×u total

Total Utilization:

U = (1+f)×m×u/n + m×f0 + c

25CMG 06 Reno

Example: consolidate 50 serversExample: consolidate 50 servers

29

5 4 3 2 2 3 2

Server Distribution by Utilization

Assuming Processing Power = 1for each server

26CMG 06 Reno

Processing power needed for supporting Processing power needed for supporting the number of partitions (SLA = 2 seconds)the number of partitions (SLA = 2 seconds)

Throughput per partition

Relative Processing Power

Max Number of Partitions

0.1 3.4 29

0.2 1.5 5

0.3 1.7 4

0.4 1.7 3

0.5 1.5 2

0.6 1.7 2

0.7 2.6 3

0.9999 2.5 2

29

54 3 2 2 3 2

Server Distribution by Utilization

Assuming Processing Power = 1for each server

27CMG 06 Reno

Throughput per partition

Relative Processing Power

Max Number of Partitions

0.1 3.4 29

0.2 1.5 5

0.3 1.7 4

0.4 1.7 3

0.5 1.5 2

0.6 1.7 2

0.7 2.6 3

0.9999 2.5 2

28CMG 06 Reno

Overhead Reduces Number of Supportable Partitions for Same SLAOverhead Reduces Number of Supportable Partitions for Same SLA

Max Number of Partitions with and without Overhead(SLA = 2 Seconds)

0

10

20

30

40

0 0.2 0.4 0.6 0.8 1 1.2

Server Utilization before Virtualization

Relative Processing Power Max Number of Partition without Overhead

Max Number of Partitions (10% Fixed Overhead)

s

Throughput per Partition

Relative Proc. Power

Max Number of Partition without Overhead

Max Number of Partitions (10% Fixed Overhead)

0.1 3.4 29 25

0.2 1.5 5 4

0.3 1.7 4 3

0.4 1.7 3 2

0.5 1.5 2 1

0.6 1.7 2 1

0.7 2.6 3 2

0.9999 2.5 2 1

29CMG 06 Reno

Throughput per Partition

Relative Proc. Power

Max Number of Partition without Overhead

Max Number of Partitions (10% Fixed Overhead)

0.1 3.4 29 25

0.2 1.5 5 4

0.3 1.7 4 3

0.4 1.7 3 2

0.5 1.5 2 1

0.6 1.7 2 1

0.7 2.6 3 2

0.9999 2.5 2 1

30CMG 06 Reno

Increase Processing Power to Compensate for Overhead to Increase Processing Power to Compensate for Overhead to Support the Number of PartitionsSupport the Number of Partitions

Throughput per Partition

Relative Processing Power (10% more for Fixed Overhead)

Relative Processing Power (without Overhead)

Max Number of Partitions (10% Fixed Overhead)

0.1 3.8 3.4 29 (25)

0.2 1.7 1.5 5 (4)

0.3 1.9 1.7 4 (3)

0.4 1.9 1.7 3 (2)

0.5 1.7 1.5 2 (1)

0.6 1.9 1.7 2 (1)

0.7 2.9 2.6 3 (2)

0.9999 2.8 2.5 2 (1)

31CMG 06 Reno

32CMG 06 Reno

33CMG 06 Reno

If we choose one type of sever to support all If we choose one type of sever to support all

Relative Processing Power

Min Number of Servers Needed

1.5 13

1.7 11

2.5 8

2.6 8

3.4 6

How many do we need for each server type ?

29

5 4 3 22 3 2

Server Distribution by Utilization

Assuming Processing Power = 1for each server

34CMG 06 Reno

SLA Matters TooSLA Matters Too

Min Number of Servers Needed (10% Fixed Overhead, Different SLA)

0

5

10

15

20

0 0.5 1 1.5 2 2.5 3 3.5 4

Relative Processing Power (10% more for Fixed Overhead)

Min Number of Servers Needed (SLA = 1 Seconds)

Min Number of Servers Needed (SLA = 2 Seconds)

Relative Power

Min Number of Servers Needed (SLA = 1 Seconds)

Min Number of Servers Needed (SLA = 2 Seconds)

1.5 16 13

1.7 14 11

2.5 10 8

2.6 9 8

3.4 7 6

How many servers do we need?

35CMG 06 Reno

The impact of fixed overhead and overhead per partition for the Same The impact of fixed overhead and overhead per partition for the Same

SLASLA

Throughput per Partition

Relative Proc. Power

Max Number of Partition without Overhead

Max Number of Partitions (10% Fixed Overhead)

0.1 3.4 29 25

0.2 1.5 5 4

0.3 1.7 4 3

0.4 1.7 3 2

0.5 1.5 2 1

0.6 1.7 2 1

0.7 2.6 3 2

0.9999 2.5 2 1

Max Number of Partitions (10% Fixed Overhead and 2% Overhead per Partition)

15

3

3

2

1

1

2

1

Max Number of Partitions (10% Fixed Overhead and 5% Overhead per Partition)

9

3

2

2

1

1

2

1

36CMG 06 Reno

The relationship between Memory Size and Paging RateThe relationship between Memory Size and Paging Rate

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 200 400 600 800 1000 1200 1400

Memory Size (MB)

Pag

ing

Rate

(P

ag

es /

Seco

nd

)

When you ask for what’s not in memory, paging occurs; the larger the memory, the higherthe chance what you ask is in memory

37CMG 06 Reno

Example: VMware ESX Memory ManagementExample: VMware ESX Memory Management

“… With ESX Server it is possible to have 10 virtual machines, each with 3.6GB of RAM available to their operating systems and applications, on a 2 CPU system with 16 GB of physical RAM.” - VMware White Paper: “Virtualization: Architectural Considerations And Other

Evaluation Criteria”

It that true?

38CMG 06 Reno

When average demand is low, virtualization is betterWhen average demand is low, virtualization is better

-0.02

0

0.02

0.04

0.06

0.08

0.1

0 0.2 0.4 0.6 0.8 1 1.2

Mean memory demand per server (GB)

Prob

abili

ty

Prob. of requiring more than 16 GB for 10 virtual servers

Prob of requiring more than 3.6 GB for 1 physical server

A crossing point: average memory demand of 900MB

39CMG 06 Reno

WMware ESX Virtual Ethernet SwitchWMware ESX Virtual Ethernet Switch

Virtual Machines / Guests

Outbound Adapter

Virtual NetworkVirtual Network

40CMG 06 Reno

Virtual Machines / Guests

Outbound Adapter

Communication pattern determines how many guests Communication pattern determines how many guests it can support (communicate among guests)it can support (communicate among guests)

41CMG 06 Reno

Virtual Machines / Guests

Outbound Adapter

Communication pattern determines how many guests Communication pattern determines how many guests it can support (communicate to outside world)it can support (communicate to outside world)

42CMG 06 Reno

How Many Guests Can You Serve?How Many Guests Can You Serve?