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

skip eviction when pod creation time is below minPodAge threshold setting #1475

Merged

Conversation

victorgs
Copy link
Contributor

In the default initialization phase of the descheduler, add a new constraint to not evict pods that creation time is below minPodAge threshold. I have used minutes for the threshold, but if you prefer seconds, I don't mind changing it.

Added value:

  • Avoid crazy pod movement when the autoscaler scales up and down.

  • Avoid evicting pods when they are warming up.

  • Decreases the overall cost of eviction as no pod will be evicted before doing significant amount of work.

  • Guard against scheduling. Descheduling loops in situations where the descheduler has a different node fit logic from scheduler, like not considering topology spread constraints.


I was testing the change in a local cluster:
I0716 13:51:27.441401 1 defaultevictor.go:249] "Pod fails the following checks" pod="kube-system/nginx-deployment-8-68c4499688-vjvp8" checks="pod age is not older than MinPodAge: 10000 minutes"

We think adding this feature upstream is more beneficial than maintaining our own fork, and it may be useful to others.

…ting

In the default initialization phase of the descheduler, add a new
constraint to not evict pods that creation time is below minPodAge
threshold.

Added value:

- Avoid crazy pod movement when the autoscaler scales up and down.

- Avoid evicting pods when they are warming up.

- Decreases the overall cost of eviction as no pod will be evicted
  before doing significant amount of work.

- Guard against scheduling. Descheduling loops in situations where
  the descheduler has a different node fit logic from scheduler,
  like not considering topology spread constraints.
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jul 23, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @victorgs. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jul 23, 2024
@ingvagabund
Copy link
Contributor

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jul 24, 2024
@ingvagabund ingvagabund self-assigned this Jul 24, 2024
Copy link
Contributor

@ingvagabund ingvagabund left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for this improvement. This is a useful addition to the project. Much appreciated.

Users will need to keep in mind to avoid combining PodLifeTime's maxPodLifeTimeSeconds with minPodAge incorrectly. We currently do not validate accross plugin configurations to detect invalid combinations.

@@ -55,6 +55,9 @@ type DeschedulerPolicy struct {

// MaxNoOfPodsToTotal restricts maximum of pods to be evicted total.
MaxNoOfPodsToEvictTotal *uint `json:"maxNoOfPodsToEvictTotal,omitempty"`

// MinPodAge prevents recently created pods (within the specified minutes) from being evicted.
MinPodAge *uint `json:"minPodAge,omitempty"`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

v1alpha1 is deprecated, we will be removing this type soon. Better to avoid extending it. Also, a conversion needs to be wired to take the new field into account.

Copy link
Contributor Author

@victorgs victorgs Jul 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for your comments Jan :)

I did not get this one tbh, I removed MinPodAge from v1alpha1 and move it to DefaultEvictorArgs

type DefaultEvictorArgs struct {
metav1.TypeMeta `json:",inline"`
NodeSelector string `json:"nodeSelector"`
EvictLocalStoragePods bool `json:"evictLocalStoragePods"`
EvictDaemonSetPods bool `json:"evictDaemonSetPods"`
EvictSystemCriticalPods bool `json:"evictSystemCriticalPods"`
IgnorePvcPods bool `json:"ignorePvcPods"`
EvictFailedBarePods bool `json:"evictFailedBarePods"`
LabelSelector *metav1.LabelSelector `json:"labelSelector"`
PriorityThreshold *api.PriorityThreshold `json:"priorityThreshold"`
NodeFit bool `json:"nodeFit"`
MinReplicas uint `json:"minReplicas"`
MinPodAge *metav1.Duration `json:"minPodAge"`
}

So if we want to avoid extending v1alpha1, I do not know which conversion we need to do.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is perfect :) I meant any new field under v1alpha1 type needs a conversion from v1alpha1 -> v1alpha2 included as well. Nothing else to be done here. Thank you.

