“This guide is written during an install of a Supermicro machine with 2 dual-core opterons (64-bit), 2 identical disks (for RAID) and a load of memory. Why OpenVZ and not XEN or the recent KVM kernel module? Well, XEN is not very stable for 64-bit architectures (yet), and it comes with quite a bit of overhead (every VM runs its own kernel) due to its complexity. KVM is very simple but restricts you to run a kernel as one process, so the VM cannot benefit from multi core systems.”
OpenVZ has clear advantages if you only need seperate environments in the same OS:
* There are finer controls for resource sharing
* It allows much higher density (hundreds of zones in a physical machine).
* Zones are much smaller than virtual machines (eg ~100MB zone versus ~500MB regular install)
* There is little I/O and network overhead
* You do not have to worry about details like synchronizing time, upgrading kernel, etc that you should in virtual machines.
So as long as sharing one kernel is sufficient for your job, OpenVZ is a better alternative than Xen or VMware.
Edited 2006-12-26 13:02
Right, every virtualized by KVM OS runs as one process. But this one process have as many threads as virtualized CPUs. Each thread could run on other CPU, fully exploiting SMP.
Don’t know where he’s getting the info that Xen 3.x is unstable on 64-bit hardware. Haven’t seen anything of the sort in the Xen / XenEnterprise forums. And we haven’t had any trouble with our 64-bit Xen box (Tyan Thunder K8SD-Pro motherboads, dual-Opteron 246 CPUs, 8 GB RAM, 12x 400 GB SATA HD in RAID5, 3Ware Escalade 9550SX-12 RAID controller). We have 5 Debian etch (64-bit) VMs on that box so far, with the host running Debian etch as well (also 64-bit). Using LVM for the VM stores.
OpenVZ, VServer, Xen, VMWare all serve different parts of the virtualisation spectrum. They can’t really be compared directly.
OpenVZ and VServer don’t provide virtual machines, they just let you divvy up a single OS environment into sub-environments that can be managed separately. Everything runs on a single kernel, and the sub-environments all run the same OS as the “host” (although in some implementations you can run software from older OS versions in the “VM”). Similar to FreeBSD jails and Solaris zones.
VMWare provides an entire virtual computer (right down to the BIOS). You can run any OS in the virtual computer, and it will be completely separate from the host OS. You can treat these virtual computers as if they were separate physical boxes. This tends to be the slowest method, although VMWare has found ways to speed things up a lot over the years.
Xen sits between an OS and the physical hardware, and allows multiple physical OSes to share that hardware. It doesn’t provide a true virtual machine or true virtual hardware (in the way VMWare does). It acts more like a traffic cop managing access to the hardware. It’s the smallest, and (in theory) the fastest of the virtualisation techniques. It also allows you to run different OSes, and different versions of OSes. Something OpenVZ does not.
Each has a different purpose, each has different strengths. Each can play a role in the same server room (we use VServer on our XTerminal boxes to keep the thin-client stuff separate from the host OS, for example). Don’t look at them as “either A or B or C or D” but rather “A in this situation, B in this situation, etc”. To do otherwise is to do yourself a great disservice.
Edited 2006-12-26 16:34
Until I saw the statement that Xen has a lot of overhead due(every VM runs its own kernel”…not a very accurate comparison. It would have been more flame retardant had he left out the comparisons because his statements are a bit off basis. Falko and the rest of the crew are a great bunch and I use ISPConfig on my shared hosting server. But he is not a xen fan by any means, and has expressed this before.
I have used about every virt solution available on linux, and OpenVZ is a great system. It scales on the fly really well, allowing modification to running VMs. It has a great system for building and destroying machines dynamically, and its dead simple to setup basic machines. but tweaking them to work properly is a whose different ballgame. RAM management and beancounters can be a PITA, escpacially for those who don’t take the time to learn how to properly manage them. A Xen VM with 64MB of ram, performs and behaves just like a box on the shelf with 64MB of ram…no surprises…OpenVZ, not the case. Try running a LAMP with that much ram and it will bomb out pretty quick. New SLM management is suppose to help out with this, however, I am not sure how much of it has trickled down from Virtuzzo.
The primary reason, IMO, that alot of webhosts prefer it, over other solution is the ability to over commit resources.
“It would have been more flame retardant had he left out the comparisons because his statements are a bit off basis. Falko and the rest of the crew are a great bunch and I use ISPConfig on my shared hosting server. But he is not a xen fan by any means, and has expressed this before.”
It think this can be misunderstood. I am a fan of Xen (wrote some tutorials about it), but I think HeLfReZ is referring to the author of the OpenVZ tutorial (it’s not me).
Before going to far down this path, be aware that at least Virtuozzo (the commercial version of OpenVZ) has problems when you use multiple network interfaces inside the VPS’s… Since discovering that we’ve had to remove it from all of our Linux systems.
Yes, my mistake…now falko hurry back to ISPConfig 3 work..chop chop…lol
i wrote the guide, and a also read osnews often. seeing my own guide here is kind of funny.
please people: i wrote the guide for internal documentation purposes only (on an internal trac wiki page). i did not want to do a vitalization package shootout. we choose OpenVZ after trying Xen first, yet we couldn’t get it to work: so we blame Xen 64bit capabilities (not that you have to do that same; we just decided to blame Xen — no hard feelings)
now OpenVZ is what we eat and drink. maybe we add some extra section to it later explaining what we did to harden everything.
take care people!
and remember to smile since you know what Free Software means!
cies breijs.