Which tool is better for ...

Firstly the host will be either openSUSE 12.1 or SLES 11, on 64bit hardware with virtualization support.

Surfing the wonderful web and reading plenty articles, I am still unsure what to use for the type of guests I want to run.

For Windows (Win2K3, Win7) guests it seems that VirtualBox is most suitable virtualization tool to use in a production environment.

For Linux guests it seems that KVM is most suitable virtualization tool to use in a production environment.

Of course for testing, evaluating and development, either virtualization tool is suitable for any guest OS.

I discovered there is a nice new document available for KVM virtualization for openSUSE. It is sure helpful indeed, and will just get better to be an all in one document for using KVM in a SUSE host environment.

So my question is, which is suitable for Linux guests, and which is suitable for Windows guests?

So I have had great results using VirtualBox with openSUSE 12.1 & 11.4 as the host and with openSUSE 11.4 and 12.1 guests, loading both KDE and GNOME desktops. As for Windows, I have loaded Windows XP, Vista and Windows 7 into VirtualBox, but all with 32 bit versions. There were issues getting AERO graphics working in Windows Vista/7 using VirtualBox, but otherwise Windows was working just fine for me. Without a doubt, VirtualBox was the easiest to get working. Of course I was using the free version, not intended for Commercial usage (for free) as I understand their terms, so check that out properly before you go any further.

Thank You,

Thanx for your experience with Linux guests with VirtualBox.

Another thing, does KVM also suffer the same hassle as with VirtualBox when the host kernel updates.

Also I will be running the VMs completely headless on the servers, and the server must start up the VMs on boot without user logging on.

Easy to do with KVM. The Virtual Machine Manager GUI has a checkbox available for exactly that purpose.

Should also be possible with VirtualBox by creating a “service” that calls vboxmanage for each VM you want to start at bootup. Note-- I haven’t tried this with systemd, so there may be issues that I’m not aware of, it would be a piece of cake with sysv-init.