Sep 122010
 

virtualboxIn this article I want to talk about three great virtualization software for your desktop computer.

Why virtualize?

The current computers have faster CPUs and  more RAM compared to those of 3 or 4 years ago. There is more ability to run a second operating system in parallel to your main operating system. But why do it?

  • To have another operating system (Windows, Linux or other)
  • For testing a new distribution
  • To prepare an environment dedicated to a product. For example, I installed a virtual machine with apache + mysql + everything I need for running a local a copy of my WordPress site

The three products that I will install and analyze on my Ubuntu 10.04 machine are:

  • VMware Player
  • VirtualBox (OSE)
  • KVM

For each of them i will consider a score of 1 to 3 for:

  • Ease of Installation
  • Administrative Tools
  • Features (license included).
  • Virtual appliances available



Vmware player

vmplayer

http://www.vmware.com/products/player/

VMware Player is the easiest way to run multiple operating systems at the same time on your PC. With its user-friendly interface, VMware Player makes it effortless for anyone to try out Windows 7, Chrome OS or the latest Linux releases, or create isolated virtual machines to safely test new software and surf the Web.

Installation

To install VMware player you must go to the VMware site, register, then activate your profile by clicking on a link that will arrive by email.

Then you can download the VMware player. It’s available in a bundle for windows and linux 32 and 64 bits. The file size of the download is around 105 MByte.

Then open a terminal as root user and give the command:

bash /YOURPATH/VMware-Player-3.1.1-282343.i386.bundle

This will start the graphical installer. It will ask if you want to check at startup for new releases, and if you want to send feedback. Then it will start and install everything.

Score:1

Administration

The graphical interface is well designed, and VMplayer options are easily understood. I selected “create a new virtual machine”, then through the wizard I selected an .iso image of Debian Mint, the hardware desired for the VM, and destination of the new VM, all in a very short time. At this point I started and got a nice message:

Your processor does not support PAE, which is required by VMware Player. Cannot continue.

In effect, I have a 32-bit machine with 2 GB of RAM, so why should I need a PAE kernel?

However I installed it with:

sudo aptitude install linux-generic-pae linux-headers-generic-pae

I did a reboot and restarted Vmplayer. When rebooting, some VMware modules are recompiled for compatibility with the new kernel, and the player started with the exact same error.

So nothing to do on my desktop, I removed the software:

vmware-installer –uninstall-product vmware-player

I then installed the VMplayer on my Laptop, with 64 Bit Gentoo.

Score: 2, it would have been a 3 if not for the problems on the desktop.

Features

  • Same administrative interface on Windows and Linux
  • Snapshot of VM available.
  • 32 and 64 bit Virtual machine
  • Up to 8 CPU on the Virtual machine
  • Accelerated 3D graphic option.
  • closed source

Score 2

Virtual appliance

There are a lot of virtual machines available for download at the url: http://www.vmware.com/appliances/

It’s possible to find free virtual machine or real virtual appliances with professional support there.

Score: 3

Conclusions

This software come from a company that has dealt with virtualization for more than 10 years. Because of this. It is certainly stable. But the only reason I see for using it under Linux is to reuse a VM created in Windows, or to exchange the VM with that platform.

Total: 8

Virtual Box

http://www.virtualbox.org/

VirtualBox is a relative newcomer to the virtualization market, with its initial release in early 2007. VirtualBox originally was created by Innotek, but it was then acquired by Sun Microsystems. Sun Microsystems has since been acquired by Oracle. Version 3.0 of the software was released recently and includes many new features.

After several years of intensive development, VirtualBox was released as Open Source in January 2007. Innotek chose to release its VirtualBox source code under the GNU General Public License (GPL).

Installation

VirtualBox ships for Linux hosts as a native package for most distributions. On my Ubuntu 10.04 installation, I just installed virtualbox-ose and all its dependencies from Synaptic.

Score: 3

Administration

Virtual box fat client

VirtualBox includes a native “fat client” for your host OS that allows you to manage your virtual machines. The client is easy to use, and it’s wizard-based—much like the VMware admin console. Creating virtual machines is a snap, and VirtualBox gets kudos for making it as easy as VMware to spin up new virtual machines.

Score: 3

Features

  • Available for windows and Linux
  • four-processor virtualized SMP.
  • 64-bit support for both hosts and guests.
  • Snapshot capability for easy capture and rollback.
  • Accelerated 3D graphic option.
  • dual license open and closed source

Score 3.

Virtual appliance

I’ve found no big repository of Virtual box ready to use virtual machines, the best site i’ve found is http://virtualboxes.org/images/

