Installing drivers in a Windows VM for accessing the VirtIO system disk

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Virtualization 3.0, 3.1, 3.2, 3.3, 3.4, 3.5
  • Guest: Windows 2008, Windows 2008 R2, Windows 2012, Windows 7, Windows 8

Issue

  • I need to install a Windows virtual machine (VM) using virtio but Windows cannot find the device. How do I install the drivers needed?

Resolution

  1. Install the virtio-win package on the RHEV-M system which is found in the rhel-x86_64-server-supplementary-6 channel. If the system is not subscribed to that channel, log on to RHN and subscribe the system to that channel, then run the following command:
    yum install virtio-win
    
  2. Locate the virtio-win packages and upload the *.vfd and *.iso files to the ISO storage domain using the ISO uploader utility:
    rhevm-iso-uploader --iso-domain=nameOFdomain upload /usr/share/virtio-win/*.vfd
    rhevm-iso-uploader --iso-domain=nameOFdomain upload /usr/share/virtio-win/*.iso
    
  3. Create a new VM with a VirtIO disk interface (instead of IDE).
  4. When the Windows VM is created, attach virtio-win-xxxx.vfd as a floppy, using the Run once menu (Remember to also boot from the Windows Installation ISO using "Attach CD").
    VirtIO Win amd64 VFD - for 64 bit architecture
    VirtIO Win x86 VFD - for 32 bit architecture 
    
    • For deploying a large number of VirtIO-based VMs, a better solution would be to slipstream the VirtIO_blk driver into the Windows distribution ISO file. This is possible using nLite software or the tools Microsoft provides for driver slipstreaming. The RHEV "Run Once" Menu: Choosing to attach virtio-win virtual floppy disk
  5. Proceed according to the version of Windows used:
    • Windows 2008:

      • When Windows prompts for the driver, click on "Load Driver", point the installer to drive A: and pick the driver that suits the OS (32-bit use x86 drivers, 64-bit use AMD64 drivers)
    • Windows 2008 R2:

      • Choose the AMD64 drivers.
      • There is a known issue where the automatic driver scanning in Windows fails to detect the correct driver. The workaround is to select the driver manually similar to the process listed below for Windows 7.
    • Windows 2012:

      • Choose the AMD64 drivers.
    • Windows 7:

      • When Windows prompts for the driver, click on "Load Driver", point the installer to drive A: and pick the SCSI controller driver for Windows 7.
    • Windows 8:

      • When Windows prompts for the driver, click on "Load Driver", point the installer to drive A: and pick the SCSI controller driver for Windows 8.

Important Notes

  1. The latest versions of RHEL have built-in support for VirtIO.

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.