Limitations on Over-Provisioning in XenServer and KVM
109
12.9.1. Limitations on Over-Provisioning in XenServer and KVM
• In XenServer, due to a constraint of this hypervisor, you can not use an over-provisioning factor
greater than 4.
• The KVM hypervisor can not manage memory allocation to VMs dynamically. CloudPlatform sets
the minimum and maximum amount of memory that a VM can use. The hypervisor adjusts the
memory within the set limits based on the memory contention.
12.9.2. Requirements for Over-Provisioning
Several prerequisites are required in order for over-provisioning to function properly. The feature
is dependent on the OS type, hypervisor capabilities, and certain scripts. It is the administrator's
responsibility to ensure that these requirements are met.
12.9.2.1. Balloon Driver
All VMs should have a balloon driver installed in them. The hypervisor communicates with the balloon
driver to free up and make the memory available to a VM.
XenServer
The balloon driver can be found as a part of xen pv or PVHVM drivers. The xen pvhvm drivers are
included in upstream linux kernels 2.6.36+.
VMware
The balloon driver can be found as a part of the VMware tools. All the VMs that are deployed in a
over-provisioned cluster should have the VMware tools installed.
KVM
All VMs are required to support the virtio drivers. These drivers are installed in all Linux kernel
versions 2.6.25 and greater. The administrator must set CONFIG_VIRTIO_BALLOON=y in the virtio
configuration.
12.9.2.2. Hypervisor capabilities
The hypervisor must be capable of using the memory ballooning.
XenServer
The DMC (Dynamic Memory Control) capability of the hypervisor should be enabled. Only XenServer
Advanced and above versions have this feature.
VMware, KVM
Memory ballooning is supported by default.
12.9.3. Setting Over-Provisioning Ratios
There are two ways the root admin can set CPU and RAM over-provisioning ratios. First, the global
configuration settings cpu.overprovisioning.factor and mem.overprovisioning.factor will be applied
when a new cluster is created. Later, the ratios can be modified for an existing cluster.
Only VMs deployed after the change are affected by the new setting. If you want VMs deployed before
the change to adopt the new over-provisioning ratio, you must stop and restart the VMs. When this is