But don’t worry. If you really want ready to use Virtual machines, you can convert a VMware virtual appliance and use it on Virtualbox.

Check out this nice guide on how to convert from VMware to Virtual Box

Score: 2

Conclusions

Although fairly new, Virtual Box is moving very well, thanks to the dual licensing model. The interface is intuitive and easy to use, and I’m testing Debian Mint thanks to it.

Total: 11

KVM

http://www.linux-kvm.org/page/Main_Page

KVM (for Kernel-based Virtual Machine) is a full virtualization solution for Linux on x86 hardware containing virtualization extensions (Intel VT or AMD-V). It consists of a loadable kernel module, kvm.ko, that provides the core virtualization infrastructure and a processor specific module, kvm-intel.ko or kvm-amd.ko. KVM also requires a modified QEMU although work is underway to get the required changes upstream.

Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc.

The kernel component of KVM is included in mainline Linux, as of 2.6.20.

KVM is open source software.

Installation

KVM requires special extensions that must be present in the processor, so check first if you have a machine compatible with the command:

egrep -c ‘(vmx|svm)’ /proc/cpuinfo

0 means you can not use KVM

1 means that the processor has the right extensions

On my desktop I’ve 0 as output, then KVM is also tested on my laptop with Gentoo 64-bit (and intel dual core).

On my desktop 0 is output. So KVM was tested on my laptop with Gentoo 64-bit and Intel dual-core CPU. On Gentoo I enabled the KVM module in the kernel, and also the kvm-intel module.

If you can use KVM in Ubuntu you should install with the command:

$ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils

libvirt-bin provides libvirtd which you need to administer qemu and kvm instances using libvirt

kvm is the backend

ubuntu-vm-builder powerful command line tool for building virtual machines

bridge-utils provides a bridge from your network to the virtual machines

Score: 2

Administration

KVM, doesn’t have any official management interface. A variety of third-party tools, however, are capable of managing KVM domains. The most popular of these is RedHat’s virt-manager, which offers a simple but efficient graphical interface.

Convirt, from Convirture, is another GUI tool for managing KVM virtual machines.  It’s similar to virt-manager and also supports remote machines as well as local ones.

For my tests I only used the command line. I read the man page for kvm-img, and used it to “format” a file to use as the VM’s disk. KVM was able to initiate the creation of a virtual machine from an iso image I had on disk.

Score: 2

Features

  • Support to 32 and 64 bit Virtual machine
  • live migration
  • optional paravirtualization
  • direct access to the USB bus
  • Available only on Linux (it’s a kernel module)
  • Open source

Score 2 – It would be 3 if I were evaluating Virtualization software for a server solution.

Virtual appliance

I’ve found this site: http://stacklet.com/ it contains basic images of some Linux distribution.

Score 2

Conclusions

KVM is an integrated Linux solution. I find the VM created with it really responsive. The only drawbacks are the lack of features that could be interesting for a desktop solution, 3D graphics for example, or the lack of an administrative GUI.

Total 8

Grand final

So which virtualization solution is best for the Ubuntu desktop?

For the time being–and this is to say nothing of the various options which I’ve not discussed, such as other VMware’s products and Xen. VirtualBox is probably the better choice for users who want a simple application for running mainstream operating systems without ever having to touch a configuration file or open a terminal.

For those interested in cutting-edge virtualization functionality, or who actually prefer the command-line, however, KVM has a lot to offer. At the least, although its developers are clearly focused on the enterprise, it should not be ruled out as a virtualization solution for normal desktop users, especially when it’s combined with GUI management tools.

VMPlayer can be a really interesting solution for people interested in producing Virtual appliance that can run on Linux and windows, as VMware has a great share of this market.

VMPlayer can be a really interesting solution for people interested in producing Virtual appliances that can run on Linux and Windows, and VMware has a great share of this market.

Personally, I’ll use VirtualBox on my desktop to test new distros and play a bit with them, and KVM on my laptop to have a second environment for work, and to be ready to adopt KVM on my servers.

Thanks to Darrel Johnston for the proofreading of the English version.

Popular Posts:

flattr this!

  17 Responses to “Kvm, Virtualbox or Vmware ?”

  1. As an intro article, this gives a good overview. For real-world usage, however, which gives better performance? Especially when there are 10 VMs running on one machine…

    In my company we use VMware ESX server and the responsiveness of the hosts is pretty bad as they fight over RAM and disk I/O. We’re looking into bigger hardware to combat this — sounds like the MS way to fix slow software: get better hardware! (the alternative, smarter solution may be: get better software). VMware does have some cool stuff where the live, running machine can be moved from one VMware server to another without dropping a ping, and some load-balancing options. These cost big bucks to implement, however. One of our partner companies they did their own tests and came out heavily in favour of KVM, so that is what they are using.

    On the desktops at work, we use a mix of VMware (which is a headache to get running on rolling-release distros and on Debian Sid) and VirtualBox. The tech people are huge fans of VBox, but the company already locked in with VMware on some of the desktops so we keep purchasing their products even though we really don’t need to do so. I’d rather the company buys support from VBox, but I guess now that would be Oracle.

  2. Thanks for the feedback, and yes with my article i just wanted to give an introduction for desktop user.

    Vmware, Xen and KVM are the big players (at the moment) for virtualization of server computer.

  3. I’ve received 2 other sites for download Virtual machines for Virtualbox:

    http://sourceforge.net/projects/virtualboximage/files/
    http://virtualboximages.com/

    Thanks to Darrel Johnston.

  4. virt-manager is pretty much the ‘official’ GUI for kvm. If you run RHEL or Fedora and install the Virtualization package group, you get the kvm / qemu / libvirt stack plus virt-manager. The whole stack, including virt-manager, is maintained by an integrated team at RH.

  5. Hi. This article is a nice introduction, and my own tests provide roughly the same results as yours.
    (be aware that there are a lot of duplicate texts in your article, you sure someone did proofread it ?)

  6. I’m using Mint9 on an Athlon-x4 system. Sun’s Virtualbox worked fine at install, but required a couple of hacks every time I ran it after that (and with Sun gone, will it get any better?). So I tried kvm (aka qemu). I can’t get Puppy5 to see any eth0. TinyCore sees an eth0, and DNS works, but nothing else. That leaves VMware. I found this process frustrating and disappointing.

  7. I found VirtualBox is good for newbies and also for adv users.
    Its not hardware hungry… works amazing in all types of systems…
    Very easy to manage.

  8. The main problem with VirtualBox is that the GPL version doesn’t have USB support – you have to use the proprietary version for that. Therefore, you cannot run VirtualBox in a commercial environment if you need USB support.

  9. Guidelines for Virtualization Happiness (or, what works for me). Your mileage may vary:

    Never use any version of Windows as a host. It is fine as a guest OS, but as a host both it and the guest run noticeably slower.

    If you must use Windows as a host run Virtualbox. I run openSuse 11.3 on my office laptop as a guest and it is tolerable.

    OpenSuse 11.3 running VMware Workstation on my personal m90 laptop runs the Windows XP that came with the laptop as a guest faster than running XP natively.

  10. And nobody mentions ProxMox

    http://pve.proxmox.com/wiki/Main_Page

    It cannot get any easier than this!

  11. Proxmox is very good (I used it myself on a server with a Phenom II X6), but it is a complete distro, not a tool you can install (at least easily) and use on your desktop. It’s more like VMware ESX than VMware Player/Desktop or VirtualBox.

    If you are planning to install a Debian on your desktop (proxmox is Debian-based), you may try to install proxmox then install the missing packages for a desktop (X11, window manager, …). But I don’t know if this configuration is supported by Proxmox.

  12. For KVM, or better, for QEMU-KVM there’s a little front-end written for KDE4: QtEmu.
    Is present in gentoo portage, so you can install it easily.

  13. […] detto nel mio precedente articolo io utilizzo Virtual Box e devo dire che lo trovo ottimo, ma se “tutto dovesse andare […]

  14. @Pater Mann: You CAN run VirtualBox in a commercial environment if you need USB support, but not for free. You need to purchase a license for it.
    http://www.virtualbox.org/wiki/Licensing_FAQ

  15. I’ve just installed KVM on Ubuntu 10.04 per Ubuntu official instructions. I’ve got 2 cores and 2GB of RAM allocated to the instance I created, which is a WIN 7 install. It runs terribly. Starting applications are slow and stuttering, mouse movement skips, and anything that does the tiniest bit of IO is extremely bad. The disk thrashes for minutes at a time( or in the case of running Windows Update, it takes over an hour to finish ). Now, from what I’ve read around the ‘net, KVM is praised highly, so I am confused that a simple install works so badly. My processor and BIOS support the VT extensions, and all is reported as it should be, but as stated, it is pretty much unusable. I’m looking to try VirtualBox next, with hopes that it will function properly.

    • I’ve never tested windows 7, with the old XP the virtual machines work fine (both VirtualBox and Kvm), let us know your feeling with Virtualbox.

      Thanks

  16. I’ve seen Win7 and WinServer 2008 both perform horrible on virtualized setups. I wouldn’t doubt that MS has attempted to limit these OSes to only run on their VM hypervisors.

 Leave a Reply

(required)

(required)


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>