Commit Graph
1648 Commits
Author SHA1 Message Date
Kubernetes Prow RobotandGitHub 95ef2bbec3 Merge pull request #1471 from ingvagabund/e2e-duplicates
e2e: TestRemoveDuplicates: limit the tested namespace
2024-07-21 08:55:18 -07:00
Kubernetes Prow RobotandGitHub 355cff67c1 Merge pull request #1472 from ingvagabund/e2e-run-descheduler-from-top-instead-of-a-plugin
e2e: TestTooManyRestarts: run descheduler as a whole instead of a single plugin
2024-07-20 12:18:55 -07:00
Kubernetes Prow RobotandGitHub 9220a1c009 Merge pull request #1473 from ingvagabund/bump-golangci-lint
bump(github.com/golangci/golangci-lint)=v1.59.1
2024-07-20 11:46:36 -07:00
Jan Chaloupka b60a3fcfeb bump(github.com/golangci/golangci-lint)=v1.59.1 2024-07-19 12:54:25 +02:00
Jan Chaloupka ab467a5dd2 e2e: TestTooManyRestarts: run descheduler as a whole instead of a single plugin 2024-07-19 11:10:19 +02:00
Jan Chaloupka f66efaf8db e2e: TestRemoveDuplicates: limit the tested namespace
RemoveDuplicates is namespaced scope. Limiting the namespace will avoid
unexpected evictions from other namespaces.
2024-07-19 09:25:20 +02:00
Kubernetes Prow RobotandGitHub 0c9750cc7f Merge pull request #1468 from adammw/adammw/podlifetime-initcontainerstatus
feat: add init and ephemeral container checks to PodLifeTime
2024-07-17 06:09:07 -07:00
Adam Malcontenti-Wilson f23967a88e feat: add init and ephemeral container checks to PodLifeTime 2024-07-17 14:36:35 +10:00
Kubernetes Prow RobotandGitHub a6e75fe0bd Merge pull request #1467 from a7i/helm-unittest
helm unit tests
2024-07-15 23:39:10 -07:00
Amir Alavi 9b5026314f helm unit tests
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2024-07-15 14:45:31 -04:00
Kubernetes Prow RobotandGitHub c56a408b2c Merge pull request #1443 from a7i/amir/leader-election-namespace-typo
fix: helm leader-election typo to `resourceNamespace`
2024-07-14 09:21:10 -07:00
Amir AlaviandAmir Alavi fc1b54318f fix: helm leader-election typo to resourceNamespace
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2024-07-13 11:46:23 -04:00
Kubernetes Prow RobotandGitHub da862a5698 Merge pull request #1444 from ternbusty/feature/namespace-override
feat: Add namespace override settings in Helm Chart
2024-07-11 20:19:22 -07:00
Kubernetes Prow RobotandGitHub eb6c325553 Merge pull request #1464 from eminaktas/update-pointer-to-ptr
refactor: replace k8s.io/utils/pointer with k8s.io/utils/ptr
2024-07-11 07:42:58 -07:00
Emin Aktas f8e128d862 refactor: replace k8s.io/utils/pointer with k8s.io/utils/ptr
Signed-off-by: Emin Aktas <eminaktas34@gmail.com>
2024-07-11 11:36:34 +03:00
Kubernetes Prow RobotandGitHub a2a45db6de Merge pull request #1463 from zhifei92/update-readme
Update README about maxNoOfPodsToEvictTotal
2024-07-11 01:31:47 -07:00
zhifei92 d8084e8b39 update README about maxNoOfPodsToEvictTotal 2024-07-11 16:05:36 +08:00
Kubernetes Prow RobotandGitHub b614c8bc7c Merge pull request #1458 from ingvagabund/pod-evictor-thread-safe
pod evictor: make it thread safe
2024-07-10 04:48:26 -07:00
Kubernetes Prow RobotandGitHub 9b41edd382 Merge pull request #1460 from ingvagabund/context
descheduler_test.go: initDescheduler: pass a new ctx with cancel inst…
2024-07-09 11:24:11 -07:00
Jan Chaloupka bc60a058ef pod evictor: make it thread safe
Currently, all the plugins are run in a sequence.
No plugin executes evictions in parallel within.
Yet, there's no guarantee a future plugin (e.g. a custom one)
will not attemp to evict pods in parallel.
2024-07-09 12:39:08 +02:00
Kubernetes Prow RobotandGitHub 546a39e88c Merge pull request #1451 from zhifei92/support-total-pods-limit
The descheduler supports limiting the total number of pods evicted per rescheduling cycle
2024-07-09 03:35:17 -07:00
zhifei92 578086ca8e refactor: optimize error descriptions 2024-07-09 17:14:34 +08:00
Jan Chaloupka ea2eeccff4 descheduler_test.go: initDescheduler: pass a new ctx with cancel instead of returning a cancel 2024-07-09 09:19:59 +02:00
Kubernetes Prow RobotandGitHub d0695abea9 Merge pull request #1459 from ingvagabund/descheduler-test-refactoring
descheduler_test.go refactoring
2024-07-08 23:39:16 -07:00
zhifei92 e60f525ec6 feat: support MaxNoOfPodsToEvictTotal 2024-07-09 14:00:27 +08:00
Jan Chaloupka 3362fec7b0 Define initDescheduler for further use
Can be used by other tests executing individual descheduling cycle
explicitly.
2024-07-08 17:28:51 +02:00
Jan Chaloupka f240648df2 Set OwnerReferences through GetReplicaSetOwnerRefList 2024-07-08 17:10:07 +02:00
Jan Chaloupka a818c01832 Use v1alpha2 descheduling policy 2024-07-08 17:04:53 +02:00
Jan Chaloupka 44b59f9b1d initPluginRegistry as a single way to register all plugins in testing 2024-07-08 16:55:27 +02:00
Kubernetes Prow RobotandGitHub 9d16c28f43 Merge pull request #1456 from ingvagabund/limit-exceeded-to-error
PodEvictor: turn an exceeded limit into an error
2024-07-08 06:25:06 -07:00
Kubernetes Prow RobotandGitHub f8afd679ed Merge pull request #1457 from googs1025/refactor_method
fix: add info for error return
2024-07-07 11:10:32 -07:00
googs1025 db0df6c6ca fix: add info for error return 2024-07-07 21:16:52 +08:00
Jan Chaloupka 18d0e4a540 PodEvictor: turn an exceeded limit into an error
When checking for node limit getting exceeded the pod eviction
never fails. Thus, ignoring the metric reporting when a pod fails
to be evicted due to node limit constrains.

