Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend AffinityWeigher to support shards. #306

Open
wants to merge 1 commit into
base: stable/rocky-m3
Choose a base branch
from

Conversation

kpawar-sap
Copy link

ServerGroupAffinityWeigher gives back a high weight if the compute node
already contains servers of the same server-group. However, we want to
add a semi-high weight when other compute nodes in the same shard
contain servers of this server-group.
Usecase is to give the user a way to schedule servers to the same shard
based on previously spawned servers e.g. to replace them with the new
ones. If the servers are in the same shard, there's no automatic
volume-migration happening.

@joker-at-work joker-at-work marked this pull request as draft February 11, 2022 08:20
@kpawar-sap kpawar-sap force-pushed the update_affinity_weighter branch 2 times, most recently from 99358ad to 2a8b8ae Compare February 11, 2022 10:41
@kpawar-sap
Copy link
Author

Handled if weight < 1 is returned from _weigh_object, in case of ServerGroupSoftAntiAffinityWeigher.

Copy link

@joker-at-work joker-at-work left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a quick glance over the code.

nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
@kpawar-sap kpawar-sap force-pushed the update_affinity_weighter branch 2 times, most recently from 693ead9 to d6e7286 Compare February 15, 2022 04:13
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
nova/scheduler/weights/affinity.py Outdated Show resolved Hide resolved
@kpawar-sap kpawar-sap changed the title [WIP] Extend AffinityWeigher to support shards. Extend AffinityWeigher to support shards. Feb 18, 2022
Copy link
Member

@fwiesel fwiesel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

ServerGroupAffinityWeigher gives back a high weight if the compute node
already contains servers of the same server-group. However, we want to
add a semi-high weight when other compute nodes in the same shard
contain servers of this server-group.
Usecase is to give the user a way to schedule servers to the same shard
based on previously spawned servers e.g. to replace them with the new
ones. If the servers are in the same shard, there's no automatic
volume-migration happening.
@kpawar-sap kpawar-sap marked this pull request as ready for review March 10, 2022 11:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants