Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
Applies to SUSE Linux Enterprise Server 11 SP4

2 KVM Limitations

Although virtualized machines behave almost like physical machines, some limitations apply. These affect both, the VM Guest as well as the VM Host Server system.

2.1 General Limitations

The following general restrictions apply when using KVM:

Overcommits

KVM allows for both memory and disk space overcommit. It is up to the user to understand the implications of doing so. However, hard errors resulting from exceeding available resources will result in guest failures. CPU overcommit is also supported but carries performance implications.

Time Synchronization

Most guests require some additional support for accurate time keeping. Where available, kvm-clock is to be used. NTP or similar network based time keeping protocols are also highly recommended (for VM Host Server and VM Guest) to help maintain a stable time. Refer to Section 10.8, “Clock Settings” for details.

MAC addresses

If no MAC address is specified for a NIC, a default MAC address will be assigned. This may result in network problems when more than one NIC receives the same MAC address. It is recommended to always assure a unique MAC address has been assigned for each NIC.

Live Migration

Live Migration is only possible between VM Host Servers with the same CPU features. The only supported CPU model for migration is -cpu qemu64 (default) with no additional features specified. No physical devices can be passed from host to guest. Guest storage has to be accessible from both VM Host Servers and guest definitions need to be compatible. VM Host Server and VM Guests need to have proper timekeeping installed. The use of the AHCI interface, the virtfs feature, and the -mem-path command-line option are not compatible with migration. Migration from SP3 to SP2 or SP1 hosted guests is not supported.

User Permissions

The management tools (Virtual Machine Manager, virsh, vm-install) need to authenticate with libvirt—see Chapter 8, Connecting and Authorizing for details. In order to invoke qemu-kvm from the command line, a user has to be a member of the group kvm.

Suspending/Hibernating the VM Host Server

Suspending or hibernating the VM Host Server system while guests are running is not supported.

2.2 Hardware Limitations

The following virtual hardware limits for guests have been tested. We ensure host and VMs install and work successfully, even when reaching the limits and there are no major performance regressions (CPU, memory, disk, network) since the last release.

Max. Guest RAM Size

4 TB

Max. Virtual CPUs per Guest

256

Max. Virtual Network Devices per Guest

8

Max. Virtual Block Devices per Guest

4 emulated (IDE), 20 para-virtual (using virtio-blk)

Max. Number of VM Guests per VM Host Server

Limit is defined as the total number of virtual CPUs in all guests being no greater than 8 times the number of CPU cores in the host.

The following hardware limits for the host server have been tested.

Max. Physical CPUs

4096

Max. Physical Memory

16 TB

2.3 Performance Limitations

Basically, workloads designed for physical installations can be virtualized and therefore inherit the benefits of modern virtualization techniques. However, virtualization comes at the cost of a slight to moderate performance impact. You should always test your workload with the maximum anticipated CPU and I/O load to verify if it is suited for being virtualized. Although every reasonable effort is made to provide a broad virtualization solution to meet disparate needs, there will be cases where the workload itself is unsuited for KVM virtualization.

We therefore propose the following performance expectations for guests performance to be used as a guideline. The given percentage values are a comparison of performance achieved with the same workload under non-virtualized conditions. The values are rough approximations and cannot be guaranteed.

Category

Fully Virtualized

Paravirtualized

Host Pass-through

CPU, MMU

7%

not applicable

97% (Hardware Virtualization with Extended Page Tables (Intel) or Nested Page Tables (AMD)
85% (Hardware Virtualization with shadow page tables)

Network I/O (1GB LAN)

60% (e1000 emulated NIC)

75% (virtio-net)

95%

Disk I/O

40% (IDE emulation)

85% (virtio-blk)

95%

Graphics (non-accelerated)

50% (VGA or Cirrus)

not applicable

not applicable

Time accuracy (worst case, using recommended settings without NTP)

95% - 105% (where 100% = accurate)

100% (kvm-clock)

not applicable

Print this page