35
votes

I'm trying to decide on which of these to use. The ones I know about are:

Now ideally I'd like the following features:

  • Ideally to be able to boot a real partition rather than a file representing a virtual hard disk (so it's readable and writable by the host OS);
  • Have good networking support (for example, setting up virtual interfaces for KVM such that they can use DHCP to get a "real" IP address was painful);
  • Has good performance, using the VT hardware support where available;
  • Supports 64-bit guests;
  • Has a good graphical administrator tool; and
  • Has good support for scripting guest creation.
2
  • 5
    One point about VT hardware support. VT doesn't have any real performance benefits vs. other techniques, it just makes it easier to implement a virtual machine monitor.
    – Mike Akers
    May 5, 2009 at 22:11
  • Shopping Questions are Off-Topic on any of the Stack Exchange sites. See Q&A is hard, lets go Shopping and the FAQ for more details.
    – Chris S
    Sep 20, 2012 at 17:35

9 Answers 9

20
votes

Virtualbox, VMWare Workstation/Player/Server, QEMU, User-mode-linux etc fall into one category of VM - they're hosted within an existing OS, such as windows or linux.

Xen, KVM, VMWare ESX, fall into a different category - they're hypervisor based virtualisation stacks. They still have an OS that gets booted first, but they operate at a fundamentally different layer.

As to which one suits you best, it depends on what want to do with them. If you want to run VMs on your workstation, for development or testing purposes, then one of the hosted platforms (Virtualbox, VMWare Workstation etc), is ideal.

If you actually want a dedicated server environment for production systems, then you should be looking at the second category of systems, as they offer more advanced features which you may want down the line (server pooling, shared storage, live migration, high availability)

4
  • 8
    Get your facts straight. KVM runs within the Linux kernel, so you need a full Linux host system to use it. QEMU+KVM is not "fundamentally" different from VirtualBox & friends.
    – intgr
    Jan 29, 2010 at 21:52
  • 3
    uh, yes. That's right, at least from a practical point of view. Feb 8, 2010 at 20:01
  • 1
    @intgr, sure, and so does ESX, but it's just the kernel, not a complete operating system with lots of programs and possibly even GUI, it's a minimal OS focused on only running virtual machines. Oct 12, 2010 at 9:37
  • 3
    "hypervisor" is mostly a bastardized buzzword that doesn't have a clear meaning. With that said - Xen, KVM, ESX, and VirtualBox are all tied in to the kernel. The fact that Xen, KVM, and VirtualBox run on a linux install doesn't really matter because they all run within the kernel, as does ESX except that ESX has it's own kernel rather than running in the linux kernel.
    – James
    May 19, 2011 at 20:09
9
votes

I'm pretty sure VirtualBox fits the bill for all of your criteria.

2
  • 2
    VirtualBox can cover all the OPs feature requests. I did some performance testing with KVM, ESX, and VBox - VBox and ESX came out way ahead of KVM with VBox a little ahead of ESX. VBox has by far the best commandline usage IMO. Also, KVM requires cpu support, VBox does not and still runs just as fast without it (unlike the slower than heck Qemu). phpVirtualBox is the best interface that any of them have (VCenter is nice, but does not run on linux).
    – James
    May 19, 2011 at 20:18
  • So, IMO, KVM is not even a contender. VBox beats ESX because it's open source and has an excellent web ui. ESX beats VBox in ease-of-setup. In the end, I use ESX at work and VBox at home. We've had ESX at work since before VBox existed; if I did it over, I would probably also use VBox at work.
    – James
    May 19, 2011 at 20:21
7
votes

Try Citrix XenServer (it's free!). We use it at work and it does the job really well. I've found it much faster than VMWare.

The only requirement from your list it doesn't fulfill is that you need a separate machine as a VM server. Then you can connect to the machines over the network using XenCenter admin console, which is very similar to VMWare one. The console is available for Windows, don't know about linux as I use Windows as a client.

4
  • Last time I tried Citrix the admin client was Windows only though that was a year or so ago.
    – Mark
    May 1, 2009 at 8:30
  • It's possible it still is. I live in Windows-centric world...
    – ya23
    May 1, 2009 at 9:37
  • @Mark- they have added a linux support, you have to install the tools for it though, Windows support is install by default.
    – TStamper
    May 6, 2009 at 14:27
  • last time I tried this.. I was requested to activate free license each month.. impossible for companies )
    – holms
    Nov 9, 2011 at 18:46
4
votes

I use Virtual Machine Manager on my Fedora Linux. It's a front-end that uses Xen, Qemu and KVM. Very like VMware server.

0
3
votes

I use virtualization myself and I can very much recommend VMware server. Try out their ESX solution, it's free and incredibly powerful.

It installs as the OS on the host computer with only 32 MB ram overhead. (it's basicly a Linux with the VMware virtualization technology)

You can simply move running OS's to the VMware ESX, or import them from a drive. The admin tool is webbased and works like a charm. You can also use their 'Infrastructure client' on windows. Since it's completely free, it's very much worth trying.

Word of caution: Watch out with booting from a real partition. Stuff can get mangled if you boot the same partition from a virtual machine again. Sounds crazy, I know, but I've seen people try this and it almost always wrecks the OS.

(No, I don't have any affiliation with VMware, I'm just a very happy user)

3
votes

Just a note about your first requested feature.

Ideally to be able to boot a real partition rather than a file representing a virtual hard disk (so it's readable and writable by the host OS);

This shouldn't be a concern. You can generally mount any kind of file-based VM image using Linux's loopback device should you need to do so. This is true for raw, VHD, VMDK, qcow, etc.

1
  • 1
    You can mount a VMDK with a loopback device? How?
    – Jakob Borg
    Aug 26, 2011 at 5:49
2
votes

Virtualbox is a nice piece of virtualization software.

1
vote

I really like VMWare Server. I use it on my Ubuntu box to run a 2003 Windows server and 2008 Windows server. It is pretty rock solid.

2
  • which version of vmware server? I'm playing with the unsupported config of a win2008 guest in 1.0.9 and having inconsistent results.
    – DDM
    May 3, 2009 at 7:09
  • VMWare Server 2.0.x I don't recall which .x though. It has been released for some time and I recommend upgrading. May 4, 2009 at 18:07
1
vote

I use VMWare Server and have since it was released. I believe it has all the features you mentioned although I've never used the feature to use an actual disk and am not sure about scripting guest creation.

I've used it both on my laptop (linux) and my desktop(Windows XP) for development purposes (testing software across multiple OS's) and am using it to run my webserver for my hosted sites as well.

Not the answer you're looking for? Browse other questions tagged .