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

Managing raw pods #976

Closed
3 tasks done
Tracked by #974 ...
ahg-g opened this issue Jul 11, 2023 · 14 comments
Closed
3 tasks done
Tracked by #974 ...

Managing raw pods #976

ahg-g opened this issue Jul 11, 2023 · 14 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@ahg-g
Copy link
Contributor

ahg-g commented Jul 11, 2023

What would you like to be added:
Management of raw pods.

kube-scheduler added support for a feature named scheduling gates, which allows an external controller to control when kube-scheduler should consider the pod for scheduling, so in a sense providing pod-level pause capability. This can be used by Kueue to manage raw pods.

Why is this needed:
Some workloads are better managed at the pod level, like Spark. This will also make it easier to support any job type without explicit integration.

Completion requirements:

This enhancement requires the following artifacts:

  • Design doc
  • API change
  • Docs update

The artifacts should be linked in subsequent comments.

@ahg-g ahg-g added the kind/feature Categorizes issue or PR as related to a new feature. label Jul 11, 2023
@alculquicondor
Copy link
Contributor

/assign

I want to take a stab at the design first.

@alculquicondor
Copy link
Contributor

Also related to #77

@tenzen-y
Copy link
Member

tenzen-y commented Oct 5, 2023

@alculquicondor @achernevskii Do we try to implement all features designed in KEP by release v0.5?

@alculquicondor
Copy link
Contributor

No, we'll just go with single pod support in 0.5 and follow up on 0.6 with the rest.

@tenzen-y
Copy link
Member

tenzen-y commented Oct 5, 2023

No, we'll just go with single pod support in 0.5 and follow up on 0.6 with the rest.

SGTM
I was concerned that this feature blocks the v0.5 release.

@kerthcet
Copy link
Contributor

I guess this is completed, right?

@tenzen-y
Copy link
Member

I guess this is completed, right?

This is not completed. The kueue doesn't support https://github.com/kubernetes-sigs/kueue/blob/main/keps/976-plain-pods/README.md#groups-of-pods-created-beforehand yet.

@achernevskii
Copy link
Contributor

/assign

@kerthcet
Copy link
Contributor

kerthcet commented Jan 5, 2024

One potential issue here is pod is both watched by kueue and scheduler, and scheduler may complete the scheduling cycle in prior than kueue, then patching gates to pod will be failed.

@tenzen-y
Copy link
Member

tenzen-y commented Jan 5, 2024

One potential issue here is pod is both watched by kueue and scheduler, and scheduler may complete the scheduling cycle in prior than kueue, then patching gates to pod will be failed.

@kerthcet IIUC, there isn't such a potential issue since the webhook will work before the kube-scheduler will do anything to the pod, right?

pod.pod.Spec.SchedulingGates = append(pod.pod.Spec.SchedulingGates, corev1.PodSchedulingGate{Name: SchedulingGateName})

@alculquicondor
Copy link
Contributor

alculquicondor commented Jan 5, 2024

Keep in mind that it's not possible to add scheduling gates to an existing pod. They always have to be set on creation or by webhooks.

@kerthcet
Copy link
Contributor

kerthcet commented Jan 7, 2024

there isn't such a potential issue since the webhook will work before the kube-scheduler will do anything to the pod

Yes, I found it, I'm in an environment with kubernetes 1.24 which doesn't support scheduling gates. sorry for that.

@alculquicondor
Copy link
Contributor

/close

Splitting remaining use case into a different issue: #1656

@k8s-ci-robot
Copy link
Contributor

@alculquicondor: Closing this issue.

In response to this:

/close

Splitting remaining use case into a different issue: #1656

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

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.
Projects
None yet
Development

No branches or pull requests

6 participants