kube-scheduler-wasm-extension
kube-scheduler-wasm-extension copied to clipboard
All the things to make the scheduler extendable with wasm.
The scheduler exports `framework.Handle` to the plugins so that they can operate something on the framework side. https://github.com/kubernetes/kubernetes/blob/add482a2d31db938f3dca87920313db9d1780cf5/pkg/scheduler/framework/interface.go#L601 Some functions don't need to be implemented though, we should support the...
**What happened**: There might be several issues. 1 `testdata` action might not fail because there is no command checking if the PR includes all wasm files, like `git diff --exit-code`....
**What would you like to be added**: We should consider if context parameters should exist on plugin callbacks before formalizing the SDK. Notes : * This is an SDK only...
The Pod is cached in one scheduling cycle. https://github.com/kubernetes-sigs/kube-scheduler-wasm-extension/blob/main/guest/internal/cyclestate/cyclestate.go#L17-L19 And we can do the similar with Nodes. There are currently two types for Nodes. - nodeList in PreScore https://github.com/kubernetes-sigs/kube-scheduler-wasm-extension/blob/main/guest/prescore/prescore.go#L93 -...
We have a few examples only for very basic usecases. On the other hand, we have almost all the features the scheduling framework has. The scheduling framework is well created...
We have a performance test for our scheduler in https://github.com/kubernetes-sigs/kube-scheduler-wasm-extension/tree/main/internal/e2e/scheduler_perf. The scheduler_perf is importable now, we no longer need to maintain the copy. https://github.com/kubernetes/kubernetes/pull/119079 /kind cleanup
**What would you like to be added**: We should have a test framework to run test suit each time we have new PRs. This requires the support from [test infra](https://github.com/kubernetes/test-infra)...
QueueSort is used to build a priority queue in the scheduler to determine which Pod should be scheduled first. `Less` is called very frequently and if we implemented [`QueueSortPlugin`](https://github.com/kubernetes/kubernetes/blob/12fc215656f670dc211f5817797968d74977877e/pkg/scheduler/framework/interface.go#L354) as...
/kind documentation It describes how users maintain their wasm plugins. It'd contain how this project follows the Kubernetes version upgrades, how users deal with the breaking changes in our ABI,...
#### What type of PR is this? /kind feature /kind api-change #### What this PR does / why we need it: Added `PrefilterExtensions` #### Which issue(s) this PR fixes: Fixes...