Public bug reported: Description: ===========
As part of the openstack scheduling behaviour, able to observe this pattern where scheduling is not happening based on weight values, instead it is picking a random host from the list, thus violates the weighting behaviour Configuration Nova: =========== ram_weight_multiplier = 5.0 host_subset_size = 4 Steps To reproduce: =========== I am testing this is in nova-23.2.0 ( Wallaby ) version based on openstack-ansible 1) Create aggregate & make sure it has 5 hosts in it 2) Please make sure we are using instance extra spec for scheduling, to make sure vm's to use these 5 hosts from the aggregate 3) create 3 vm's in parallel 4) weighed_hosts obj list's all available weight hosts ( already sorted based on descending order ] 5) We are setting host_subset_size as 4 currently 6) chosen_host = random.choice(weighed_subset)-----> [Since this is already sorted , why are we randomizing the behaviour rather than picking the first host ,weighed_subset[0] having higher weights] Expected Results: =========== 1) Host with higher weights need's to be picked Actual result ============= 1) It is picking based on random order from the sorted weighted list Not sure the purpose of picking random host on the below one https://github.com/openstack/nova/blob/stable/yoga/nova/scheduler/manager.py#L645 ** Affects: nova Importance: Undecided Status: New ** Tags: wallaby-rc-potential ** Tags added: wallaby-rc-potential -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1990082 Title: Scheduler is not choosing host based on higher weight value Status in OpenStack Compute (nova): New Bug description: Description: =========== As part of the openstack scheduling behaviour, able to observe this pattern where scheduling is not happening based on weight values, instead it is picking a random host from the list, thus violates the weighting behaviour Configuration Nova: =========== ram_weight_multiplier = 5.0 host_subset_size = 4 Steps To reproduce: =========== I am testing this is in nova-23.2.0 ( Wallaby ) version based on openstack-ansible 1) Create aggregate & make sure it has 5 hosts in it 2) Please make sure we are using instance extra spec for scheduling, to make sure vm's to use these 5 hosts from the aggregate 3) create 3 vm's in parallel 4) weighed_hosts obj list's all available weight hosts ( already sorted based on descending order ] 5) We are setting host_subset_size as 4 currently 6) chosen_host = random.choice(weighed_subset)-----> [Since this is already sorted , why are we randomizing the behaviour rather than picking the first host ,weighed_subset[0] having higher weights] Expected Results: =========== 1) Host with higher weights need's to be picked Actual result ============= 1) It is picking based on random order from the sorted weighted list Not sure the purpose of picking random host on the below one https://github.com/openstack/nova/blob/stable/yoga/nova/scheduler/manager.py#L645 To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1990082/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp