Chapter 20. Feature support and limitations in RHEL 8 virtualization

This document provides information on feature support and restrictions in Red Hat Enterprise Linux 8 (RHEL 8) virtualization.

20.1. How RHEL 8 virtualization support works

A set of support limitations applies to virtualization in Red Hat Enterprise Linux 8 (RHEL 8). This means that when you use certain features or exceed a certain amount of allocated resources when using virtual machines in RHEL 8, Red Hat will not support these guests unless you have a specific subscription plan.

Features listed in Section 20.2, “Recommended features in RHEL 8 virtualization” have been tested and certified by Red Hat to work with the KVM hypervisor on a RHEL 8 system. Therefore, they are fully supported and recommended for use in virtualization in RHEL 8.

Features listed in Section 20.3, “Unsupported features in RHEL 8 virtualization” may work, but are not supported and not intended for use in RHEL 8. Therefore, Red Hat strongly recommends not using these features in RHEL 8 with KVM.

Section 20.4, “Resource allocation limits in RHEL 8 virtualization” lists the maximum amount of specific resources supported on a KVM guest in RHEL 8. Guests that exceed these limits are not supported by Red Hat.

In addition, unless stated otherwise, all features and solutions used by the documentation for RHEL 8 virtualization are supported. However, some of these have not been completely tested and therefore may not be fully optimized.

Important

Many of these limitations do not apply to other virtualization solutions provided by Red Hat, such as Red Hat Virtualization (RHV), OpenShift Virtualization, or Red Hat OpenStack Platform (RHOSP).

20.3. Unsupported features in RHEL 8 virtualization

The following features are not supported by the KVM hypervisor included with Red Hat Enterprise Linux 8 (RHEL 8):

Important

Many of these limitations may not apply to other virtualization solutions provided by Red Hat, such as Red Hat Virtualization (RHV), OpenShift Virtualization, or Red Hat OpenStack Platform (RHOSP).

Features supported by RHV 4.2 and later, or RHOSP 13 and later, are described as such in the following paragraphs.

Guest operating systems

KVM virtual machines (VMs) using the following guest operating systems on a RHEL 8 host are not supported:

  • Microsoft Windows 8.1 and earlier
  • Microsoft Windows Server 2012 and earlier
  • macOS
  • Solaris for x86 systems
  • Any OS released prior to 2009

For a list of guest operating systems supported on RHEL hosts, see Certified guest operating systems for Red Hat Enterprise Linux with KVM.

For a list of guest operating systems supported by other virtualization solutions provided by Red Hat, see Certified Guest Operating Systems in Red Hat OpenStack Platform and Red Hat Virtualization.

For a list of guest operating systems supported specifically by RHV, see Supported guest operating systems in RHV.

vCPU hot unplug

Removing a virtual CPU (vCPU) from a running VM, also referred to as a vCPU hot unplug, is not supported in RHEL 8.

Note that vCPU hot unplugs are supported in RHV. For details, see Hot plugging VCPUs.

Memory hot unplug

Removing a memory device attached to a running VM, also referred to as a memory hot unplug, is unsupported in RHEL 8.

Note that memory hot unplugs are supported in RHV, but only on guest VMs running RHEL with specific guest configurations. For details, see Hot Unplugging Virtual Memory.

QEMU-side I/O throttling

Using the virsh blkdeviotune utility to configure maximum input and output levels for operations on virtual disk, also known as QEMU-side I/O throttling, is not supported in RHEL 8.

To set up I/O throttling in RHEL 8, use virsh blkiotune. This is also known as libvirt-side I/O throttling. For instructions, see Section 16.4.2, “Disk I/O throttling in virtual machines”.

Note that QEMU-side I/O throttling is supported in RHV. For details, see Storage quality of service.

QEMU-side I/O throttling is also supported in RHOSP. For details, see Setting Resource Limitation on Disk and the Use Quality-of-Service Specifications section in the RHOSP Storage Guide.

In addition, OpenShift Virtualizaton supports QEMU-side I/O throttling as well.

Storage live migration

Migrating a disk image of a running VM between hosts is not supported in RHEL 8.

Note that storage live migration is supported in RHV. For details, see Overview of Live Storage Migration.

Storage live migration is also supported in RHOSP, but with some limitations. For details, see Migrate a Volume.

Live snapshots

Creating or loading a snapshot of a running VM, also referred to as a live snapshot, is not supported in RHEL 8.

In addition, note that non-live VM snapshots are deprecated in RHEL 8. Therefore, creating or loading a snapshot of a shut-down VM is supported, but Red Hat recommends not using it.

Note that live snapshots are supported in RHV. For details, see Live snapshots in Red Hat Virtualization.

Live snapshots are also supported in RHOSP. For details, see Importing virtual machines into the overcloud.

vhost-user

RHEL 8 does not support the implementation of a user-space vHost interface.

Note that vhost-user is supported in RHOSP, but only for virtio-net interfaces. For details, see virtio-net implementation and vhost user ports.

S3 and S4 system power states

