Bug 1306263

Summary: Normalize policy unit weights
Product: [oVirt] ovirt-engine Reporter: Martin Sivák <msivak>
Component: Backend.CoreAssignee: Martin Sivák <msivak>
Status: CLOSED CURRENTRELEASE QA Contact: Artyom <alukiano>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 4.0.0CC: akrejcir, bgraveno, bmcclain, bugs, dfediuck, gklein, msivak
Target Milestone: ovirt-4.1.0-betaKeywords: Triaged
Target Release: 4.1.0.2Flags: rule-engine: ovirt-4.1+
bmcclain: priority_rfe_tracking+
rule-engine: planning_ack+
msivak: devel_ack+
mavital: testing_ack+
Hardware: Unspecified   
OS: Unspecified   
URL: http://www.ovirt.org/develop/release-management/features/sla/scheduling-weight-normalization/
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
The weighting for virtual machine scheduling has been updated. The best host for the virtual machine is now selected using a weighted rank algorithm instead of the pure sum of weights. A rank is calculated for the policy unit and host, and the weight multiplier is then used to multiply the ranks for the given policy unit. The host with the highest number is selected. The reason for the change is that current weight policy units do not use a common result value range. Each unit reports numbers as needed, and this causes issues with user configured preferences. For example, memory (which has high numbers) always wins over CPU (0-100). This update ensures that the impact of the policy unit multiplier for the scheduling policy configuration is more predictable. However, users that are using it should check their configuration for sanity when upgrading.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-01 14:45:15 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: SLA RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1207255, 1392393, 1404660    

Description Martin Sivák 2016-02-10 12:39:44 UTC
Description of problem:

Each policy unit uses a different scale for weight. That means factors are almost unusable because weight 1 (affinity group violation) will be always overridden by weight 500 (memory in MiB) even when the factor is for example a 100.

Version-Release number of selected component (if applicable):

iirc 3.1 till now

Comment 1 Sandro Bonazzola 2016-05-02 09:58:13 UTC
Moving from 4.0 alpha to 4.0 beta since 4.0 alpha has been already released and bug is not ON_QA.

Comment 2 Yaniv Lavi 2016-05-23 13:19:09 UTC
oVirt 4.0 beta has been released, moving to RC milestone.

Comment 3 Yaniv Lavi 2016-05-23 13:26:44 UTC
oVirt 4.0 beta has been released, moving to RC milestone.

Comment 4 Martin Sivák 2016-07-13 09:42:12 UTC
All support for this is present in the code for unit testing purposes, but we do not want to enable this for 4.0 as it will slightly change the scheduler behaviour. The plan is to enable normalization (using rank atm) for 4.1 and making sure all test plans are updated and QE is aware of this change.

Comment 6 Artyom 2017-01-03 16:19:39 UTC
Verified on rhevm-4.1.0-0.3.beta2.el7.noarch

Tested:
1) Weight modules factors
2) Weight modules ranks
3) Weight modules:
     VmAffinityGroups
     OptimalForCpuEvenDistribution
     VmToHostsAffinityGroups
     OptimalForMemoryEvenDistribution
     PreferredHosts
     OptimalForCpuPowerSaving
     OptimalForMemoryPowerSaving