1
0
mirror of https://github.com/kubernetes-sigs/descheduler.git synced 2026-01-26 21:31:18 +01:00
Commit Graph

1480 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
2fee121df3 Merge pull request #1282 from a7i/cherry_pick_pull
copy cherry_pick_pull script form kubernetes/kubernetes
2023-11-20 18:35:57 +01:00
Kubernetes Prow Robot
c3424337c8 Merge pull request #1276 from jklaw90/add-reviewer
adding jklaw90 to reviewers
2023-11-20 16:25:05 +01:00
Kubernetes Prow Robot
f4977d1518 Merge pull request #1249 from a7i/amir/version-skew-eks
fix: version skew compatibility for managed kubernetes providers
2023-11-14 12:48:58 +01:00
Kubernetes Prow Robot
96c1c299eb Merge pull request #1281 from dimunech/fix-ownerkey-logs
fix: display ownerKey in the logs correctly
2023-11-09 04:31:54 +01:00
Amir Alavi
ccff5fe155 copy cherry_pick_pull script form kubernetes/kubernetes 2023-11-02 11:10:59 -04:00
Dmitrii Erokhin
289c003f87 fix: display ownerKey in the logs correctly 2023-11-02 11:23:11 +03:00
Kubernetes Prow Robot
c4ab2008e4 Merge pull request #1233 from a7i/match-label-keys
topologyspreadconstraint: support `matchLabelKeys`
2023-10-31 10:42:30 +01:00
Amir Alavi
19aa8a234c docs: update supported topologySpreadConstraint fields
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-10-30 09:16:15 -04:00
Amir Alavi
bf2bd73f64 topologyspreadconstraint: refactor to match scheduler's struct and initialization
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-10-30 09:16:14 -04:00
Amir Alavi
704a82bcf4 topologyspreadconstraint: support matchLabelKeys
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-10-30 09:16:14 -04:00
Kubernetes Prow Robot
a01322a5e5 Merge pull request #1277 from a7i/amir/CVE-2023-25151
bump deps for CVE-2023-25151
2023-10-30 10:14:50 +01:00
Amir Alavi
30aec81951 bump deps for CVE-2023-25151
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-10-27 16:35:24 -04:00
Julian Lawrence
d8159c571d adding jklaw90 to reviewers 2023-10-26 20:18:49 -07:00
Kubernetes Prow Robot
c59a0f0951 Merge pull request #1270 from ingvagabund/CVE-2023-44487-fixes
CVE 2023 44487 fixes
2023-10-19 18:31:11 +02:00
Jan Chaloupka
999dd3dc25 disable http/2 by default, enable it if needed 2023-10-19 17:15:57 +02:00
Jan Chaloupka
a243681ff8 Pin k8s to v1.28.3 2023-10-19 16:30:30 +02:00
Kubernetes Prow Robot
73eb42467a Merge pull request #1263 from ingvagabund/bump-deps-1.28
Bump dependencies to address CVE-2023-44487
2023-10-16 13:44:19 +02:00
Jan Chaloupka
b8eec7a459 Bump dependencies to address CVE-2023-44487 2023-10-16 13:19:54 +02:00
Aditya Purandare
a7d8e69820 helm: ability to specify dnsConfig (#1260)
* Update values.yaml

* Update deployment.yaml

* Update cronjob.yaml

* fix indentation issue in helm chart
2023-10-11 00:12:22 +02:00
Kubernetes Prow Robot
3bd9dfc625 Merge pull request #1245 from a7i/helm-cronjob-timezone
helm: support of `timeZone` for CronJob
2023-09-26 04:59:13 -07:00
Amir Alavi
dca2e58b8e fix: version skew compatibility for managed kubernetes providers 2023-09-21 21:21:26 -04:00
Antoine Deschênes
267efb3a4b nodeFit: Use info log level if won't fit (#1220)
Pods that don't pass the nodeFit condition currently log an
unsuppressable error message to logs. This changes the log level to info
as it's a normal operating condition.

Signed-off-by: Antoine Deschênes <antoine.deschenes@linux.com>
2023-09-20 11:46:01 -07:00
Kubernetes Prow Robot
c0d60196a1 Merge pull request #1246 from a7i/v0.28-image-ref
update image references to point to v0.28.0
2023-09-20 07:38:02 -07:00
Amir Alavi
2e1008e290 update image references to point to v0.28.0 2023-09-19 22:06:39 -04:00
Amir Alavi
714a347692 helm: support of timeZone for CronJob 2023-09-19 22:03:42 -04:00
Kubernetes Prow Robot
af4b32c6ba Merge pull request #1241 from a7i/fix/evicatable-namespace-docs
docs: fix evictableNamespaces example
2023-09-15 07:16:15 -07:00
Kubernetes Prow Robot
c602d1256f Merge pull request #1242 from jklaw90/fix-lint-config
fix: golangci config
2023-09-12 18:36:11 -07:00
Julian Lawrence
a592cbc417 fixed config for lint 2023-09-11 20:50:42 -07:00
Amir Alavi
c557d187ab docs: fix evictableNamespaces example 2023-09-10 22:07:45 -04:00
Kubernetes Prow Robot
e8427d0eb4 Merge pull request #1229 from cayla/cf/consistent-arg
helm: update cronjob args argument to avoid unmarshal error
2023-08-25 20:29:21 -07:00
Cayla Fauver
c0f9761a61 helm: update cronjob args argument to avoid unmarshal error
Make it match both the deployment parallel

33e9a52385/charts/descheduler/templates/cronjob.yaml (L71)

As well as the documented arg

https://github.com/kubernetes-sigs/descheduler/blob/master/docs/user-guide.md#balance-cluster-by-pod-age
2023-08-25 09:13:22 -04:00
Kubernetes Prow Robot
e1dc63bcc7 Merge pull request #1228 from a7i/fix-structured-err
fix: structured err logs in eviction
2023-08-25 01:23:17 -07:00
Amir Alavi
8a458e0dcb fix: structured err logs in eviction
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-08-24 18:18:09 -04:00
Amir Alavi
99246cd254 topologySpreadConstraints: handle nodeTaintsPolicy and nodeAffinityPolicy constraints (#1218)
* Add handling for node eligibility

* Make tests buildable

* Update topologyspreadconstraint.go

* Updated test cases failing

* squashed changes for test case addition

corrected function name

refactored duplicate TopoContraint check logic

Added more test cases for testing node eligibility scenario

Added 5 test cases for testing scenarios related to node eligibility

* topologySpreadConstraints e2e: `nodeTaintsPolicy` and `nodeAffinityPolicy` constraints

---------

Co-authored-by: Marc Power <marcpow@microsoft.com>
Co-authored-by: nitindagar0 <81955199+nitindagar0@users.noreply.github.com>
2023-08-24 08:32:21 -07:00
Kubernetes Prow Robot
33e9a52385 Merge pull request #1225 from a7i/helm-1.28
helm: bump chart to v0.28.0
2023-08-24 05:54:21 -07:00
Amir Alavi
b833607504 helm: bump chart to v0.28.0
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-08-24 08:41:23 -04:00
Kubernetes Prow Robot
bae120929e Merge pull request #1224 from a7i/docs-1.28
k8s 1.28: update docs and go-version
v0.28.0
2023-08-23 08:53:29 -07:00
Amir Alavi
30dd78dcee k8s 1.28: update docs and go-version
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2023-08-22 20:46:27 -04:00
Kubernetes Prow Robot
1d4dc57ad1 Merge pull request #1221 from antoinedeschenes/fix-profile-span-attribute
profile: fix span attribute typo
2023-08-22 15:39:55 -07:00
Antoine Deschênes
3f0c06b58d profile: fix span attribute typo
Fix profile attribute "prpfile" typo in trace spans.

Signed-off-by: Antoine Deschênes <antoine.deschenes@linux.com>
2023-08-22 13:10:20 -04:00
Kubernetes Prow Robot
bb4721049f Merge pull request #1216 from JaneLiuL/master
Bump Kubernetes dependencies to v1.28.0
2023-08-21 07:21:24 -07:00
Amir Alavi
78c9ae851c upgrade kind to v0.20.0 2023-08-21 10:04:31 -04:00
Kubernetes Prow Robot
9660a7b469 Merge pull request #1202 from a7i/gitattributes
.gitattribute to not pollute PRs or stats
2023-08-21 05:09:23 -07:00
JaneLiuL
81aa897c48 Bump Kubernetes dependencies to v1.28.0 2023-08-17 15:59:15 +08:00
Kubernetes Prow Robot
f4c64c2c75 Merge pull request #1215 from Abirdcfly/master
fix: descheduler_loop_duration_seconds has wrong value
2023-08-10 01:05:27 -07:00
Abirdcfly
ca5781827a fix: descheduler_loop_duration_seconds has wrong value
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2023-08-09 21:36:53 +08:00
Jordi Piqué Sellés
31704047c5 feat: Implement preferredDuringSchedulingIgnoredDuringExecution for RemovePodsViolatingNodeAffinity (#1210)
* feat: Implement preferredDuringSchedulingIgnoredDuringExecution for RemovePodsViolatingNodeAffinity

Now, the descheduler can detect and evict pods that are not optimally
allocated according to the "preferred..." node affinity. It only evicts
a pod if it can be scheduled on a node that scores higher in terms of
preferred node affinity than the current one.

This can be activated by enabling the RemovePodsViolatingNodeAffinity
plugin and passing "preferredDuringSchedulingIgnoredDuringExecution" in
the args.

For example, imagine we have a pod that prefers nodes with label "key1:
value1" with a weight of 10. If this pod is scheduled on a node that
doesn't have "key1: value1" as label but there's another node that has
this label and where this pod can potentially run, then the descheduler
will evict the pod.

Another effect of this commit is that the
RemovePodsViolatingNodeAffinity plugin will not remove pods that don't
fit in the current node but for other reasons than violating the node
affinity. Before that, enabling this plugin could cause evictions on
pods that were running on tainted nodes without the necessary
tolerations.

This commit also fixes the wording of some tests from
node_affinity_test.go and some parameters and expectations of these
tests, which were wrong.

* Optimization on RemovePodsViolatingNodeAffinity

Before checking if a pod can be evicted or if it can be scheduled
somewhere else, we first check if it has the corresponding nodeAffinity
field defined. Otherwise, the pod is automatically discarded as a
candidate.

Apart from that, the method that calculates the weight that a pod
gives to a node based on its preferred node affinity has been
renamed to better reflect what it does.
2023-08-04 03:08:21 -07:00
Kubernetes Prow Robot
1be0ab2bd1 Merge pull request #1207 from a7i/amir/fix-cm-RemoveDuplicates
fix: base configmap missing plugin RemoveDuplicates
2023-07-26 07:06:19 -07:00
Amir Alavi
f8442fbb0d fix: base configmap missing plugin RemoveDuplicates 2023-07-25 22:00:49 -04:00
Kubernetes Prow Robot
f7b7f50b92 Merge pull request #1203 from lucming/aggregate-errors
nodefit: aggregate errors
2023-07-24 08:52:13 -07:00