3.3. Installing guest agents and drivers

3.3.1. Red Hat Virtualization Guest agents, tools, and drivers

The Red Hat Virtualization guest agents, tools, and drivers provide additional functionality for virtual machines, such as gracefully shutting down or rebooting virtual machines from the VM Portal and Administration Portal. The tools and agents also provide information for virtual machines, including:

  • Resource usage
  • IP addresses

The guest agents, tools and drivers are distributed as an ISO file that you can attach to virtual machines. This ISO file is packaged as an RPM file that you can install and upgrade from the Manager machine.

You need to install the guest agents and drivers on a virtual machine to enable this functionality for that machine.

Table 3.1. Red Hat Virtualization Guest drivers

DriverDescriptionWorks on

virtio-net

Paravirtualized network driver provides enhanced performance over emulated devices like rtl.

Server and Desktop.

virtio-block

Paravirtualized HDD driver offers increased I/O performance over emulated devices like IDE by optimizing the coordination and communication between the virtual machine and the hypervisor. The driver complements the software implementation of the virtio-device used by the host to play the role of a hardware device.

Server and Desktop.

virtio-scsi

Paravirtualized iSCSI HDD driver offers similar functionality to the virtio-block device, with some additional enhancements. In particular, this driver supports adding hundreds of devices, and names devices using the standard SCSI device naming scheme.

Server and Desktop.

virtio-serial

Virtio-serial provides support for multiple serial ports. The improved performance is used for fast communication between the virtual machine and the host that avoids network complications. This fast communication is required for the guest agents and for other features such as clipboard copy-paste between the virtual machine and the host and logging.

Server and Desktop.

virtio-balloon

Virtio-balloon is used to control the amount of memory a virtual machine actually accesses. It offers improved memory overcommitment.

Server and Desktop.

qxl

A paravirtualized display driver reduces CPU usage on the host and provides better performance through reduced network bandwidth on most workloads.

Server and Desktop.

Table 3.2. Red Hat Virtualization Guest agents and tools

Guest agent/toolDescriptionWorks on

qemu-guest-agent

Used instead of ovirt-guest-agent-common on Red Hat Enterprise Linux 8 virtual machines. It is installed and enabled by default.

Server and Desktop.

spice-agent

The SPICE agent supports multiple monitors and is responsible for client-mouse-mode support to provide a better user experience and improved responsiveness than the QEMU emulation. Cursor capture is not needed in client-mouse-mode. The SPICE agent reduces bandwidth usage when used over a wide area network by reducing the display level, including color depth, disabling wallpaper, font smoothing, and animation. The SPICE agent enables clipboard support allowing cut and paste operations for both text and images between client and virtual machine, and automatic guest display setting according to client-side settings. On Windows-based virtual machines, the SPICE agent consists of vdservice and vdagent.

Server and Desktop.

3.3.2. Installing the guest agents, tools, and drivers on Windows

Procedure

To install the guest agents, tools, and drivers on a Windows virtual machine, complete the following steps:

  1. On the Manager machine, install the virtio-win package:

    # dnf install virtio-win*

    After you install the package, the ISO file is located in /usr/share/virtio-win/virtio-win_version.iso on the Manager machine.

  2. Upload virtio-win_version.iso to a data storage domain. See Uploading Images to a Data Storage Domain in the Administration Guide for details.
  3. In the Administration or VM Portal, if the virtual machine is running, use the Change CD button to attach the virtio-win_version.iso file to each of your virtual machines. If the virtual machine is powered off, click the Run Once button and attach the ISO as a CD.
  4. Log in to the virtual machine.
  5. Select the CD Drive containing the virtio-win_version.iso file. You can complete the installation with either the GUI or the command line.
  6. Run the installer.

    To install with the GUI, complete the following steps
    1. Double-click virtio-win-guest-tools.exe.
    2. Click Next at the welcome screen.
    3. Follow the prompts in the installation wizard.
    4. When installation is complete, select Yes, I want to restart my computer now and click Finish to apply the changes.
    To install silently with the command line, complete the following steps
    1. Open a command prompt with Administrator privileges.
    2. Enter the msiexec command:

      D:\ msiexec /i "PATH_TO_MSI" /qn [/l*v "PATH_TO_LOG"][/norestart] ADDLOCAL=ALL

      Other possible values for ADDLOCAL are listed below.

      For example, to run the installation when virtio-win-gt-x64.msi is on the D:\ drive, without saving the log, and then immediately restart the virtual machine, enter the following command:

      D:\ msiexec /i "virtio-win-gt-x64.msi" /qn ADDLOCAL=ALL

After installation completes, the guest agents and drivers pass usage information to the Red Hat Virtualization Manager and enable you to access USB devices and other functionality.

3.3.3. Values for ADDLOCAL to customize virtio-win command-line installation

When installing virtio-win-gt-x64.msi or virtio-win-gt-x32.msi with the command line, you can install any one driver, or any combination of drivers.

You can also install specific agents, but you must also install each agent’s corresponding drivers.

The ADDLOCAL parameter of the msiexec command enables you to specify which drivers or agents to install. ADDLOCAL=ALL installs all drivers and agents. Other values are listed in the following tables.

Table 3.3. Possible values for ADDLOCAL to install drivers

Value for ADDLOCALDriver NameDescription

FE_network_driver

virtio-net

Paravirtualized network driver provides enhanced performance over emulated devices like rtl.

FE_balloon_driver

virtio-balloon

Controls the amount of memory a virtual machine actually accesses. It offers improved memory overcommitment.

FE_pvpanic_driver

pvpanic

QEMU pvpanic device driver.

FE_qemufwcfg_driver

qemufwcfg

QEMU FWCfg device driver.

FE_qemupciserial_driver

qemupciserial

QEMU PCI serial device driver.

FE_spice_driver

Spice Driver

A paravirtualized display driver reduces CPU usage on the host and provides better performance through reduced network bandwidth on most workloads.

FE_vioinput_driver

vioinput

VirtIO Input Driver.

FE_viorng_driver

viorng

VirtIO RNG device driver.

FE_vioscsi_driver

vioscsi

VirtIO SCSI pass-through controller.

FE_vioserial_driver

vioserial

VirtIO Serial device driver.

FE_viostor_driver

viostor

VirtIO Block driver.

Table 3.4. Possible values for ADDLOCAL to install agents and required corresponding drivers

AgentDescriptionCorresponding driver(s)Value for ADDLOCAL

Spice Agent

Supports multiple monitors, responsible for client-mouse-mode support, reduces bandwidth usage, enables clipboard support between client and virtual machine, provide a better user experience and improved responsiveness.

vioserial and Spice driver

FE_spice_Agent,FE_vioserial_driver,FE_spice_driver

Examples

The following command installs only the VirtIO SCSI pass-through controller, the VirtIO Serial device driver, and the VirtIO Block driver:

D:\ msiexec /i "virtio-win-gt-x64.msi" /qn ADDLOCAL=`FE_vioscsi_driver,FE_vioserial_driver,FE_viostor_driver

The following command installs only the Spice Agent and its required corresponding drivers:

D:\ msiexec /i "virtio-win-gt-x64.msi" /qn ADDLOCAL = FE_spice_Agent,FE_vioserial_driver,FE_spice_driver

The Microsoft Developer website: