Kubernetes Prow Robot
241f1325c9
Merge pull request #481 from damemi/ignore-pvc-pods
...
Add option to ignore pods with PVCs from eviction
2021-01-26 22:41:40 -08:00
Mike Dame
c1a63a557a
Add option to ignore pods with PVCs from eviction
2021-01-26 08:47:54 -05:00
lixiang
8ba9cb1df7
Add a parameter to include soft topology spread constraints
2021-01-21 11:33:16 +08:00
Mike Dame
635a40f305
Add Logging field to v1alpha1 componentconfig
2021-01-11 11:21:32 -05:00
lixiang
1303fe6eb9
PodLifeTime: allow custom podStatusPhases
2020-09-11 09:56:45 +08:00
Jan Chaloupka
89541f7545
Deprecate node-selector, max-pods-to-evict-per-node and evict-local-storage-pods flags and promote then to policy v1alpha1 fields
2020-08-21 13:27:40 +02:00
Jan Chaloupka
a7c51ffae0
Promote Namespaces field to a pointer
2020-08-13 18:38:46 +02:00
lixiang
ae38aa63af
StrategyParameters: Add new param ThresholdPriority and ThresholdPriorityClassName
2020-08-07 13:53:29 +08:00
Jan Chaloupka
11f1333af7
ListPodsOnANode: allow to include/exclude namespaces
...
Info: field selector is still not properly mocked so it's not possible to unit test it
2020-07-21 15:08:05 +02:00
Jan Chaloupka
5a81a0661b
Make DeschedulerStrategy.Params a pointer
...
To avoid empty params fields when serializing:
RemoveDuplicates:
enabled: true
params: {}
RemovePodsHavingTooManyRestarts:
enabled: true
params:
podsHavingTooManyRestarts: {}
RemovePodsViolatingInterPodAntiAffinity:
enabled: true
params: {}
RemovePodsViolatingNodeAffinity:
enabled: true
params:
nodeAffinityType:
- requiredDuringSchedulingIgnoredDuringExecution
RemovePodsViolatingNodeTaints:
enabled: true
params: {}
2020-05-27 10:31:31 +02:00
Mike Dame
c6ff87dbd6
Consider pod image in duplicates strategy
...
This increases the specificity of the RemoveDuplicates strategy by
removing pods which not only have the same owner, but who also
must have the same list of container images. This also adds a
parameter, `ExcludeOwnerKinds` to the RemoveDuplicates strategy
which accepts a list of Kinds. If a pod has any of these Kinds as
an owner, that pod is not considered for eviction.
2020-05-15 09:37:09 -04:00
Sean Malloy
423ee35846
Add New PodLifeTime Strategy
...
The new PodLifeTime descheduler strategy can be used to evict pods that
were created more than the configured number of seconds ago.
In the below example pods created more than 24 hours ago will be evicted.
````
apiVersion: "descheduler/v1alpha1"
kind: "DeschedulerPolicy"
strategies:
"PodLifeTime":
enabled: true
params:
maxPodLifeTimeSeconds: 86400
````
2020-05-07 23:10:36 -05:00
Mike Dame
fa335c782f
Switch PodsHavingTooManyRestarts params to pointer
2020-05-06 13:29:05 -04:00
Jan Chaloupka
991eddb691
Turn StrategyParameters.NodeResourceUtilizationThresholds field into a pointer
...
The field is intended to be omitempty when not set. Without a pointer the strategy
serialized into json string looks like:
```json
strategies:
LowNodeUtilization:
enabled: true
params:
nodeResourceUtilizationThresholds:
numberOfNodes: 1
targetThresholds:
cpu: 50
memory: 50
pods: 20
thresholds:
cpu: 50
memory: 50
pods: 20
RemoveDuplicates:
enabled: true
params:
nodeResourceUtilizationThresholds: {}
RemovePodsViolatingInterPodAntiAffinity:
enabled: true
params:
nodeResourceUtilizationThresholds: {}
RemovePodsViolatingNodeAffinity:
enabled: true
params:
nodeAffinityType:
- requiredDuringSchedulingIgnoredDuringExecution
nodeResourceUtilizationThresholds: {}
RemovePodsViolatingNodeTaints:
enabled: true
params:
nodeResourceUtilizationThresholds: {}
```
It's preferred to have the following json string instead:
```
strategies:
LowNodeUtilization:
enabled: true
params:
nodeResourceUtilizationThresholds:
numberOfNodes: 1
targetThresholds:
cpu: 50
memory: 50
pods: 20
thresholds:
cpu: 50
memory: 50
pods: 20
RemoveDuplicates:
enabled: true
RemovePodsViolatingInterPodAntiAffinity:
enabled: true
RemovePodsViolatingNodeAffinity:
enabled: true
params:
nodeAffinityType:
- requiredDuringSchedulingIgnoredDuringExecution
RemovePodsViolatingNodeTaints:
enabled: true
```
2020-04-28 15:20:30 +02:00
Mike Dame
e7c42794a0
Add RemovePodsHavingTooManyRestarts strategy
2020-04-24 10:48:28 -04:00
Avesh Agarwal
8dc7b475d9
Fix makefile for make gen, and Update hack files and
...
auto-generated files.
2020-02-07 16:32:55 -05:00
Mike Dame
11044ed89d
Run generated scripts
2019-10-21 13:33:39 -04:00
Mike Dame
c9e3c63b85
Remove codecgen
...
Since [1] codecgen has been obsolete.
[1] https://github.com/kubernetes/kubernetes/issues/36120
2019-10-21 13:33:38 -04:00
Jan Chaloupka
2e6f14103b
Project migrared under kubernetes-sigs, change import path prefix to sigs.k8s.io/descheduler
2019-09-19 14:09:05 +02:00
Shubham Minglani
bb25192163
add generated files
2018-02-19 16:21:04 +05:30
Shubham Minglani
40bb490f4c
add RemovePodsViolatingNodeAffinity strategy
...
This commit adds requiredDuringSchedulingIgnoredDuringExecution
for RemovePodsViolatingNodeAffinity strategy.
Also adds unit tests and documentation.
2018-02-19 16:20:59 +05:30
Avesh Agarwal
44752e5e83
Update code and hack dir for kube 1.9 rebase.
2018-01-09 12:41:01 -05:00
Avesh Agarwal
7123f30783
Update auto-generated code.
2018-01-09 11:04:26 -05:00
Avesh Agarwal
d634701250
Descheduler related modifications.
2017-09-15 14:13:27 -04:00
Avesh Agarwal
5cbaf9c2f7
Update v1alpha1 api registration implementation.
2017-08-10 14:15:11 -04:00
Avesh Agarwal
c06c45fdc0
Update v1aplha1 registration update.
2017-08-10 14:01:07 -04:00
Avesh Agarwal
79d783caa9
Undo metav1 api registraton to rescheduler's scheme.
2017-08-07 12:42:12 -04:00
Avesh Agarwal
239121ce17
Update rescheduler's v1alpha1 api code.
2017-08-07 12:32:46 -04:00
Avesh Agarwal
81b37707df
Fix a sentence.
2017-08-07 11:10:41 -04:00
Avesh Agarwal
3b012db6ef
Update generated types files.
2017-08-06 16:05:34 -04:00
Avesh Agarwal
a36e9f2de8
Update generated conversion files.
2017-08-06 16:04:33 -04:00
Avesh Agarwal
a6b75a2fd5
Fix compilation issue by importing time.
2017-08-06 16:02:13 -04:00
Avesh Agarwal
718efe69e1
Move ReschedulingInterval to rescheduler's configuration out of
...
rescheduler's policy.
2017-08-06 15:58:30 -04:00
Avesh Agarwal
d1023e0d00
Update doc.go in api and apis v1alpha1 packages to remove open-api tag.
2017-08-05 16:34:45 -04:00
Avesh Agarwal
e8b4c67e27
Fix regiserting default functions.
2017-08-05 16:24:51 -04:00
Avesh Agarwal
b58be3318b
Create autogenerated default function files.
2017-08-05 16:23:09 -04:00
Avesh Agarwal
7e22d01692
Create autogenerated deep copies files.
2017-08-05 16:04:29 -04:00
Avesh Agarwal
ed21529915
Auto generated conversion files.
2017-08-05 15:51:24 -04:00
Avesh Agarwal
c4c303e5b5
Add type.generated.go generated file for pkg/api/v1alpha1.
2017-08-05 09:34:04 -04:00
Avesh Agarwal
2caa5ed1de
Create doc.go files for auto generated files.
2017-08-05 00:29:20 -04:00
Avesh Agarwal
1d184448fc
Update group name.
2017-08-05 00:26:05 -04:00
Avesh Agarwal
6178d99993
Modify percentage type to float64
2017-08-04 14:05:14 -04:00
Avesh Agarwal
b2bfb0e24f
Add number of nodes thershold to node utilization strategies.
2017-08-04 14:01:55 -04:00
Avesh Agarwal
79985395d5
Update rescheduler's implementation.
2017-08-04 11:55:20 -04:00
Avesh Agarwal
b9e60d8030
Implment reading of rescheduler's policy.
2017-08-04 11:11:55 -04:00
Avesh Agarwal
02382b61f7
Update rescheduler strategies types.
2017-08-04 09:59:40 -04:00
Avesh Agarwal
198dfc8a2e
Update rescheduler policy version implementation.
2017-07-29 15:14:00 -04:00
Avesh Agarwal
e715d5718a
Implement defaulting of policy functions.
2017-07-29 11:42:35 -04:00
Avesh Agarwal
0290142ed5
Implement policy's versioned registration.
2017-07-29 11:42:11 -04:00
Avesh Agarwal
eba9f00816
Add policy's v1alpha1's types.
2017-07-29 11:41:48 -04:00