open source virtualization
TRANSCRIPT
Open Source Virtualization An overview
Kris [email protected]
2
Kris Buytaert
Senior Linux and Open Source Consultant @inuits.be
„Infrastructure Architect“
Linux since 0.98
OpenMosix, openQRM, ...
Early Adopter (Xen, MySQL Cluster)
Automating Large Scale Deployment , High Availability
Surviving the 10th floor testCoAuthor of Virtualization with Xenhttp://www.krisbuytaert.be/blog/http://www.virtualization.com/
3
Why Virtualization Matters
Virtualization vs Virtualization
Where we come from
Now and Xen
Managing Virtual Machines
Where are we heading ?
Agenda
4
Running different operating systems together on 1 machine
separate an operating system from the underlying platform resources
What is Virtualization ?
Consolidation
Saving Idle Cycles
Security
Separating Development/Staging/Production platforms
Hardware Independence
A Greener Environment
Having a budget that needs to be emptied.
All the cool kids are doing it
Why Virtualization Matters
High Availability
Live Migration is not a HA solution !
Vendor Lock In
Heavy IO
Don't virtualize your Databases
Don't virtualize your heavy loaded mailservers
Hardware Dependencies
Live Migration ?
Why Virtualization is Dangerous
Single OS image: Ensim, Vserver, Solaris Zones, openVZGroup user processes into resource containersHard to get strong isolationTypically used for Hosting/Virtual Hosting/ISPRun a lot of almost identical Virtual Machines1 single kernel
Chroot’s on steroids
Virtualization vs Virtualization
Full virtualization: VMware, VirtualPC, Qemu, VirtualBoxRun multiple unmodified guest OSesHard to efficiently virtualize x86No Access to the hardwareNo Realtime guaranteesProblematic for certain privileged instructions
Virtualization vs Virtualization
Para-virtualization: UML, Xen, Run multiple guest OSes ported to special archArch Xen/x86 is very close to normal x86Some Access to underlying hardware Better PerformanceNeeds modification to the OS
Virtualization vs Virtualization
Hardware Supported VirtualizationXen
KVM
Others adopted slowly
No more changes to the software ,
Hardware solves the problem
Virtualization vs Virtualization
IBM Mainfraimes
First Virtualization Aquisition Ever ?
Looking back at a decade of Virtualization
IBM Mainframes
First Virtualization Aquisition Ever ?
1994 Kevin Lawton starts Bochs developmentFull x86 emulator
1999 Work on Plex86 starts (aka FreeMWare)Lightweight Linux Virtualization
1999 Mandrake Software buys Bochs
Looking back at a decade of Virtualization
For those unfamiliar with my background, I authored a full x86 PC emulation project in the 1990's, called bochs. It was used in one form or another, by a number of virtualization players, including an R&D project at Stanford which became Vmware.
Kevin Lawton on his blog march 2009
Looking back at a decade of Virtualization
DOSEmu
Win4Lin
Wine
Oldskool Emulation
VNC
FreeNX
NoMachines, lightweigth, proxies
This is Decades old :X11 !!!
VmWare View: Open Source Client
Is this Virtualization ?
UML vs UMLinux
Jeff Dike : User Mode Linux
Run Linux on Linux As a “process”
UMLinux
Run Linux on Linux :)
Mainly to run test scenarios
Rebranded later to Faumachine
The land of Confusion:
LVS vs Linux Vserver
Linux Virtual Server
Act as 1 virtual server
Pass TCP/IP Connections to others
Linux Vserver
Kernel Isolation
Chroot on steroids
More Land of Confusion
Chroots on SteroidsBased on BSD Jails
Look really really similar
According to the developers no shared codebase
OpenVZ , LinuxVServer
OpenVZ =~ opensource Virtuozzo
Swsoft 1997
Virtuozzo 2001
2003 Swsoft buys Plesk
SWSoft buys Parallels but “forgets” to tell
Eventually rebrands to Parallels late 2007
Kernel Inclusion ?
OpenVZ , Virtuozzo
CoLinux
Running Linux on Windows
Looking back at a decade of Virtualization
Paul “Rusty” RussellLhype
WonkyVisor
RustyVisor
Lhype
Linux on Linux, but fast, no vt req , same kernel
Lguest,Lhype, RustyVisor
QemuFabrice Bellard.
Not just x86qemuarm qemumips qemui386 qemuppc qemusparc qemum68k
“Slow”
Patch , first non free, later free
Components Used in A LOT of projects !
Do I really need VMWare ?
Innotek (Stuttgart) Open Source VMWare alternativeGreat Desktop Support Bought by Sun (just before Fosdem 2008)
Now part of the xVM suite
Virtualbox
Let‘s talk about XenPioneered ParaVirtualisation
Pioneered VT support
Went Mainstream real fast !
Stable and performant platform
ScriptableTargeted at Server Platforms
98% CPU Speed
Open Source
Known Developers
Event Channel Virtual MMUVirtual CPU Control IF
Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)
NativeDeviceDriver
GuestOS(XenLinux)
Device Manager & Control s/w
NativeDeviceDriver
GuestOS(XenLinux)
UnmodifiedUser
Software
Front-EndDevice Drivers
GuestOS(XenLinux)
UnmodifiedUser
Software
Front-EndDevice Drivers
UnmodifiedGuestOS(WinXP))
UnmodifiedUser
Software
Safe HW IF
Xen Virtual Machine Monitor
Back-End Back-End
VTx
AGPACPIPCI SMP
Major Distro'sRedHat
Suse
Who was first ?
Fighting over “stability”
Hardware Vendors
IBM, Intel, ....
Xen adoption
Amazon EC2Oracle VMOwn Code ?
Hosting next Xen summit
Sun xVMPart of the suite
Virtual Iron
Xen adoption cont.d
Kernel Based Virtual MachineVT Required“just a module”/usr/local/kvm/bin/qemu*Came out of nowhere+/ 6 weeks before kernel inclusionSince 2.6.20 Lean and MeanDesktop Oriented
KVM
Main Funding of KVM development
A Remote Virtual Desktop SolutionProprietary Own protocolCommercial Solid ICE
Now @ RedHat
Qumranet & KVM
Enomaly
Libvirt
Ovirt
OpenQRM
Managing Your Virtualization Platform
Enomaly
OpenNebula
OpenQRM
Nimbus
SnowFlock
Eucalyptus
Building your own cloud
What is openQRM ?
open-source project at sourceforge.net (GPL)data-center management platformNot just your virtual platformsprovides generic virtualization layerDeploy on demandSupport for physical , Xen, VMWare, Vserver, KVM OpenQRM 4 is a full rewrite
OpenQRM : build your Virtual data-center
logical layer for servers/services called virtual environments (VE)virtual environments consist of :a boot-image (e.g. a linux kernel)a root-file system (local, NFS, ISCSI)provisioning meta-datadeployed according provisioning meta-data on idle resources
Choice is personalXen for Servers
VirtualBox for Desktops
Keeping an eye on KVM
LinuxVServer for chroot on steriods
Which Virtual Platform to choose
Xen @ CitrixOracle to hosted Xen Summit
VMWare going real open ?
KVM @ RedHat
OpenVZ in the Kernel ?
Xen in the Kernel ?
Oracle buying Virtual Iron ?
The Future
`
Kris Buytaert <[email protected]>Further Readinghttp://www.krisbuytaert.be/blog/http://www.inuits.be/http://www.virtualization.com/http://www.oreillygmt.com/
? !