Releases: kubernetes-sigs/kube-scheduler-simulator
simulator/v0.4.0
Hey yo, here's a new release of the simulator, right before Kubecon NA!
After a long journey, we’ve achieved a significant milestone: the simulator’s internal scheduler now operates as a standalone component.
This has been a long-term goal, and we’re excited to have completed it in this release.
Introducing Debuggable Scheduler—a scheduler that functions like others but with a unique advantage. It annotates Pods with detailed information about all plugin decisions made during each scheduling cycle,
providing deep insights into the scheduling process like the simulator does.
The documentation page describes the full feature set of the debuggable scheduler.
In this release, we completed a full refactoring within the simulator for the decoupling, finally removed the scheduler inside the simulator,
and migrated our docker-composer configuration to have a separate debuggable scheduler container.
Huge thanks to @YamasouA for driving this enhancement!
BREAKING CHANGE
We changed all the internal annotations on Pods from scheduler-simulator/*
to kube-scheduler-simulator.sigs.k8s.io/*
.
If you have a tool, for example, reading those annotations, you should migrate to new ones.
What's Changed
- Update RELEASE.md to replace a dead link by @sanposhiho in #371
- Update docker-compose.yml for v0.3.0 by @sanposhiho in #372
- docs: enhance the documentation of importing feature by @sanposhiho in #374
- Fix Default Config Loading When ConfigFile Is Not Specified by @Ianwu0812 in #377
- Remove alculquicondor and Huang-Wei from OWNERS by @alculquicondor in #378
- Follow Docker Compose convention and practice by @ordovicia in #379
- Fix 404 errors in API reference by @Okabe-Junya in #380
- Simulate scheduler with debuggable scheduler container by @YamasouA in #370
- cleanup externalSchedulerEnable by @YamasouA in #382
- feat: add debuggable-scheduler at cloudbuild by @sanposhiho in #385
- fix: change the annotation from
scheduler-simulator/*
tokube-scheduler-simulator.sigs.k8s.io/*
by @sanposhiho in #387
New Contributors
- @Ianwu0812 made their first contribution in #377
- @alculquicondor made their first contribution in #378
- @ordovicia made their first contribution in #379
- @Okabe-Junya made their first contribution in #380
Full Changelog: simulator/v0.3.0...simulator/v0.4.0
simulator/v0.3.0
Hey everyone! 👋
We’re thrilled to announce the release of version v0.3.0 of our simulator, featuring an exciting new syncing feature!
You can learn more about the motivation behind this feature in this issue.
A big shout-out to @saza-ku for their valuable contribution to this enhancement!
What's Changed
- Modify the path on the document by @sanposhiho in #328
- update docker-compose.yml with v0.2.0 by @sanposhiho in #343
- Not trying to load a default kubeconfig when a kubeconfig is passed by @utam0k in #345
- Use docker compose instead of docker-compose by @utam0k in #346
- clarify the import is required by @sanposhiho in #342
- move simulator entrypoint by @YamasouA in #347
- handle the case when the config option is not specified by @YamasouA in #351
- create a separated debuggable scheduler container by @YamasouA in #350
- Support arm64 by @yeahdongcn in #356
- correct an example config on import-cluster-resources.md by @stijndehaes in #359
- Support extender on debuggable scheduler by @YamasouA in #358
- Fix to load kubeconfig specified by simulator server configuration by @saza-ku in #362
- Kubernetes 1.30 by @utam0k in #361
- Optimize Dockerfiles to reduce the time needed to build by @utam0k in #366
- Rename
ImportClusterResourceService
toOneshotClusterResourceImporter
by @saza-ku in #365 - Update the doc for CORS_ALLOWED_ORIGIN_LIST by @sanposhiho in #349
- Add fake-source-cluster for testing the sync service by @saza-ku in #364
- Use buildx in Cloud Build to use the build cache by @utam0k in #368
- Implement syncer by @saza-ku in #367
New Contributors
- @utam0k made their first contribution in #345
- @YamasouA made their first contribution in #347
- @yeahdongcn made their first contribution in #356
- @stijndehaes made their first contribution in #359
- @saza-ku made their first contribution in #362
Full Changelog: simulator/v0.2.0...simulator/v0.3.0
simulator/v0.2.0
Hey there! We're excited to announce the v0.2.0 release of our simulator. This update mainly focuses on bug fixes and efforts to reduce our maintenance workload.
The most significant change in this release is our migration of the internal kube-apiserver to KWOK. This was a considerable maintenance challenge for us, and we're thrilled to have streamlined our processes with this update. Special shout-outs to @sivchari and @wzshiming for their invaluable contributions to this effort!
What's Changed
- Replace api/v1/namespaces//pods with api/v1/pods by @Lan-ce-lot in #313
- chore: pkg imported more than once by @testwill in #306
- Use correct log function in NodeNumber by @codefromthecrypt in #314
- Bump etcd to v3.4.26 by @des1redState in #316
- Config: add new lint rule duplicated-imports by @196Ikuchil in #307
- add
make docker_down_local
by @sanposhiho in #319 - 【WebUI】Fix errors raised by linter by @196Ikuchil in #323
- Fix function naming typo by @vicoooo26 in #324
- fix: delete volumes when make docker_down by @Lan-ce-lot in #326
- upgrade Kubernetes version to v0.28.5 by @sanposhiho in #329
- Update golang to v1.21 in Dockerfile by @sanposhiho in #330
- delete: deprecated linters by @sivchari in #334
- migrate the internal kube-apiserver to kwok by @sivchari in #333
- Bump Kubernetes v1.29.3 by @sivchari in #338
- Bump Go 1.22 by @sivchari in #339
- fix: reduce the places where users have to register for using custom plugins by @sanposhiho in #332
New Contributors
- @Lan-ce-lot made their first contribution in #313
- @testwill made their first contribution in #306
- @codefromthecrypt made their first contribution in #314
- @des1redState made their first contribution in #316
- @vicoooo26 made their first contribution in #324
Full Changelog: simulator/v0.1.1...simulator/v0.2.0
simulator/v0.1.1
Hey yo. Here is the new release for the simulator.
simulator/v0.1.1 only contains some bug patches and enhancements in our documentations.
What's Changed
- fix(deps): modify wrong version on go.mod by @sanposhiho in #292
- remove adtac from OWNERS by @sanposhiho in #297
- Add 196Ikuchil to approvers by @196Ikuchil in #299
- Refactor ExportService and ReplicateExistingClusterService by @196Ikuchil in #300
- Add some docs for the extenders and export/import by @196Ikuchil in #302
- Refactor snapshot service by @196Ikuchil in #304
- Remove no longer needed resource service by @196Ikuchil in #305
- fix: update the documentation to run the simulator by pulling images from the registry by @sanposhiho in #298
- doc: create the doc for the debuggable scheduler by @sanposhiho in #301
- Fix config version on extender docs by @196Ikuchil in #309
- update the image tag to v0.1.1 by @sanposhiho in #310
Full Changelog: simulator/v0.1.0...simulator/v0.1.1
simulator/v0.1.0
kube-scheduler-simulator is started as a project of Google Summer of Code 2021.
Even after GSoC finished, we went through 2 years of development with wonderful contributors,
and now I'm really pleased to announce its first release here.
Big shout out to all contributors; and especially the most powerful contributor @196Ikuchil.
This is not a goal, but just a starting line; keep growing up this project further!
What's Changed
- add: kube-scheduler-simulator by @sanposhiho in #1
- Fix: typo on SECURITY_CONTACTS by @sanposhiho in #2
- docs: add more docs on package di by @sanposhiho in #3
- Fix: typo serve→start by @sanposhiho in #14
- GitHub Actions for backend (test and lint) by @sanposhiho in #6
- Add sanposhiho on reviewers by @sanposhiho in #24
- Update README.md about memory allocation to Docker by @riita10069 in #30
- Add sanposhiho to approvers by @sanposhiho in #39
- Set environment variable HOST=0.0.0.0 to simulator-frontend in docker-compse.yaml by @p1ass in #25
- Updated restart scheduler for restore old setting by @tamboliasir1 in #36
- add pull request template by @sanposhiho in #43
- pin node image to Node.js v16 by @tk3fftk in #45
- Fix: file name .dockerignore has blank by @sanposhiho in #9
- use https instead of ssh for submodule by @sanposhiho in #40
- Support build with cloudbuild for gcr by @sanposhiho in #21
- Move PULL_REQUEST_TEMPLATE.md to a valid place by @sanposhiho in #51
- add reset scheduler configuration by @sivchari in #54
- fix error message by @sivchari in #57
- add prealloc linter and fix detected target by @sivchari in #59
- Fix syntax error on cloudbuild.yaml by @sanposhiho in #50
- support PriorityClass on backend by @khalilswdp in #49
- improve lint setting on frontend by @sanposhiho in #7
- Fix the lint issue on
NewSimulatorServer
with nolint directive by @sanposhiho in #63 - change context for frontend build by @sanposhiho in #62
- extend timeout for cloud build by @sanposhiho in #65
- fix klog format by @sivchari in #66
- Feature add frontend ci by @sivchari in #58
- support PriorityClass on frontend by @khalilswdp in #53
- Update makefile for go-mod downloads by @pravarag in #76
- Update README.md to reflect the addition of PriorityClass by @khalilswdp in #78
- override configuration correctly, even if passed PluginConfig has args data on PluginConfig.Args.Raw by @sanposhiho in #13
- support initial scheduler configuration option via an environment variable by @momom-i in #80
- Workaround: v-data-table cannot scroll when the bar cannot be scrolled vertically by @sanposhiho in #18
- add initial config description on README by @momom-i in #83
- add resources "delete all" method in each service by @sivchari in #68
- Fix lint error of ResourceBar by @sivchari in #86
- Implement import/export API by @196Ikuchil in #64
- fix(frontend): react on nuxt telemetry user input during
yarn start
by @skuethe in #88 - Run NormalizeScore correctly by @sanposhiho in #90
- Fix missing links on doc by @196Ikuchil in #93
- add configuration to change the URL of kube-apiserver by @matthewygf in #94
- Disable the delete button when the selected
priorityclass
is the system one by @196Ikuchil in #104 - Add
EXTERNAL_IMPORT_ENABLED
environment variables by @196Ikuchil in #102 - Support to
WithIgnoreErr
option in theExportService
by @196Ikuchil in #103 - Fix race condition in store result map by @Ezetowers in #107
- Add reset service by @sivchari in #105
- Add filtering logic for a
PriorityClass
that the name is prefixed withsystem-
by @196Ikuchil in #108 - Remove
IgnoreErr
options from theImport/Export
function called via web API by @196Ikuchil in #112 - Import
PriorityClassList
component onindex.vue
explicitly by @196Ikuchil in #117 - Remove line feeds at the end of files by @196Ikuchil in #118
- Implement Import/export button on frontend by @196Ikuchil in #81
- Import from existing cluster by @196Ikuchil in #111
- support reset feature on web ui by @sivchari in #114
- Rename simulatorPlugin to wrappedPlugin by @196Ikuchil in #126
- Implement table view on Web UI by @196Ikuchil in #119
- Display the kind/apiVersion in the scheduler configuration yaml by @markstur in #129
- Request kube apiserver directly from frontend by @momom-i in #115
- Add deprecate description by @momom-i in #127
- Remove package-lock.json by @sanposhiho in #143
- Delete GitHub Actions by @sanposhiho in #100
- Enable to check if etcd is on path in start_simulator.sh by @sanposhiho in #15
- Replace k8sapiserver startAPIServer to use Kubernetes createServerChain by @matthewygf in #121
- add check if Node has Pods or not before deleting scheduled Pods on Node by @sanposhiho in #146
- support namespace in each service by @196Ikuchil in #137
- Overwrite user agent to prevent panic in kube-apiserver by @sanposhiho in #148
- Rename the environment variable FRONTEND_URL to CORS_ALLOWED_ORIGIN_LIST and accept list by @sanposhiho in #157
- Cleanup deprecated handler by @sanposhiho in #158
- Expand simulator plugin to allow arbitrary processing before/after execution of
Filter
,Score
andNormalizeScore
by @196Ikuchil in #128 - Fixed how to specify the namespace in
Reset
function for resources with a namespace by @196Ikuchil in #162 - Fix error handling on calling of reset function on the web UI. by @196Ikuchil in #163
- fix: add doc...