--- 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 @ramareth: * 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)