pkg/framework/plugins/defaultevictor/types.go Outdated Show resolved Hide resolved
README.md Outdated
@@ -145,7 +145,7 @@ The Default Evictor Plugin is used by default for filtering pods before processi
|`priorityThreshold`|`priorityThreshold`||(see [priority filtering](#priority-filtering))|
|`nodeFit`|`bool`|`false`|(see [node fit filtering](#node-fit-filtering))|
|`minReplicas`|`uint`|`0`| ignore eviction of pods where owner (e.g. `ReplicaSet`) replicas is below this threshold |
|`minPodAge`|`uint`|`0`| ignore eviction of pods with a creation time within this threshold (in minutes) |
|`minPodAge`|`metav1.Duration`|`0`| ignore eviction of pods with a creation time within this threshold (in minutes) |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"in minutes" can be dropped

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in a8502e4 ty!

if pod.Status.StartTime == nil || time.Since(pod.Status.StartTime.Time) < time.Duration(defaultEvictorArgs.MinPodAge)*time.Minute {
return fmt.Errorf("pod age is not older than MinPodAge: %d minutes", defaultEvictorArgs.MinPodAge)
if pod.Status.StartTime == nil || time.Since(pod.Status.StartTime.Time) < defaultEvictorArgs.MinPodAge.Duration {
return fmt.Errorf("pod age is not older than MinPodAge: %d seconds", uint(defaultEvictorArgs.MinPodAge.Duration.Seconds()))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duration.String() will help to keep the value short and redeable when user chooses high duration. https://pkg.go.dev/time#Duration.String

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 9adea9f

@@ -19,7 +19,6 @@ package v1alpha1
import (
"context"
"fmt"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please undone the new line removal? To keep this file unchanged.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 61b7b99

@@ -326,6 +329,8 @@ func TestDefaultEvictorFilter(t *testing.T) {
lowPriority := int32(800)
highPriority := int32(900)

minPodAge := metav1.Duration{50 * time.Minute}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pkg/framework/plugins/defaultevictor/defaultevictor_test.go:332:15: k8s.io/apimachinery/pkg/apis/meta/v1.Duration struct literal uses unkeyed fields

metav1.Duration{Duration: 50 * time.Minute}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in c7de3c4

@@ -64,6 +65,7 @@ func HaveEvictAnnotation(pod *v1.Pod) bool {
}

// New builds plugin from its arguments while passing a handle
// nolint: gocyclo
Copy link
Contributor Author

@victorgs victorgs Jul 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ingvagabund do not want to forget about this. I need to add it to make the linter pass. I saw the codebase has a bunch of these, but if you want to proceed with something else let me know.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine. We will need to examine the code at some point and reduce the complexities.

@ingvagabund
Copy link
Contributor

/label tide/merge-method-squash

@k8s-ci-robot k8s-ci-robot added the tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges. label Jul 26, 2024
@ingvagabund
Copy link
Contributor

/approve
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 26, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ingvagabund

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 26, 2024
@k8s-ci-robot k8s-ci-robot merged commit 55a0812 into kubernetes-sigs:master Jul 26, 2024
8 checks passed
@victorgs
Copy link
Contributor Author

victorgs commented Jul 26, 2024

@ingvagabund thanks for your help and review 🙇

@victorgs victorgs deleted the defaultevictor-minpodage branch July 26, 2024 13:02
@ingvagabund
Copy link
Contributor

Happy to help. Thank you for your time and contribution.

rouke-broersma referenced this pull request in broersma-forslund/homelab Sep 10, 2024
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [descheduler](https://redirect.github.com/kubernetes-sigs/descheduler)
| minor | `0.30.1` -> `0.31.0` |

---

### Release Notes

<details>
<summary>kubernetes-sigs/descheduler (descheduler)</summary>

###
[`v0.31.0`](https://redirect.github.com/kubernetes-sigs/descheduler/releases/tag/v0.31.0):
Descheduler v0.31.0

[Compare
Source](https://redirect.github.com/kubernetes-sigs/descheduler/compare/v0.30.1...v0.31.0)

#### What's Changed

- bump to to 1.22.3 to address CVE-2024-24788 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1408](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1408)
- Fix the replicas value type for the descheduler helm-chart by
[@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- Helm chart - allow 'falsey' value in cmdOption by
[@&#8203;omerap12](https://redirect.github.com/omerap12) in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- fix helm's default deschedulerPolicy by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- fix TOC location in Readme by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1413](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1413)
- use cmd context instead of using context.Background() by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- fix the issue that the pod anti-filtering rules are not taking effect
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1395](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1395)
- Bump otel semconv to 1.24 by
[@&#8203;damemi](https://redirect.github.com/damemi) in
[https://github.com/kubernetes-sigs/descheduler/pull/1429](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1429)
- chore: reduce repetition of go versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1432](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1432)
- bump go to 1.22.4 for CVE-2024-24790 and CVE-2024-24789 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1433](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1433)
- return pod qos in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1435](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1435)
- add validation ut by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1439](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1439)
- refactor some methods in e2e test by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1441](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1441)
- Automated cherry pick of
[#&#8203;1427](https://redirect.github.com/kubernetes-sigs/descheduler/issues/1427):
helm: upgrade to v0.30.1 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1431](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1431)
- chore: cleanup duplicated code by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1438](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1438)
- fix: return the unmatched cases first by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1446](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1446)
- Unit-test: add necessary ownerRef to the pod. by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- PodEvictor: refactoring and preparation for eviction requests by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1447](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1447)
- refactor: PodMatchNodeSelector method by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1450](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1450)
- return node fit error in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1436](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1436)
- test: generate uid when building a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1454](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1454)
- feat: pod evictor options by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1455](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1455)
- fix: indexer cache error when default evictor is re-initialized by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1452](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1452)
- fix: add info for error return by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1457](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1457)
- PodEvictor: turn an exceeded limit into an error by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1456](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1456)
- descheduler_test.go refactoring by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1459](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1459)
- The descheduler supports limiting the total number of pods evicted per
rescheduling cycle by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1451](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1451)
- descheduler_test.go: initDescheduler: pass a new ctx with cancel inst…
by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1460](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1460)
- pod evictor: make it thread safe by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1458](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1458)
- Update README about maxNoOfPodsToEvictTotal by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1463](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1463)
- refactor: replace k8s.io/utils/pointer with k8s.io/utils/ptr by
[@&#8203;eminaktas](https://redirect.github.com/eminaktas) in
[https://github.com/kubernetes-sigs/descheduler/pull/1464](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1464)
- feat: Add namespace override settings in Helm Chart by
[@&#8203;ternbusty](https://redirect.github.com/ternbusty) in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- fix: helm leader-election typo to `resourceNamespace` by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1443](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1443)
- helm unit tests by [@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1467](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1467)
- feat: add init and ephemeral container checks to PodLifeTime by
[@&#8203;adammw](https://redirect.github.com/adammw) in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- bump(github.com/golangci/golangci-lint)=v1.59.1 by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1473](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1473)
- e2e: TestTooManyRestarts: run descheduler as a whole instead of a
single plugin by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1472](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1472)
- e2e: TestRemoveDuplicates: limit the tested namespace by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1471](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1471)
- KEP-1397: descheduler integration with evacuation API as an
alternative to eviction API by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1354](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1354)
- skip eviction when pod creation time is below minPodAge threshold
setting by [@&#8203;victorgs](https://redirect.github.com/victorgs) in
[https://github.com/kubernetes-sigs/descheduler/pull/1475](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1475)
- fix: minor version parsing in version compatibility check by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1430](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1430)
- e2e: TestLeaderElection: delete the lease and increase the retry
period by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund)
in
[https://github.com/kubernetes-sigs/descheduler/pull/1469](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1469)
- bump go to 1.22.5 by
[@&#8203;shahar-h](https://redirect.github.com/shahar-h) in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- \[TestTooManyRestarts] e2e: build a descheduler image and run the
descheduler as a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1474](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1474)
- docs: Provide OCI annotation for where to find image sources by
[@&#8203;sklirg](https://redirect.github.com/sklirg) in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- Remove descheduler/v1alpha1 type by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1482](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1482)
- tests: de-duplicate framework handle initialization by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1483](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1483)
- \[unit test]: test descheduling limits by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1484](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1484)
- \[unit test]: simplify test pod evictor reset by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1485](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1485)
- README: drop v1alpha1 descheduler policy mention by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1498](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1498)
- bump k8s.io libs to v0.31.0 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1496](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1496)
- chore: upgrade python EOL and action versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1505](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1505)
- descheduler v0.31: update e2e test versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1504](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1504)
- feat(helm): make securityContext conditional in Deployment and CronJob
by [@&#8203;bendikp](https://redirect.github.com/bendikp) in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- Plugin args: tag arguments with omitempty to reduce the marshalled
json size by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1480](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1480)
- descheduler v0.31: update docs and manifests by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1506](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1506)
- \[e2e] no test timeouts, produce the same image tag as in production
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1508](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1508)
- chore: replace `github.com/ghodss/yaml` with `sigs.k8s.io/yaml` by
[@&#8203;Juneezee](https://redirect.github.com/Juneezee) in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

#### New Contributors

- [@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) made
their first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- [@&#8203;omerap12](https://redirect.github.com/omerap12) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- [@&#8203;duplabe](https://redirect.github.com/duplabe) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- [@&#8203;googs1025](https://redirect.github.com/googs1025) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- [@&#8203;zhifei92](https://redirect.github.com/zhifei92) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- [@&#8203;ternbusty](https://redirect.github.com/ternbusty) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- [@&#8203;adammw](https://redirect.github.com/adammw) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- [@&#8203;shahar-h](https://redirect.github.com/shahar-h) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- [@&#8203;sklirg](https://redirect.github.com/sklirg) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- [@&#8203;bendikp](https://redirect.github.com/bendikp) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- [@&#8203;Juneezee](https://redirect.github.com/Juneezee) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

**Full Changelog**:
kubernetes-sigs/descheduler@v0.30.0...v0.31.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/broersma-forslund/homelab).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
spiceratops referenced this pull request in spiceratops/k8s-gitops Sep 10, 2024
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [descheduler](https://redirect.github.com/kubernetes-sigs/descheduler)
| minor | `0.30.1` -> `0.31.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>kubernetes-sigs/descheduler (descheduler)</summary>

###
[`v0.31.0`](https://redirect.github.com/kubernetes-sigs/descheduler/releases/tag/v0.31.0):
Descheduler v0.31.0

[Compare
Source](https://redirect.github.com/kubernetes-sigs/descheduler/compare/v0.30.1...v0.31.0)

#### What's Changed

- bump to to 1.22.3 to address CVE-2024-24788 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1408](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1408)
- Fix the replicas value type for the descheduler helm-chart by
[@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- Helm chart - allow 'falsey' value in cmdOption by
[@&#8203;omerap12](https://redirect.github.com/omerap12) in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- fix helm's default deschedulerPolicy by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- fix TOC location in Readme by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1413](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1413)
- use cmd context instead of using context.Background() by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- fix the issue that the pod anti-filtering rules are not taking effect
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1395](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1395)
- Bump otel semconv to 1.24 by
[@&#8203;damemi](https://redirect.github.com/damemi) in
[https://github.com/kubernetes-sigs/descheduler/pull/1429](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1429)
- chore: reduce repetition of go versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1432](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1432)
- bump go to 1.22.4 for CVE-2024-24790 and CVE-2024-24789 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1433](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1433)
- return pod qos in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1435](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1435)
- add validation ut by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1439](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1439)
- refactor some methods in e2e test by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1441](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1441)
- Automated cherry pick of
[#&#8203;1427](https://redirect.github.com/kubernetes-sigs/descheduler/issues/1427):
helm: upgrade to v0.30.1 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1431](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1431)
- chore: cleanup duplicated code by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1438](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1438)
- fix: return the unmatched cases first by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1446](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1446)
- Unit-test: add necessary ownerRef to the pod. by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- PodEvictor: refactoring and preparation for eviction requests by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1447](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1447)
- refactor: PodMatchNodeSelector method by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1450](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1450)
- return node fit error in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1436](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1436)
- test: generate uid when building a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1454](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1454)
- feat: pod evictor options by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1455](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1455)
- fix: indexer cache error when default evictor is re-initialized by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1452](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1452)
- fix: add info for error return by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1457](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1457)
- PodEvictor: turn an exceeded limit into an error by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1456](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1456)
- descheduler_test.go refactoring by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1459](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1459)
- The descheduler supports limiting the total number of pods evicted per
rescheduling cycle by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1451](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1451)
- descheduler_test.go: initDescheduler: pass a new ctx with cancel inst…
by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1460](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1460)
- pod evictor: make it thread safe by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1458](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1458)
- Update README about maxNoOfPodsToEvictTotal by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1463](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1463)
- refactor: replace k8s.io/utils/pointer with k8s.io/utils/ptr by
[@&#8203;eminaktas](https://redirect.github.com/eminaktas) in
[https://github.com/kubernetes-sigs/descheduler/pull/1464](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1464)
- feat: Add namespace override settings in Helm Chart by
[@&#8203;ternbusty](https://redirect.github.com/ternbusty) in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- fix: helm leader-election typo to `resourceNamespace` by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1443](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1443)
- helm unit tests by [@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1467](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1467)
- feat: add init and ephemeral container checks to PodLifeTime by
[@&#8203;adammw](https://redirect.github.com/adammw) in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- bump(github.com/golangci/golangci-lint)=v1.59.1 by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1473](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1473)
- e2e: TestTooManyRestarts: run descheduler as a whole instead of a
single plugin by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1472](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1472)
- e2e: TestRemoveDuplicates: limit the tested namespace by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1471](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1471)
- KEP-1397: descheduler integration with evacuation API as an
alternative to eviction API by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1354](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1354)
- skip eviction when pod creation time is below minPodAge threshold
setting by [@&#8203;victorgs](https://redirect.github.com/victorgs) in
[https://github.com/kubernetes-sigs/descheduler/pull/1475](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1475)
- fix: minor version parsing in version compatibility check by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1430](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1430)
- e2e: TestLeaderElection: delete the lease and increase the retry
period by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund)
in
[https://github.com/kubernetes-sigs/descheduler/pull/1469](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1469)
- bump go to 1.22.5 by
[@&#8203;shahar-h](https://redirect.github.com/shahar-h) in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- \[TestTooManyRestarts] e2e: build a descheduler image and run the
descheduler as a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1474](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1474)
- docs: Provide OCI annotation for where to find image sources by
[@&#8203;sklirg](https://redirect.github.com/sklirg) in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- Remove descheduler/v1alpha1 type by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1482](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1482)
- tests: de-duplicate framework handle initialization by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1483](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1483)
- \[unit test]: test descheduling limits by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1484](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1484)
- \[unit test]: simplify test pod evictor reset by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1485](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1485)
- README: drop v1alpha1 descheduler policy mention by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1498](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1498)
- bump k8s.io libs to v0.31.0 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1496](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1496)
- chore: upgrade python EOL and action versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1505](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1505)
- descheduler v0.31: update e2e test versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1504](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1504)
- feat(helm): make securityContext conditional in Deployment and CronJob
by [@&#8203;bendikp](https://redirect.github.com/bendikp) in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- Plugin args: tag arguments with omitempty to reduce the marshalled
json size by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1480](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1480)
- descheduler v0.31: update docs and manifests by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1506](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1506)
- \[e2e] no test timeouts, produce the same image tag as in production
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1508](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1508)
- chore: replace `github.com/ghodss/yaml` with `sigs.k8s.io/yaml` by
[@&#8203;Juneezee](https://redirect.github.com/Juneezee) in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

#### New Contributors

- [@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) made
their first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- [@&#8203;omerap12](https://redirect.github.com/omerap12) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- [@&#8203;duplabe](https://redirect.github.com/duplabe) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- [@&#8203;googs1025](https://redirect.github.com/googs1025) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- [@&#8203;zhifei92](https://redirect.github.com/zhifei92) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- [@&#8203;ternbusty](https://redirect.github.com/ternbusty) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- [@&#8203;adammw](https://redirect.github.com/adammw) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- [@&#8203;shahar-h](https://redirect.github.com/shahar-h) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- [@&#8203;sklirg](https://redirect.github.com/sklirg) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- [@&#8203;bendikp](https://redirect.github.com/bendikp) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- [@&#8203;Juneezee](https://redirect.github.com/Juneezee) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

**Full Changelog**:
kubernetes-sigs/descheduler@v0.30.0...v0.31.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC43My4zIiwidXBkYXRlZEluVmVyIjoiMzguNzMuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvaGVsbSIsInR5cGUvbWlub3IiXX0=-->
lumiere-bot bot referenced this pull request in coolguy1771/home-ops Sep 19, 2024
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [descheduler](https://redirect.github.com/kubernetes-sigs/descheduler)
| minor | `0.30.1` -> `0.31.0` |

---

### Release Notes

<details>
<summary>kubernetes-sigs/descheduler (descheduler)</summary>

###
[`v0.31.0`](https://redirect.github.com/kubernetes-sigs/descheduler/releases/tag/v0.31.0):
Descheduler v0.31.0

[Compare
Source](https://redirect.github.com/kubernetes-sigs/descheduler/compare/v0.30.1...v0.31.0)

#### What's Changed

- bump to to 1.22.3 to address CVE-2024-24788 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1408](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1408)
- Fix the replicas value type for the descheduler helm-chart by
[@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- Helm chart - allow 'falsey' value in cmdOption by
[@&#8203;omerap12](https://redirect.github.com/omerap12) in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- fix helm's default deschedulerPolicy by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- fix TOC location in Readme by
[@&#8203;duplabe](https://redirect.github.com/duplabe) in
[https://github.com/kubernetes-sigs/descheduler/pull/1413](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1413)
- use cmd context instead of using context.Background() by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- fix the issue that the pod anti-filtering rules are not taking effect
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1395](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1395)
- Bump otel semconv to 1.24 by
[@&#8203;damemi](https://redirect.github.com/damemi) in
[https://github.com/kubernetes-sigs/descheduler/pull/1429](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1429)
- chore: reduce repetition of go versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1432](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1432)
- bump go to 1.22.4 for CVE-2024-24790 and CVE-2024-24789 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1433](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1433)
- return pod qos in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1435](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1435)
- add validation ut by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1439](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1439)
- refactor some methods in e2e test by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1441](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1441)
- Automated cherry pick of
[#&#8203;1427](https://redirect.github.com/kubernetes-sigs/descheduler/issues/1427):
helm: upgrade to v0.30.1 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1431](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1431)
- chore: cleanup duplicated code by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1438](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1438)
- fix: return the unmatched cases first by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1446](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1446)
- Unit-test: add necessary ownerRef to the pod. by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- PodEvictor: refactoring and preparation for eviction requests by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1447](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1447)
- refactor: PodMatchNodeSelector method by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1450](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1450)
- return node fit error in advance by
[@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1436](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1436)
- test: generate uid when building a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1454](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1454)
- feat: pod evictor options by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1455](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1455)
- fix: indexer cache error when default evictor is re-initialized by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1452](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1452)
- fix: add info for error return by
[@&#8203;googs1025](https://redirect.github.com/googs1025) in
[https://github.com/kubernetes-sigs/descheduler/pull/1457](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1457)
- PodEvictor: turn an exceeded limit into an error by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1456](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1456)
- descheduler_test.go refactoring by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1459](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1459)
- The descheduler supports limiting the total number of pods evicted per
rescheduling cycle by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1451](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1451)
- descheduler_test.go: initDescheduler: pass a new ctx with cancel inst…
by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1460](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1460)
- pod evictor: make it thread safe by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1458](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1458)
- Update README about maxNoOfPodsToEvictTotal by
[@&#8203;zhifei92](https://redirect.github.com/zhifei92) in
[https://github.com/kubernetes-sigs/descheduler/pull/1463](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1463)
- refactor: replace k8s.io/utils/pointer with k8s.io/utils/ptr by
[@&#8203;eminaktas](https://redirect.github.com/eminaktas) in
[https://github.com/kubernetes-sigs/descheduler/pull/1464](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1464)
- feat: Add namespace override settings in Helm Chart by
[@&#8203;ternbusty](https://redirect.github.com/ternbusty) in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- fix: helm leader-election typo to `resourceNamespace` by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1443](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1443)
- helm unit tests by [@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1467](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1467)
- feat: add init and ephemeral container checks to PodLifeTime by
[@&#8203;adammw](https://redirect.github.com/adammw) in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- bump(github.com/golangci/golangci-lint)=v1.59.1 by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1473](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1473)
- e2e: TestTooManyRestarts: run descheduler as a whole instead of a
single plugin by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1472](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1472)
- e2e: TestRemoveDuplicates: limit the tested namespace by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1471](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1471)
- KEP-1397: descheduler integration with evacuation API as an
alternative to eviction API by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1354](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1354)
- skip eviction when pod creation time is below minPodAge threshold
setting by [@&#8203;victorgs](https://redirect.github.com/victorgs) in
[https://github.com/kubernetes-sigs/descheduler/pull/1475](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1475)
- fix: minor version parsing in version compatibility check by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1430](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1430)
- e2e: TestLeaderElection: delete the lease and increase the retry
period by [@&#8203;ingvagabund](https://redirect.github.com/ingvagabund)
in
[https://github.com/kubernetes-sigs/descheduler/pull/1469](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1469)
- bump go to 1.22.5 by
[@&#8203;shahar-h](https://redirect.github.com/shahar-h) in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- \[TestTooManyRestarts] e2e: build a descheduler image and run the
descheduler as a pod by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1474](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1474)
- docs: Provide OCI annotation for where to find image sources by
[@&#8203;sklirg](https://redirect.github.com/sklirg) in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- Remove descheduler/v1alpha1 type by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1482](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1482)
- tests: de-duplicate framework handle initialization by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1483](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1483)
- \[unit test]: test descheduling limits by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1484](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1484)
- \[unit test]: simplify test pod evictor reset by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1485](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1485)
- README: drop v1alpha1 descheduler policy mention by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1498](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1498)
- bump k8s.io libs to v0.31.0 by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1496](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1496)
- chore: upgrade python EOL and action versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1505](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1505)
- descheduler v0.31: update e2e test versions by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1504](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1504)
- feat(helm): make securityContext conditional in Deployment and CronJob
by [@&#8203;bendikp](https://redirect.github.com/bendikp) in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- Plugin args: tag arguments with omitempty to reduce the marshalled
json size by
[@&#8203;ingvagabund](https://redirect.github.com/ingvagabund) in
[https://github.com/kubernetes-sigs/descheduler/pull/1480](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1480)
- descheduler v0.31: update docs and manifests by
[@&#8203;a7i](https://redirect.github.com/a7i) in
[https://github.com/kubernetes-sigs/descheduler/pull/1506](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1506)
- \[e2e] no test timeouts, produce the same image tag as in production
by [@&#8203;fanhaouu](https://redirect.github.com/fanhaouu) in
[https://github.com/kubernetes-sigs/descheduler/pull/1508](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1508)
- chore: replace `github.com/ghodss/yaml` with `sigs.k8s.io/yaml` by
[@&#8203;Juneezee](https://redirect.github.com/Juneezee) in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

#### New Contributors

- [@&#8203;hanyouqing](https://redirect.github.com/hanyouqing) made
their first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1378](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1378)
- [@&#8203;omerap12](https://redirect.github.com/omerap12) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1390](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1390)
- [@&#8203;duplabe](https://redirect.github.com/duplabe) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1412](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1412)
- [@&#8203;googs1025](https://redirect.github.com/googs1025) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1416](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1416)
- [@&#8203;zhifei92](https://redirect.github.com/zhifei92) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1445](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1445)
- [@&#8203;ternbusty](https://redirect.github.com/ternbusty) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1444](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1444)
- [@&#8203;adammw](https://redirect.github.com/adammw) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1468](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1468)
- [@&#8203;shahar-h](https://redirect.github.com/shahar-h) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1476](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1476)
- [@&#8203;sklirg](https://redirect.github.com/sklirg) made their first
contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1479](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1479)
- [@&#8203;bendikp](https://redirect.github.com/bendikp) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1507](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1507)
- [@&#8203;Juneezee](https://redirect.github.com/Juneezee) made their
first contribution in
[https://github.com/kubernetes-sigs/descheduler/pull/1510](https://redirect.github.com/kubernetes-sigs/descheduler/pull/1510)

**Full Changelog**:
kubernetes-sigs/descheduler@v0.30.0...v0.31.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC43My4zIiwidXBkYXRlZEluVmVyIjoiMzguNzMuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvaGVsbSIsInR5cGUvbWlub3IiXX0=-->

Co-authored-by: lumiere-bot[bot] <98047013+lumiere-bot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants