420 likes | 519 Views
How Many Guests Can You Serve? - On the Number of Partitions. Yiping Ding and Ethan Bolker. Why Consolidation and Virtualization?. It is the power, space, …. Common Sense. “Figure out how many will fit around your dining room table even before you begin to think about how much they will eat.”
E N D
How Many Guests Can You Serve?- On the Number of Partitions Yiping Ding and Ethan Bolker
Common 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: • What is the size of the dining room? • What is the size of the table? • How many tables can fit in the dining room?
A huge table in a large dining room: no partition High Utilization
Small tables in a large dining room: partition Low Overhead
Large tables in a huge dining room: partition High Overhead
A large table in … It’s all yours
A Basic Computer System without Virtualization Applications Operating System Hardware Processors Memory I/O Subsystem Network Interface
Vocabulary • Partition = guest = virtual partition • Server = processor
Two virtual machines on one physical system Applications Applications Operating System Operating System Virtualized Layer Virtualized Layer Memory Processors, V1(P) Memory Processors, V2(P) Network Interface Network Interface I/O Subsystem I/O Subsystem Hardware Hardware Virtualization Manager Processors Hardware Memory Network Interface I/O Subsystem
A Queueing Model for Two Guests Applications Applications Operating System Operating System Virtualized Layer Virtualized Layer S Memory Processors, V1(P) Memory Processors, V2(P) Network Interface Network Interface I/O Subsystem I/O Subsystem Hardware Hardware Virtualization Manager Processors Hardware Memory Network Interface I/O Subsystem
Partition or not? You pay overhead for partition but it is easy to manage and results are more predictable. Without partition, you may serve more
Two ways to serve guests • Each guest owns a (virtual) server • Separate queues • Supermarket model • Guests share the physical processor(s) • Single queue • Bank model
How Many Guests Can You Serve? Applications Applications Applications … Operating System Operating System Operating System Virtualized Layer Virtualized Layer Virtualized Layer Memory Processors Memory Processors Memory Processors Network Interface Network Interface Network Interface I/O Subsystem I/O Subsystem I/O Subsystem Virtualization Manager Processors Hardware Memory Network Interface I/O Subsystem
The Difference: Virtualized vs. Physical Applications Applications Applications … Operating System Operating System Operating System Virtualized Layer Virtualized Layer Virtualized Layer Memory Processors Memory Processors Memory Processors Network Interface Network Interface Network Interface I/O Subsystem I/O Subsystem I/O Subsystem Virtualization Manager Processors Hardware Memory Network Interface I/O Subsystem
Model as M/M/m or M/M/1, with Overhead Applications Applications Applications Operating System Operating System Operating System Virtualized Layer Virtualized Layer … Virtualized Layer Memory Processors Memory Processors Memory Processors Network Interface Network Interface Network Interface I/O Subsystem I/O Subsystem I/O Subsystem Virtualization Manager Processors Hardware Memory Network Interface I/O Subsystem
Three 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 • Overhead proportional to number m of guests: f0 per partition, m×f0 total • 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
Example: consolidate 50 servers Server Distribution by Utilization 29 Assuming Processing Power = 1 for each server 5 4 3 3 2 2 2
Processing power needed for supporting the number of partitions (SLA = 2 seconds) Server Distribution by Utilization 29 Assuming Processing Power = 1 for each server 5 4 3 3 2 2 2
Overhead Reduces Number of Supportable Partitions for Same SLA
Increase Processing Power to Compensate for Overhead to Support the Number of Partitions
If we choose one type of sever to support all Server Distribution by Utilization How many do we need for each server type ? 29 Assuming Processing Power = 1 for each server 5 4 3 3 2 2 2
SLA Matters Too How many servers do we need?
The impact of fixed overhead and overhead per partition for the Same SLA
The relationship between Memory Size and Paging Rate When you ask for what’s not in memory, paging occurs; the larger the memory, the higher the chance what you ask is in memory
Example: 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?
When average demand is low, virtualization is better A crossing point: average memory demand of 900MB
Virtual Machines / Guests WMware ESX Virtual Ethernet Switch Outbound Adapter Virtual Network
Virtual Machines / Guests Outbound Adapter Communication pattern determines how many guests it can support (communicate among guests)
Virtual Machines / Guests Outbound Adapter Communication pattern determines how many guests it can support (communicate to outside world)