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

design scheduling mechanism #3

Open
zen-xu opened this issue Oct 17, 2022 · 0 comments
Open

design scheduling mechanism #3

zen-xu opened this issue Oct 17, 2022 · 0 comments
Labels
design Design details for new feature or request
Milestone

Comments

@zen-xu
Copy link
Owner

zen-xu commented Oct 17, 2022

Currently, there will be two components, a controller and a scheduler.
First of all, we need to list the responsibilities of each component.

Controller

  • Manage the lifecycle of habitat crds.
  • Update the status of the job.
  • Create/reclaim pods based on the status of the job.
  • Handle events from jobs/workflows.

Scheduler

  • Assign the pod to a suitable node.
  • Evict specific pods when preemption is required.
  • Reserve resources.
  • Balance cluster utilization and equity.
  • Provide rich observability mechanisms for acquiring the current state of the scheduler, Jobs, and Pods (sending events, Prometheus, logs).
  • High error tolerance, avoiding task failures(due to non-user factors) that requires users to resubmit the job.
@zen-xu zen-xu added the documentation Improvements or additions to documentation label Oct 17, 2022
@zen-xu zen-xu added this to the stage1 milestone Oct 17, 2022
@zen-xu zen-xu added design Design details for new feature or request and removed documentation Improvements or additions to documentation labels Oct 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design Design details for new feature or request
Projects
None yet
Development

No branches or pull requests

1 participant