Compute Zone CPU Model Configuration

Due to virtualization environment, different VSs with various operating systems can work on the same physical compute resource. The virtualization layer allows the VS to work on CPUs that differ from CPU used on the compute resource. 

The main advantage of virtualization is the ability to select a CPU model for guest VSs and distribute shared host CPU among many VSs that run using their own virtual CPU.


Select CPU Model Configuration


You can use CPU model configuration to group compute resources with similar CPU performance characteristics into compute zones. The CPU model is selected based on the CPU characteristics common for all compute resources assigned to one compute zone. 

You can select the CPU model configuration functionality while creating or editing a compute zone. There are three types of CPU model configuration: default KVMextended CPU configuration, and passthrough host CPUProper CPU model selection for zone provides the best virtual CPU for VS with a safe hot migration option. For more information on these modes, refer to the following sections.

Default KVM

The default KVM CPU model allows libvirt to select the closest model for the current host from the list in /usr/share/libvirt/cpu_map.xml. QEMU/KVM comes with a number of predefined named CPU models, that typically refer to specific generations of hardware released by CPU vendors. These allow the guest VSs to have a degree of isolation from the host CPU, allowing greater flexibility in live migrating between hosts with different hardware.
The default KVM CPU model provides flexibility and live migration, but disadvantage of this method is the lowest capabilities delivered to virtual CPU. 

Use virsh capabilities command on host to check what configuration will be used.

Extended CPU configuration

Extended CPU configuration model is a more advanced option that provides better capabilities of virtual CPU and saves VS hot migration possibilities. OnApp gathers CPU capabilities info from all compute resources in the zone and determines a Baseline CPU model with appropriate features set. CPU model and flag set are recalculated and may change after adding/removing compute resources in the zone.   

After selection, all compute resources in this zone are automatically attached to a CPU model with a default set of CPU flags that are common for all compute resources within this zone and that cannot be disabled. You can also select some additional CPU flags that are applicable to all compute resources in the compute zone.

You can view the selected CPU model in comparison to Host's CPU model on the compute resource level.

Adding a new compute resource with extended CPU configuration

There are several scenarios that can take effect when a new compute resource is added to a compute zone with extended CPU configuration:

  • If the new compute resource has the same CPU hardware chip as one of  resources that are already in a compute zone, the new compute resource inherits the CPU model and CPU flags set in this compute zone.

  • If the new compute resource has CPU with better performance characteristics than those resources that are already in a compute zone, the new compute resource inherits the CPU model and CPU flags set in this compute zone. The other flags will be disabled and listed in the Unmatching CPU Flags box at the AdminSettings > Compute Resources > compute resource label > Tools > Extended CPU Configuration page. 

  • If the new compute resource has CPU with worse performance characteristics than those resources that are already in a compute zone, the CPU model of the entire compute zone and all compute resources in this zone is automatically downgraded. The list of default and additional CPU flags will be updated in order to include only those flags that are common for each compute resource in the compute zone. 

    • If a compute resource with worse performance characteristics than other resources is removed from a compute zone, the CPU model of the entire compute zone and all compute resources in this zone is automatically upgraded. The list of default and additional CPU flags will be updated in order to include only those flags that are common for each compute resource in the compute zone. 
    • To achieve a CPU consistency between compute resources in a compute zone, assign the compute resource with worse or better CPU performance characteristics to the compute zone, where a CPU model would correspond to the actual CPU performance.
    • When you add a new compute resource to a compute zone with extended CPU configuration, wait for CPU flags to be updated after all the related transactions are finished.

Passthrough Host CPU

Passthrough host CPU model configuration passes the host CPU model and features directly to the guest VS. Note that some host CPU model features, if they can't be supported with virtualization, will be filtered out by KVM. This mode provides maximum available capabilities of the host's CPU to VS's virtual CPU. VS hot migration is possible only to a host with identical hardware. Setting passthrough host CPU for compute zone is recommended when all compute resources have identical CPU hardware or when it isn't important to have the hot migration option in the zone.

Both the extended CPU configuration and Passthrough Host CPU are applicable only to KVM compute resources. 

You can set different prices in buckets for compute zones according to their CPU performance.

To view and manage the list of CPU flags available for a compute zone, proceed to the following section. 


Manage CPU Model Configuration



After the CPU model configuration is selected for a compute zone, you can view and manage CPU configuration of this zone as follows:

  1. Go to your Control Panel > AdminSettings menu and click the Compute Zones icon.
  2. Click a label of the required compute zone.
  3. Expand the Tools menu and click the Manage CPU Configuration button.
  4. On the screen that appears, you will see the following information on CPU configuration: 

    • The CPU Model Configuration box provides a label of a CPU model set for this compute zone, as well as the list of default CPU flags that are enabled for each compute resource in this zone. You cannot edit the list of default CPU flags. 

    • The Additional CPU Flags box includes the list of additional CPU flags available for each compute resource in this zone. Click a CPU flag to enable or disable it. The enabled CPU flags are displayed in green boxes and the disabled CPU flags are dimmed. You can also click the Select All and Deselect All buttons to manage additional flags. Any changes you make with additional flags are applied immediately.


  • CPU flags (or capabilities) may change with a CPU microcode patch/update. This happens due to CPU vendor changes CPU internal instructions to improve its capabilities or fix possible vulnerabilities. 
  • If a compute zone is attached to a CPU model and then one of the compute resources of this zone goes to maintenance mode, the set of CPU flags can be different when it goes back online. For more information, refer to the Maintenance Mode for KVM Compute Resources section.
  • Some operation systems need special flags provided by CPU when they are running as VS appliances. For such cases, OnApp may add a necessary option to the models described above.

Be careful when adding new compute resources to a compute zone with extended CPU configuration. For more information, refer to this section.

Additional Considerations for Virtual Servers



Below you can find some additional considerations that you should take into account while creating VSs on compute resources with certain CPU model configuration enabled.

Passthrough Host CPU  

Note that that hot and hot full VS migration will fail in case the hardware of your source and destination compute resource, namely the processors, is different.

The migration of virtual servers with a set of flags different from those available on the compute zone level will become available only after the reboot of VS or its shutdown and subsequent startup. After the boot, the VS configuration is updated to include the relevant set of CPU flags. Consequently, the migration of the rebooted virtual server will become available again.

Extended CPU configuration

When a new compute resource with worse CPU performance characteristics is added to a compute zone, as a result, the CPU model is downgraded and unmatching CPU flags are disabled for this zone and all the compute resources with better CPU, virtual servers that were earlier built in this zone on compute resources with a bigger set of flags will preserve all their flags. However, since such a VS has more flags than the compute zone and all the compute resources in this zone, it will not be possible to migrate this VS. 

The migration of virtual servers with a set of flags different from those available on the compute zone level will become available only after the reboot of VS or its shutdown and subsequent startup. After the boot, the VS configuration is updated to include the relevant set of CPU flags. Consequently, the migration of the rebooted virtual server will become available again.

For more information on how to reboot a VS, refer to the Virtual Server Power Options document.