kubernetes-sigs / descheduler

Descheduler for Kubernetes
https://sigs.k8s.io/descheduler
Apache License 2.0
4.47k stars 668 forks source link

Descheduling framework wrap up #1187

Open ingvagabund opened 1 year ago

ingvagabund commented 1 year ago

Remaining bits:

knelasevero commented 1 year ago

As we discussed in the community meeting, wanted to list a few efforts that we can start looking at again with the current state of the framework (now that we unblocked a bunch of efforts that were paused before):

Let me know if I am forgetting something. We probably should give weights to those with regards to complexity and importance and the prioritize what we want as must haves first.

knelasevero commented 1 year ago

@damemi @ingvagabund @a7i

damemi commented 1 year ago

Like we talked about on the sig call, we have 2 categories of things to work on now for what's next: tech debt we shelved in the interest of moving along a framework release, and feature development that was blocked on the framework refactoring too much of the code.

I would like to prioritize the tech debt. But at this point, that shouldn't significantly block any more feature development, so those can happen in parallel.

For a long-term roadmap, the ideal "done" goal should be getting to a v1 api/v1.0 release. What that means right now isn't totally clear besides making the descheduler more extensible and maintainable. So, I think another good task would be to come up with some criteria for defining when we're ready to make that cut, and work tasks in toward that.

pravarag commented 1 year ago

@damemi @knelasevero @ingvagabund any idea if any work has been done on this issue https://github.com/kubernetes-sigs/descheduler/issues/923 or any priority on this one? I remember I decided to take it up but couldn't start on it last year. I'm available again to work on it and would be happy to contribute if it's okay to go.

ingvagabund commented 1 year ago

We have some examples under https://github.com/kubernetes-sigs/descheduler/tree/master/examples. Though, there's still no comprehensive guide for creating and registering a plugin to the framework. Yet, providing a guide on how to create a new plugin is already welcome. The part of registering a plugin can be done later once the WithPlugin mechanism is in place.

ingvagabund commented 1 year ago

@knelasevero thanks for the comprehensive list of todo. Work on any of the mentioned items can be started/resumed. The telemetry part might still experience a shifting code until the WithPlugin mechanics and removing the cachedClient client code are in place. Though, the work can always be delivered in steps.

Dentrax commented 1 year ago

This is really great list! Thanks for this. I'd like to get into #696, if someone enlighten my way and show where to start to initialize an "event-triggered strategy".

damemi commented 1 year ago

re: out of tree plugins it would be great if we could pick up https://github.com/kubernetes-sigs/descheduler/pull/1087 and https://github.com/kubernetes-sigs/descheduler/pull/1092, unless we want to wait and solve https://github.com/kubernetes-sigs/descheduler/issues/1089 first

knelasevero commented 1 year ago

re: out of tree plugins it would be great if we could pick up #1087 and #1092, unless we want to wait and solve #1089 first

I think we need a proper mechanism for out of tree plugins first

k8s-triage-robot commented 9 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

knelasevero commented 9 months ago

/remove-lifecycle stale

k8s-triage-robot commented 4 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale