Virtual Machine and its Role in
Distributed Systems
Virtualization
• Virtualization deals with “extending or replacing
an existing interface so as to mimic the behavior
of another system”
• Virtual system examples: virtual private network
(VPN), virtual memory, virtual machine
• Run legacy software on non-legacy hardware
• Run multiple operating systems on the same
hardware
• Create a manageable upgrade path
• Manage outages (expected and unexpected)
dynamically
• Reduce costs by consolidating services onto
the fewest number of physical machines
http://www.vmware.com/img/serverconsolidation.jpg
Non-virtualized Data Centers
• Too many servers for too little work
• High costs and infrastructure needs
– Maintenance
– Networking
– Floor space
– Cooling
– Power
– Disaster Recovery
Dynamic Data Center
• Virtualization helps us break the “one service per
server” model
• Consolidate many services into a fewer number of
machines when workload is low, reducing costs
• Conversely, as demand for a particular service
increases, we can shift more virtual machines to run
that service
• We can build a data center with fewer total resources,
since resources are used as needed instead of being
dedicated to single services
VM workload multiplexing
– Multiplex VMs’ workload on the same group of physical
servers
• Aggregate multiple workload. Estimate total capacity need
based on aggregated workload
• Performance level of each VM be preserved
Separate VM
sizing
VM multiplexing
s1s2
s3
We expect s3 < s1 + s2. Benefit of
multiplexing !
So, it is just like Java VM, right?
Thee Virtualization Approaches
Full Virtualization
Paravirtualization
Hardware-assisted Virtualization
Full Virtualization
– Everything is virtualized
– Full hardware emulation
– Emulation = latency
Privileged Instructions
– Privileged instructions: OS kernel and device
driver access to system hardware
– Trapped and emulated by VMM
Pros and Cons – Full
Virtualization
• Pros
– Disaster recovery, failover
– Virtual appliance deployment
– Legacy code on non-legacy hardware
• Cons – LATENCY of core four resources
– RAM performance reduced 25% to 75%
– Disk I/O degraded from 5% to 20%
– Network performance decreased up to 10%
– CPU privileged instruction dings nearing 1% to 7%
Paravirtualization
–OS or system device drivers are virtualization aware
Requirements:
–OS level – recompiled kernel
–Device level – paravirtualized or “enlightened”
device drivers
Paravirtualization
• Pro: fast
• Con: requires a specially modified guest OS, thus
precludes the ability to run off-the-shelf and legacy
OS in paravirtual environments
Hardware-assisted
Virtualization
– Server hardware is virtualization aware
– Hypervisor and VMM load at
privilege Ring -1 (firmware)
– Removes CPU emulation bottleneck
– Memory virtualization coming in quad
core AMD and Intel CPUs
Evolution of Software solutions*
• 1st
Generation: Full
virtualization (Binary
rewriting)
– Software Based
– VMware and
Microsoft
Time
• 3rd
Generation: Silicon-
based (Hardware-
assisted) virtualization
– Unmodified guest
– VMware and Xen on
virtualization-aware
hardware platforms
• 2nd
Generation:
Paravirtualization
– Cooperative
virtualization
– Modified guest
– VMware, Xen
Dynamic Translation
Virtual
Machine
Hardware
Operating System
Virtual
Machine
…
Hypervisor
Hardware
VMVM
Hardware
Virtual
Machine
Virtual
Machine
…
Virtualization Logic
Hypervisor
…
*This slide is from Intel® Corporation
How to ensure that different distributed applications do not get
into each other’s way?
Virtualization ppt1
Virtualization ppt1

Virtualization ppt1

  • 1.
    Virtual Machine andits Role in Distributed Systems
  • 2.
    Virtualization • Virtualization dealswith “extending or replacing an existing interface so as to mimic the behavior of another system” • Virtual system examples: virtual private network (VPN), virtual memory, virtual machine
  • 9.
    • Run legacysoftware on non-legacy hardware • Run multiple operating systems on the same hardware • Create a manageable upgrade path • Manage outages (expected and unexpected) dynamically
  • 10.
    • Reduce costsby consolidating services onto the fewest number of physical machines http://www.vmware.com/img/serverconsolidation.jpg
  • 11.
    Non-virtualized Data Centers •Too many servers for too little work • High costs and infrastructure needs – Maintenance – Networking – Floor space – Cooling – Power – Disaster Recovery
  • 12.
    Dynamic Data Center •Virtualization helps us break the “one service per server” model • Consolidate many services into a fewer number of machines when workload is low, reducing costs • Conversely, as demand for a particular service increases, we can shift more virtual machines to run that service • We can build a data center with fewer total resources, since resources are used as needed instead of being dedicated to single services
  • 13.
    VM workload multiplexing –Multiplex VMs’ workload on the same group of physical servers • Aggregate multiple workload. Estimate total capacity need based on aggregated workload • Performance level of each VM be preserved Separate VM sizing VM multiplexing s1s2 s3 We expect s3 < s1 + s2. Benefit of multiplexing !
  • 14.
    So, it isjust like Java VM, right?
  • 16.
    Thee Virtualization Approaches FullVirtualization Paravirtualization Hardware-assisted Virtualization
  • 17.
    Full Virtualization – Everythingis virtualized – Full hardware emulation – Emulation = latency
  • 18.
    Privileged Instructions – Privilegedinstructions: OS kernel and device driver access to system hardware – Trapped and emulated by VMM
  • 19.
    Pros and Cons– Full Virtualization • Pros – Disaster recovery, failover – Virtual appliance deployment – Legacy code on non-legacy hardware • Cons – LATENCY of core four resources – RAM performance reduced 25% to 75% – Disk I/O degraded from 5% to 20% – Network performance decreased up to 10% – CPU privileged instruction dings nearing 1% to 7%
  • 20.
    Paravirtualization –OS or systemdevice drivers are virtualization aware Requirements: –OS level – recompiled kernel –Device level – paravirtualized or “enlightened” device drivers
  • 21.
    Paravirtualization • Pro: fast •Con: requires a specially modified guest OS, thus precludes the ability to run off-the-shelf and legacy OS in paravirtual environments
  • 22.
    Hardware-assisted Virtualization – Server hardwareis virtualization aware – Hypervisor and VMM load at privilege Ring -1 (firmware) – Removes CPU emulation bottleneck – Memory virtualization coming in quad core AMD and Intel CPUs
  • 23.
    Evolution of Softwaresolutions* • 1st Generation: Full virtualization (Binary rewriting) – Software Based – VMware and Microsoft Time • 3rd Generation: Silicon- based (Hardware- assisted) virtualization – Unmodified guest – VMware and Xen on virtualization-aware hardware platforms • 2nd Generation: Paravirtualization – Cooperative virtualization – Modified guest – VMware, Xen Dynamic Translation Virtual Machine Hardware Operating System Virtual Machine … Hypervisor Hardware VMVM Hardware Virtual Machine Virtual Machine … Virtualization Logic Hypervisor … *This slide is from Intel® Corporation
  • 25.
    How to ensurethat different distributed applications do not get into each other’s way?

Editor's Notes

  • #8 Hardware and low-level systems software change quickly High-level software (middleware, applications) changes more slowly
  • #13 Or sitting and waiting until the next spike in demand
  • #19 http://en.wikipedia.org/wiki/Ring_%28computer_security%29 Privilege rings for the x86 available in protected mode Microsoft&amp;apos;s Ring-1 design structure as part of their NGSCB initiative and hypervisors embedded in firmware such as Intel VT-x (formerly Vanderpool).