The error also allows plugin to react on other limits getting
exceeded. E.g. the limit on the number of pods evicted per namespace.
2024-07-06 20:14:43 +02:00
Kubernetes Prow RobotandGitHub 7657345079 Merge pull request #1452 from a7i/defaultevictor-reinit
fix: indexer cache error when default evictor is re-initialized
2024-07-06 04:30:53 -07:00
Kubernetes Prow RobotandGitHub d1118354c9 Merge pull request #1455 from a7i/amir/pod-evictor-options
feat: pod evictor options
2024-07-06 03:00:53 -07:00
Amir Alavi e26f6429a2 feat: pod evictor options 2024-07-05 21:40:55 -04:00
Kubernetes Prow RobotandGitHub 686417b6de Merge pull request #1454 from ingvagabund/generate-uuid-for-test-pods
test: generate uid when building a pod
2024-07-04 01:19:59 -07:00
Jan Chaloupka 287d1b1573 test: generate uid when building a pod
UID is an integral part of every pod.
Even though we don't test for UID in any of the existing test cases,
future test cases might rely on it.
2024-07-02 14:30:42 +02:00
Amir Alavi 7ab36daaec fix: indexer cache error when default evictor is re-initialized
Signed-off-by: Amir Alavi <amiralavi7@gmail.com>
2024-06-28 00:34:55 -04:00
Kubernetes Prow RobotandGitHub f2be3fd414 Merge pull request #1436 from fanhaouu/feat-return-node-fit-error
return node fit error in advance
2024-06-27 10:54:41 -07:00
Kubernetes Prow RobotandGitHub 9eefbf05cb Merge pull request #1450 from googs1025/refactor
refactor: PodMatchNodeSelector method
2024-06-27 10:05:17 -07:00
googs1025 cfa6845a19 refactor: PodMatchNodeSelector method 2024-06-27 22:10:41 +08:00
Hao Fan 8a2b2eb37c return node fit error in advance 2024-06-26 17:18:32 +08:00
Kubernetes Prow RobotandGitHub 972d28108a Merge pull request #1447 from ingvagabund/refactorings
PodEvictor: refactoring and preparation for eviction requests
2024-06-25 01:08:44 -07:00
Kubernetes Prow RobotandGitHub f294d953a3 Merge pull request #1445 from zhifei92/fix-unit-test
Unit-test: add necessary ownerRef to the pod.
2024-06-25 00:15:40 -07:00
Kubernetes Prow RobotandGitHub 85837b1063 Merge pull request #1446 from googs1025/fix_filter
fix: return the unmatched cases first
2024-06-24 23:53:40 -07:00
Jan Chaloupka fadef326ff TestPodEvictorReset: check the dry mode evicts duplicated pods 2024-06-23 20:30:36 +02:00
Jan Chaloupka f5060adcd1 Move fake client from the cachedClient function
Remove the fakeClient from cachedClient function so a different
fakeClient can be injected for testing purposes
2024-06-23 19:59:46 +02:00
Jan Chaloupka 75880226c0 Set up the pod evictor only once
Currently, the pod evictor is created during each descheduling cycle
to reset the internal counters and the fake client (in case a dry run is
configured). Instead, create the pod evictor once and reset only what's
needed. So later on the pod evictor can be extended with e.g. a cache
keeping the track of eviction requests that are still in progress and
required more than a single descheduling cycle to complete.
2024-06-23 19:24:27 +02:00
Jan Chaloupka 0901cb18bf NewPodEvictor: drop nodes parameter 2024-06-22 15:08:00 +02:00