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

delay pod creation feature not consider resourcequota #1014

Closed
merryzhou opened this issue Aug 27, 2020 · 8 comments
Closed

delay pod creation feature not consider resourcequota #1014

merryzhou opened this issue Aug 27, 2020 · 8 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.

Comments

@merryzhou
Copy link
Contributor

/kind feature

As mentioned in delay pod design, scheduler should watch resourcequota to decide whether podGroup has enough resource quota to create.

Quota
To delay pod creation, both kube-batch and PodGroupMinResources will watch ResourceQuota to decide which PodGroup should be in queue firstly. The decision maybe invalid because of race condition, e.g. other controllers create Pods. In such case, PodGroupMinResources will reject PodGroup creation and keep InQueue state until kube-batch transform it back to Pending. To avoid race condition, it's better to let kube-batch manage Pod number and resources (e.g. CPU, memory) instead of Quota

But now in the implementation, the enqueue action controls the quota by queue.Spec.Capability instead of k8s resourcequota, so I am curious about the reason why not use resourcequota to control quota。 Is there any consideration?

Environment:

  • Volcano Version: v0.4.2
@volcano-sh-bot volcano-sh-bot added the kind/feature Categorizes issue or PR as related to a new feature. label Aug 27, 2020
@hzxuzhonghu
Copy link
Collaborator

The queue is cluster scoped not namespace scoped, and it is a set of podgroups in different namespaces. And different queues can include podgroups of the same namespaces too.

As the resourcequota, it is the kube-apiserver that use it to intercept the pod creation

@k82cn
Copy link
Member

k82cn commented Aug 27, 2020

scheduler should watch resourcequota to decide whether podGroup has enough resource quota to create.

+1, it's better to avoid enquing an PodGrouop which does not have enough quota :)

Would you like to create a PR for that?

@merryzhou
Copy link
Contributor Author

Would you like to create a PR for that?

ok,I‘d like to have a try.

@stale
Copy link

stale bot commented Nov 26, 2020

Hello 👋 Looks like there was no activity on this issue for last 90 days.
Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗
If there will be no activity for 60 days, this issue will be closed (we can always reopen an issue if we need!).

@stale stale bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 26, 2020
@stale
Copy link

stale bot commented Jan 25, 2021

Closing for now as there was no activity for last 60 days after marked as stale, let us know if you need this to be reopened! 🤗

@k82cn
Copy link
Member

k82cn commented Mar 21, 2022

Let's keep this issue open :)

@k82cn k82cn reopened this Mar 21, 2022
@stale stale bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 21, 2022
@stale
Copy link

stale bot commented Jun 19, 2022

Hello 👋 Looks like there was no activity on this issue for last 90 days.
Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗
If there will be no activity for 60 days, this issue will be closed (we can always reopen an issue if we need!).

@stale stale bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jun 19, 2022
@stale
Copy link

stale bot commented Sep 8, 2022

Closing for now as there was no activity for last 60 days after marked as stale, let us know if you need this to be reopened! 🤗

@stale stale bot closed this as completed Sep 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.
Projects
None yet
Development

No branches or pull requests

4 participants