-
Notifications
You must be signed in to change notification settings - Fork 969
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
Added Queue design doc. #95
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks :)
|
||
The admission controller will check `PodGroup`/`Job` 's queue when creation: | ||
|
||
1. if the queue does not exist, the creation will be rejected |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we inject the default queue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe reject it in the first version; we can refer to how prioirtyCass for such kind of default value.
The admission controller will check `PodGroup`/`Job` 's queue when creation: | ||
|
||
1. if the queue does not exist, the creation will be rejected | ||
2. if the queue is releasing, the creation will be also rejected |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about the default weight in admission hook
|
||
type QueueSpec struct { | ||
// The weight of queue to share the resources with each other. | ||
Weight int32 `json:"weight,omitempty" protobuf:"bytes,1,opt,name=weight"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the meaning of the value? Should have a clear desc.
|
||
* Proportion plugin: | ||
|
||
Proportion plugin is used to share resource between `Queue`s by weight. The deserved resource of a queue is `(weight/total-weight) * total-resource`. When allocating resources, it will not allocate resource more than its deserved resources. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIUC, it seems total-weight
will sum up all the weight of the queues, as the queue increases, the (weight/total-weight)
will change. How do scheduler adjust the proportion of resources an old queue occupies ? Let's say the queue resources are all used up, will this trigger a preemt?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another case, cluster resources may also change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kube-batch will continue executing those actions every X period.
8fc3cca
to
279a266
Compare
Signed-off-by: Da K. Ma <klaus1982.cn@gmail.com>
/lgtm |
@hzxuzhonghu would you please working on this ? thanks:) |
Sure, will do |
Signed-off-by: Da K. Ma klaus1982.cn@gmail.com