Releases: kubernetes-sigs/karpenter
Releases · kubernetes-sigs/karpenter
v1.10.0
Features
- add a nodepool cost metric 2 (#2847) #2847 (Derek Frank)
Bug Fixes
- prevent static capacity controllers from modifying NodeClaims during NodePool deletion (#2840) #2840 (Alex Leites)
Documentation
- rfc: add grace period support for do-not-disrupt pod annotation (#2656) #2656 (Shun Takahashi)
- Add Exoscale public cloud to the list of implementations (#2896) #2896 (Philippe Chepy)
Tests
- Benchmarking tweaks to handle higher node overhead reservations and allow more time for consolidation actions (#2787) #2787 (Nathaniel Jones)
- Track karpenter memory utilization in perf tests (#2858) #2858 (Andrew Mitchell)
Chores
- deps: bump actions/cache from 5.0.2 to 5.0.3 in /.github/actions/install-deps in the action-deps group (#2834) #2834 (dependabot[bot])
- deps: bump the go-deps group with 2 updates (#2835) #2835 (dependabot[bot])
- deps: bump github/codeql-action from 4.32.0 to 4.32.1 in the actions-deps group (#2836) #2836 (dependabot[bot])
- bump go version to 1.25.7 (#2844) #2844 (Alex Leites)
- use structured logging for errors (#2599) #2599 (Michael Grosser)
- use structured logging more (#2860) #2860 (Michael Grosser)
- ignore pods that reference a pv that is marked for deletion (#2851) #2851 (Jigisha Patil)
- deps: bump golang.org/x/text from 0.33.0 to 0.34.0 in the go-deps group (#2845) #2845 (dependabot[bot])
- show nodepools when showig disruption commands (#2862) #2862 (Michael Grosser)
- bump go to 1.26.1 (#2904) #2904 (Andrew Mitchell)
- add minDrainTime (#2709) #2709 (Ryan Mistretta)
- ignore pods that use an unsupported topology key in the storageClass (#2903) #2903 (Andrew Mitchell)
v1.9.0
Features
- add a nodepool cost metric (#2584) #2584 (Derek Frank)
- Add Gte and Lte operators for requirements (#2674) #2674 (Ellis Tarn)
- Add option to enabled warmup when leader election is used (#2740) #2740 (Garvin Pang)
- Add prometheus metrics for nodepool disruption decisions performed, active disruptions (#2707) #2707 (Cameron McAvoy)
- add consolidation pipeline logging (#2786) #2786 (James Thompson)
Bug Fixes
- close race condition for tests (#2648) #2648 (Derek Frank)
- initialize npMap in metrics cost controller to prevent nil map panic (#2644) #2644 (James Thompson)
- kube-api-linter needs to be built prior to running (#2652) #2652 (Derek Frank)
- prioritize deprovisioning NodeClaims that have not been resolved (#2637) #2637 (Sumukha Radhakrishna)
- Add capacity type req to nodeclaim based on offerings capacity types (#2642) #2642 (Ashwin Saxena)
- upgrade Go to 1.25.5 to resolve GO-2025-4155 vulnerability (#2687) #2687 (Shun Takahashi)
- do not log on missing labels (#2688) #2688 (Derek Frank)
- use test.RandomName() to prevent test name collisions (#2715) #2715 (Ellis Tarn)
- allow timing variance in rate limiting test (#2716) #2716 (Ellis Tarn)
- topology spread constraint with nodeAffinityPolicy: Honor (#2639) #2639 (tal19987)
- capacity respects noeoverlay weight precedence (#2767) #2767 (Étienne Bérubé)
- deflake nomination test by using injected clock (#2781) #2781 (Ellis Tarn)
- deflake termination tests by using injected clock (#2783) #2783 (Ellis Tarn)
- remove requirements clone in topology domain scheduling (#2784) #2784 (Ryan Mistretta)
- Revert "fix: topology spread constraint with nodeAffinityPolicy: Honor (#2639)" (#2797) #2797 (Ryan Mistretta)
- Revert "feat: add a nodepool cost metric (#2584)" (#2796) #2796 (Ryan Mistretta)
- Improve Karpenter memory when using Node Overlay with copy-on-write (#2790) #2790 (Garvin Pang)
- separate volume requirements from TSC calculations (#2780) #2780 (Kevin Zhao)
- labels: simplify RestrictedLabel filtering and relax cel restrictions (#2586) #2586 (Max Cao)
Documentation
- DRA KWOK Driver for Karpenter e2e (#2501) #2501 (Alima Azamat)
- update IBM Cloud provider reference (#2613) #2613 (Josephine Pfeiffer)
- fix typo in node auto repair design (#2610) #2610 (Gowtham Gorrepati)
- clarify OCI provider is provided by Zoom (#2669) #2669 (Shun Takahashi)
- fix timezone link formatting for consistency (#2746) #2746 (Kausheel Kumar)
- Add a new talk in README (#2436) #2436 (Wei)
- fix some minor typos (#2747) #2747 (Kausheel Kumar)
- clarify local e2e usage and suite layout (#2759) #2759 (Kausheel Kumar)
- Add a readme for design doc folder (#2760) #2760 (Derek Frank)
- fix typo "decrees" → "decrease" in price adjustment descriptions (#2799) #2799 (Shun Takahashi)
- fix typo 'compatability' to 'compatibility' (#2798) #2798 (Shun Takahashi)
Code Refactoring
- simplify ToNodeClaim using Offerings and InstanceTypes methods (#2782) #2782 (Ellis Tarn)
- simplify getCandidatePrices to not return error (#2812) #2812 (Ellis Tarn)
Tests
- setup CI for performance testing (#2594) #2594 (Jigisha Patil)
- lock unsynced time mutex during cluster reset for raceless testing (#2606) #2606 (Derek Frank)
- Added perf-test e2e benchmark tests (#2609) #2609 (Nathaniel Jones)
- fix flaking static provisioning test (#2663) #2663 (Derek Frank)
- fix flaking provisioning large replica test (#2677) #2677 (Derek Frank)
- add GetNodePoolCost func for perf testing (#2602) [#2602](https://github.com/kubernetes-...
v1.8.2
Bug Fixes
- revert #2639 (#2791) #2791 (Jigisha Patil)
v1.8.1
Warning
This release contains a regression which may prevent Karpenter from scheduling pods with specific TopologySpreadConstraint configurations. For more details, see the following issue: #2785
Bug Fixes
- topology spread constraint with nodeAffinityPolicy: Honor (#2639) (cherrypick) (#2768) #2768 (Amanuel Engeda)
- prioritize deprovisioning NodeClaims that have not been resolved (#2637) (Cherrypick) (#2770) #2770 (Amanuel Engeda)
- Add capacity type req to nodeclaim based on offerings capacity types (#2642) (Cherrypick) (#2769) #2769 (Amanuel Engeda)
Chores
- Add locking mechanism to nodePoolRegistration State (#2620) (#2621) #2621 (Jigisha Patil)
v1.8.0
Features
- Support Pod Level Resources (#2383) #2383 (Tsubasa Nagasawa)
- Support Static Capacity (#2521) #2521 (Sumukha Radhakrishna)
Bug Fixes
- handle nil selector when hashing in topology (#2511) #2511 (Jason Deal)
- merge limits into requests when constructing ds pods (#2514) #2514 (Jason Deal)
- default CPU_REQUESTS when non-positive value is provided (#2516) #2516 (Jason Deal)
- node: prevent empty providerID causing false NodeClaim matches (#2507) #2507 (Neil)
- over provisioning static nodeclaims during controller crashes (#2534) #2534 (Sumukha Radhakrishna)
- flaky static provisioning unit test (#2546) #2546 (Sumukha Radhakrishna)
- nodepool crd definition should explicitly say replicas field as alpha (#2554) #2554 (Sumukha Radhakrishna)
Chores
- deps: bump the k8s-go-deps group with 3 updates (#2504) #2504 (dependabot[bot])
- rolling back to 1.34 (#2512) #2512 (Derek Frank)
- drop consistency error to info log (#2542) #2542 (Jason Deal)
- Update NodeRegistrationHealthy SC to use a buffer mechanism (#2520) #2520 (Jigisha Patil)
v1.3.4
Bug Fixes
- allow non-churn empty nodes to be disrupted (#2206) (#2539) #2539 (Andrew Mitchell)
Chores
- backport jmdeal approver status to v1.3.x (#2558) #2558 (Jason Deal)
v1.2.4
Bug Fixes
- allow non-churn empty nodes to be disrupted (#2206) (#2540) #2540 (Andrew Mitchell)
Chores
- backport jmdeal approver status to v1.2.x (#2557) #2557 (Jason Deal)
v1.1.4
Bug Fixes
- allow non-churn empty nodes to be disrupted (#2206) (#2541) #2541 (Andrew Mitchell)
Chores
- backport jmdeal approver status to v1.1.x (#2555) #2555 (Jason Deal)
v1.0.8
Bug Fixes
- allow non-churn empty nodes to be disrupted (#2206) (#2544) #2544 (Andrew Mitchell)
Chores
- backport jmdeal approver status to v1.0.x (#2556) #2556 (Jason Deal)
v1.4.1
Bug Fixes
- allow non-churn empty nodes to be disrupted (#2206) (#2538) #2538 (Andrew Mitchell)