I've been using KVM on our corporate blades for OS virtualization. So far, so good. I've been impressed with the stability of the guest os'es, and the disk performance(although it helps that all the guests are on fibre channel drives). One thing I have ran into, that I am sure most admin's will experience, is the initial loading of OEM software into the guest operating system. In my case, I am running CentOS as my host, and have a couple of Microsoft Server 2008 guests. According to Microsoft, I can have 4 instances of Enterprise Server 2008 as guest OSes. (http://www.microsoft.com/licensing/about-licensing/virtualization.aspx) per one physical server license.
The problem occurs when loading the manufacturer's provided OEM load of Windows 2008. The installation program verifies the computer hardware by way of the bios. QEMU needs this information to emulate the bios make/manufacture in order to pass the test performed by the OEM installer running on the guest.
By executing
"dmidecode -t 1", I am able to pull all the information from the bios so I can pass the information along to qemu.
Taking the result of dmidecode and passing it into the qemu using the -smbios option solves the problem.
- /usr/libexec/qemu-kvm [options] -smbios type=1,manufacturer=[manufacture] product=[product id]
This option only needs to be executed during the install of the software. Subsequent starts of the OS do not require the manufacture information in the qemu bios.