Andrey Savochkin leads the development of the kernel portion of OpenVZ, an operating system-level server virtualization solution. In an interview on KernelTrap, Andrey offers a thorough explanation of what virtualization is and how it works. He also discusses the differences between hardware-level and operating system-level virtualization, going on to compare OpenVZ to VServer, Xen and UserMode Linux.
Until he comes out with a finished product.If he does though,it will easily beat VMware.
Virtuozzo is the finished product version of OpenVZ. But to beat VMware ESX I think it needs more work, like being certified by Red Hat and SuSE and supporting different patch levels in different containers. I don’t really think it matters whether OpenVZ/Virtuozzo beats VMware, though, since they can probably both survive in different markets.
Virtualization on Linux continues to get better and better. Xen with the live server mirgation is great! The thing that is still missing for many of these solutions is the GUI based management interface IMO. Yes, yes, any Linux guy or gal worth their mud doesn’t need one, but if they are going to make it to the main steam . . . it’s a must.
The description sounds like the equivalent of Solaris Zones for Linux. Which is necessary, as Linux doesn’t really have an equivalent yet.
I like this interview. It’s a lot more open about how things work and where the project is going than the Sun documents I am used to reading.
> The description sounds like the equivalent of Solaris Zones for Linux.
Exactly my thought.
> I like this interview. It’s a lot more open about how things work and where the project is going than the Sun documents I am used to reading.
What’s not “open” about the zone?
http://www.opensolaris.org/os/community/zones/
How things work:
http://www.sun.com/bigadmin/content/zones/zones_lisa.pdf
Where the project is going:
http://www.opensolaris.org/os/community/zones/zones_design_docs/
What “lot more” did you get from this interview v.s. all the docs/discussions on zone’s commnutiy site?
“The description sounds like the equivalent of Solaris Zones for Linux. Which is necessary, as Linux doesn’t really have an equivalent yet”
Actually, Zones for Solaris sound a lot like Jails for FreeBSD or Virtuozo for Linux. Both have been around a lot longer than Zones.
“The description sounds like the equivalent of Solaris Zones for Linux. Which is necessary, as Linux doesn’t really have an equivalent yet”
Actually, Zones for Solaris sound a lot like Jails for FreeBSD or Virtuozo for Linux. Both have been around a lot longer than Zones.
It should also be pointed out Virtuozo is not built into Linux as standard, compared to BSD Jails and Solaris Zones/Containers. VServer also deserves a mention as a similar system for Linux.
Great read. I’d love to have this in Linux. I love to trash my system with questionable programs from questionable sources, but I hate to constantly reinstall. I’d love just to delete a compartment and be done with it. Sometimes integration is needed on the desktop, but sometimes you really want to isolate beta programs, and potential spyware filled crap. Oh, and it helps when you surf porn a lot . . . not that I do. Hope this works out.
1) Use OpenVZ if you want distinct virtual machines running the same kernel, but potentially different flavors of Linux
2) Use VMWare if you want to run completely different OSs, eg Windows or BSD as well as Linux, on what they will think are different physical machines.
3) Use Xen if you want VMWare but only to run multiple Linux kernels
4) Use xdmcp if you want to run a thick client with local booting and have people log in remotely over a secure network to one multi user system
5) Use ltsp if you want to have a thin client with network booting.
6) Use VNC and derivatives if you want to join or run an existing session on a remote machine from a fully booted OS.
Is this about right?
2) Use VMWare if you want to run completely different OSs, eg Windows or BSD as well as Linux, on what they will think are different physical machines.
Don’t forget VMWare is not a product itself (there is the player, workstation, and various server products)
there is also UML (user mode linux) wich isn’t that good performance-wise
4, 5 and 6 are about right, but they don’t have anything to do with virtualization.
there are also other interesting things like OpenSSI wich is a Single System Image based on a cluster.
I would also add:
7. nomachines/freenx server to connect to a server from any client where network resources are limited and enhanced security required.
Not really virtualization so much as a method to connect to a terminal server, much akin to 4 – 6 on your list.
Where would parallels (or whatever they’re called) fit?
I think Parallels is a virtual hardware system – an alternative to the VMWare workstation product. There seems to be one host OS, and then the different guest OSs each think they are running on dedicated hardware.
The thing I still feel puzzled about is the relation between virtualisation and multi user systems. I do understand that when you do remote log in, and share the host computer between different stations, as with ltsp or xdmcp etc, that there is no direct relation with virtualisation. But sometimes you find people suggesting you should combine the two – the users doing remote logins should be given their own virtual machines.
Now, when is it a good idea to do this, and when should you just have a non virtualised system with multiple concurrent users? Is it a matter of security only? Or are there performance considerations too? Is virtualisation something you would do if you also wanted to run a server on the same machine that is running the multiple user sessions, for instance?
3) Use Xen if you want VMWare but only to run multiple Linux kernels
Xen runs a lot more than just Linux, and it’s nothing like VMWare.
VMWare is a hardware emulator. Each OS runs on its own simulated hardware platform.
Xen is a hypervisor. Each OS runs on the same hardware, and Xen manages access to it. Xen is, in effect, a “hardware” platform, in that OSes need to be ported to it.
Big difference.
3) Use Xen if you want VMWare but only to run multiple Linux kernels
Xen runs a lot more than just Linux,
Correct, some of the BSD’s run on Xen, as does an early port of Solaris x86. Windows should also run with VT-x support.
…and it’s nothing like VMWare.
VMWare is a hardware emulator. Each OS runs on its own simulated hardware platform.
Xen is a hypervisor. Each OS runs on the same hardware, and Xen manages access to it. Xen is, in effect, a “hardware” platform, in that OSes need to be ported to it.
Big difference.
Not that big a difference, they are actually very similar.
Both Xen and VMware provide a virtual machine monitor (VMM) which is a software layer between the physical hardware and the OS instances. Xen refers to their VMM as a hypervisor, just another term for this, derived from supervisor of supervisor mode. The VMM provides a virtual hardware interface. Both VMware and Xen provide such an interface. The only difference is that Xen has altered this interface slightly for improved efficiency. This is referred to as paravirtualisation. The downside is that an OS needs to be modified to run on this interface. You could say that the OS is aware that it is running on Xen. VMware could also change their interface to a paravirtualed one, and they are reported to be doing exactly that. VMware didn’t opt for paravirtualisation initially, because they wanted to provide compatiblity with existing operating systems, such as Windows, without having to need changes to the Windows source. So VMware supports Windows on processors without VT-x, whereas Xen doesn’t.