— Virtualization (@cfisk & @ramareth) —

Co-led by @cfisk (who's working with KVM on Ubuntu 9.04 wants to know more) and @ramereth (OSU Open Source Labs, who knows more and wants to understand the questions).

Basic questions:
- What are the options?
- What should I do?

Reasons to use virtualization

  • Sandbox testing: I want to try something new without trashing my existing system setup
  • Separate staging environment
  • Datacenter resource management


  • OSL uses Xen mostly, but has tried KVM (can't use it everywhere due to Vt req't)
  • Uses Virtualization mostly to help clients scale without requiring new hardware
  • IBM Bladecenter with 14 blades, running 55 VMs; iSCSI backend makes it easy to migrate between nodes; LVM partition for each VM.
  • (Hitting weird limits on iSCSI, but most of the iSCSI alternatives suck as much as NFS does)
  • Lots of RAM is key: 4G each (6-7 VMs in each box). Xen grabs RAM at startup, KVM can swap

What are the options?

  • Xen
    • pro: more mature; lot of stable features
    • con: requires special (dangerously old?) kernel on Dom0 (may be fixed soon?)
  • KVM
    • pro: RedHat & Ubuntu are focusing support on KVM
    • con: requires AMD or Intel paravirtualization extensions (VTi); may not perform as well as Xen (@znmeb's interested in this)
    • virtIO for disk/network/console is useful
    • supports multicore guests
  • VMWare
    • easy if you just want a sandbox
    • Takes advantage of CPU virtualization if it's there
    • Workstation edition ($$) can clone.
  • VirtualBox (There are two versions: an open-source edition, & Sun's proprietary version)
    • easy if you just want a sandbox
    • Takes advantage of CPU virtualization if it's there
    • has easy snapshot support
  • QEMU / Bochs
    • supports emulation of other architectures (eg, MIPS on x86) for cross-development
  • HyperV - Microsoft's server virtualization
  • VirtualPC - Microsoft's desktop virtualization suite
    • supports cloning with a little work
    • hardware support is questionable
    • Windows 7 supports running Windows XP in a virtualization sandbox (using this?)
  • Parallels - Mac only
    • people use this or VMWare Fusion
  • then there's the cloud…
    • Amazon EC2
    • Eucalyptus in Ubuntu 9.10, matches Amazon EC2 API
    • CloudKick - put EC2 instances on SliceHost

Other Resources

  • libvirt (abstraction layer for managing VM environment; gui, cmdline, & API)
  • Ganeti (google management tool)
  • Conga (RedHat's cloud virtualization suite)
wmk.txt · Last modified: 2009/10/26 07:10 by akfarrell