Windows – Installing VirtIO drivers in Windows Server 2008

kvm-switchvirtiowindows server 2008

We are running a Windows Server 2008 system as a "guest" on a Linux-KVM virtual server (SLES11, with VirtIO support). We have trouble with the system performance and this is possibly due to not using the VirtIO drivers. I don't have much experience with neither KVM nor VirtIO. Just heard it this could be the reason for our problem.

Questions:

  • The install examples I just found are describing how to install the drivers during Windows setup. Is it possible to install the VirtIO drivers later? We have running software on that system and would like to avoid reinstalling/setup of all these.

  • I already found a page describing how to sign the drivers, which seems to be needed. A good tutorial page (step by step instructions) would be nice. Is there anything like that out there?

Best Answer

The process is described in the article Converting a Windows Vista KVM Virtual Machine to Redhat VirtIO Drivers.

You should first download from linux-kvm.com the Windows Guest Drivers in cdrom image (iso). The current version is at this link.

Here is an excerpt from the article (read "Windows 2008" for "Vista") :

  • Make sure Vista VM is up to date on patches and the disk is error free.
  • Mount the .iso file as a CD-ROM device.

Now you might think you can use the ‘Add Hardware Wizard’ here and add the drivers, add the hardware, and be good. I did. I wound up with an unbootable disk. Apparently Vista’s autodetection is required in this process. So…

  1. Add a new network device of type ‘virtio’. Vista will do its “you’ve got hardware” routine and run you through all of its wizards. When it asks you for drivers, point it at the i386/2008 directory on the driver disc image. Yes, Yes, OK, Yes, Really, Continue, etc.
  2. Shutdown the VM and remove the old ethernet controller. Boot up Vista and make sure the network works. You can conceivably skip this step for now if you want to make troubleshooting harder.
  3. Add a new Storage controller. Leave the existing one as-is for now. You’ll have to pick a disk image you’re not using right now, or make a new one. Anything is fine, we’re not going to ever use it inside Vista. Do the driver dance again.
  4. Shutdown Windows. Remove the storage controllers, and add a new one, type ‘virtio’, with your normal hard drive image. Take care of the old ethernet controller here too, if you ignored my previous advice.
  5. Boot Windows normally. It should now be coming up on VirtIO disk and network drivers. If you get a bluescreen or a plea to use the RepairCD, something went wrong. Use the repair CD to restore to a previous restore-point and try again.
Related Question