Suspending a VM to the Suspend to RAM (S3) or Suspend to disk (S4) system power states is not supported. Note that these features are disabled by default, and enabling them will make your VM not supportable by Red Hat.

Note that the S3 and S4 states are currently also not supported in RHV and RHOSP.

S3-PR on a multipathed vDisk

SCSI3 persistent reservation (S3-PR) on a multipathed vDisk is not supported in RHEL 8. As a consequence, Windows Cluster is not supported in RHEL 8.

Note that S3-PR on a multipathed vDisk is supported in RHV. Therefore, if you require Windows Cluster support, Red Hat recommends using RHV as your virtualization solution. For details, see Cluster support on RHV guests.

virtio-crypto

The drivers for the virtio-crypto device are available in the RHEL 8.0 kernel, and the device can thus be enabled on a KVM hypervisor under certain circumstances. However, using the virtio-crypto device in RHEL 8 is not supported and its use is therefore highly discouraged.

Note that virtio-crypto devices are also not supported in RHV or RHOSP.

Incremental live backup

Configuring a VM backup that only saves VM changes since the last backup, also known as incremental live backup, is not supported in RHEL 8, and Red Hat highly discourages its use.

Note that incremental live backup is provided as a Technology Preview in RHV 4.4 and later.

net_failover

Using the net_failover driver to set up an automated network device failover mechanism is not supported in RHEL 8.

Note that net_failover is currently also not supported in RHV and RHOSP.

vTPM

Attaching virtual Trusted Platform Module (vTPM) devices to VMs hosted on a RHEL 8 system is unsupported.

Note that vTPM is currently also not supported in RHV and RHOSP.

Multi-FD migration

Migrating VMs using multiple file descriptors (FDs), also known as multi-FD migration, is not supported in RHEL 8.

Note that multi-FD migrations are currently also not supported in RHV or RHOSP.

virtiofs

Sharing files between the host and its VMs using the virtiofs file system is unsupported in RHEL8.

Note that using virtiofs is currently also not supported in RHV or RHOSP.

NVMe devices

Attaching Non-volatile Memory express (NVMe) devices to VMs hoested in RHEL 8 is not supported.

Note that attaching NVMe devices to VMs is currently also not supported in RHV or RHOSP.

TCG

QEMU and libvirt include a dynamic translation mode using the QEMU Tiny Code Generator (TCG). This mode does not require hardware virtualization support. However, TCG is not supported by Red Hat.

TCG-based guests can be recognized by examining its XML configuration, for example using the "virsh dumpxml" command.

  • The configuration file of a TCG guest contains the following line:

    <domain type='qemu'>
  • The configuration file of a KVM guest contains the following line:

    <domain type='kvm'>

Additional resources

20.4. Resource allocation limits in RHEL 8 virtualization

The following limits apply to virtualized resources that can be allocated to a single KVM virtual machine (VM) on a Red Hat Enterprise Linux 8 (RHEL 8) host.

Important

Many of these limitations do not apply to other virtualization solutions provided by Red Hat, such as Red Hat Virtualization (RHV), OpenShift Virtualization, or Red Hat OpenStack Platform (RHOSP).

Maximum VMs per host

A single RHEL 8 host supports up to 4 VMs running at the same time. This limit does not apply to VMs in RHV and RHOSP.

Maximum vCPUs per VM

RHEL 8 supports up to 384 vCPUs allocated to a single VM.

PCI devices per VM

RHEL 8 supports 32 PCI device slots per VM bus, and 8 PCI functions per device slot. This gives a theoretical maximum of 256 PCI functions per bus when multi-function capabilities are enabled in the VM, and no PCI bridges are used.

Each PCI bridge adds a new bus, potentially enabling another 256 device addresses. However, some buses do not make all 256 device addresses available for the user; for example, the root bus has several built-in devices occupying slots.

Virtualized IDE devices

KVM is limited to a maximum of 4 virtualized IDE devices per VM.

20.5. An overview of virtualization features support

The following tables provide comparative information about the support state of selected virtualization features in RHEL 8 across the supported system architectures.

Table 20.1. Device hot plug and hot unplug

 Intel 64 and AMD64IBM ZIBM POWER

CPU hot plug

Supported

Supported

Supported

CPU hot unplug

UNSUPPORTED

UNSUPPORTED

UNSUPPORTED

Memory hot plug

Supported

UNSUPPORTED

Supported

Memory hot unplug

UNSUPPORTED

UNSUPPORTED

UNSUPPORTED

PCI hot plug

Supported

Supported [a]

Supported

PCI hot unplug

Supported

Supported [a]

Supported

[a] Requires using virtio-*-ccw devices instead of virtio-*-pci

Table 20.2. Other selected features

 Intel 64 and AMD64IBM ZIBM POWER

NUMA tuning

Supported

UNSUPPORTED

Supported

SR-IOV devices

Supported

UNSUPPORTED

Supported

virt-v2v and p2v

Supported

UNSUPPORTED

UNSUPPORTED

Additional sources