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

Better preferential scheduling #2050

Merged
merged 12 commits into from
Jan 28, 2020
Merged

Better preferential scheduling #2050

merged 12 commits into from
Jan 28, 2020

Conversation

sjeropkipruto
Copy link
Contributor

@sjeropkipruto sjeropkipruto commented Dec 17, 2019

Status: Work in progress 🚧

Description

Mesos hosts aren't nearly as well utilized as they could be. The high mem ones fill up on cpu before we can make full use of the extra memory and vice versa for the high cpu ones. Similar for spot, not all things that can run on spot actually are.

We want to improve our scheduling to really improve our utilization and make scheduling faster & easier because there are more available large spots of resources.

Testing

  • unit testing
  • deploying to staging

Todos

  • Implement preference by allowed attributes. If a deployable specifies an allowed attribute, give preference to that type of machine. For example, if it can run on spot, prefer spot. If it is allowed to run on spark hosts, prefer those.
  • Implement preference by resource preference. Identify mesos hosts as normal or having a particular resource preference (e.g. a high memory host). Do the same for tasks based on their measured used resources. Matches between tasks and hosts should be preferred (e.g. high memory task on a high memory host).
  • Write unit tests
  • Deploy and test in staging
  • Deploy to QA
  • Deploy to PROD

@ssalinas
Copy link
Member

Overall concept looks good 👍 , let's get some unit tests in to make sure it behaves as expected then give it a go in staging

@sjeropkipruto sjeropkipruto changed the title Preferential scheduling on hosts with allowed attributes Better preferential scheduling Jan 7, 2020
@ssalinas
Copy link
Member

🚢

@WH77 WH77 added the hs_stable label Jan 28, 2020
@WH77 WH77 merged commit 509f76c into master Jan 28, 2020
@WH77 WH77 deleted the scheduling branch January 28, 2020 17:58
@ssalinas ssalinas added this to the 1.2.0 milestone Jan 28, 2020
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