Container image for this release is available at: k8s.gcr.io/descheduler/descheduler:v0.21.0
The Helm chart for this release is published here.
New Features 🌈
- #468 Run as user 1000 so pod can be runAsNonRoot for security purposes @eatwithforks
- #474 Add a parameter to include soft topology spread constraints @lixiang233
- #481 Add option to ignore pods with PVCs from eviction @damemi
- #480 Add nodeSelector to cronJob helm chart @damemi
- #495 Update Job and CronJob YAML to run as non-root @seanmalloy
- #496 Update Helm Chart to run as non-root @seanmalloy
- #499 Bump To Go 1.15.8 @seanmalloy
- #510 Filter pods by labelSelector @lixiang233
- #505 Collect metrics @ingvagabund
- #521 Enable ARM32v7 Container Image Builds @seanmalloy
- #523 Added EvictSystemCriticalPods flag to descheduler @RyanDevlin
- #434 Support extended resources in LowNodeUtilization @ZongqiangZhang
- #547 Bump To k8s 1.21.0 @seanmalloy
- #559 Working nodeFit feature @RyanDevlin
- #576 Filter pods by labelSelector during eviction for TopologySpreadConstraint strategy @a7i
- #550 Highnodeutilization strategy @hanumanthan
Bug Fixes 🐛
- #484 Fix TopologySpread bug that evicts non-evictable pods @damemi
- #493 Modify resourceUsage.Value() to resourceUsage.MilliValue() @fancc
- #497 LowNodeUtilization: unit test resourceUsagePercentages to validate percentages are computed correctly @ingvagabund
- #498 Fix indentation in values.yaml @kristinnardal2
- #512 Bump github.com/gogo/protobuf to v1.3.2 @ingvagabund
- #490 Add default logging-format value @damemi
- #517 Correct log in topology spread strategy @lixiang233
- #525 (TopologySpread) Evict pods with selectors that match multiple nodes @damemi
- #526 Correct Helm Chart Docs For Container Requests and Limits @seanmalloy
- #543 e2e_test: fix goroutine leak @gaurav1086
- #544 LNU: improve nodeUsage logging @ingvagabund
Others 🏃
- #471 refactor: remove unused code @Mathew857
- #478 Update README.md @ryuichi1208
- #482 Add Logging field to v1alpha1 componentconfig @damemi
- #502 Move 'total pods evicted' log message to main loop @damemi
- #504 Log and README optimization for LowNodeUtilization @lixiang233
- #506 Update e2e tests to use kind v0.10.0 @seanmalloy
- #515 Clarify resource percentage calculation in README @damemi
- #518 Add table of contents generator/verify script @damemi
- #520 Document That Descheduler Considers StatefulSets For Eviction @seanmalloy
- #534 Use Tags In Kustomize Documentation @seanmalloy
- #507 Add verify scripts for make gen to run during PR @pravarag
- #545 Add verify script for deep-copies generator @pravarag
- #546 Add diagram of strategies @ingvagabund
- #548 Updating policy api version used in pod evictor @lx1036
- #537 Update Docs and Manifests for v0.21.0 @seanmalloy
- #535 E2e refactor @ingvagabund
- #554 code cleanup: remove check on length @BinacsLee
- #556 Invert main strategy loop for performance and customizability @damemi
- #558 Use Structured Logging For Unknown Strategy Log Message @seanmalloy
- #560 Update error messages in verify scripts to be more informative @damemi
- #535 E2e refactor @ingvagabund
- #565 Add test cases for soft constraints/multi constraints @damemi
- #567 RemovePodsViolatingTopologySpreadConstraint : Take node's taints into consideration when balancing domains @a7i
- #568 Add verify script for govet & fix pkg/descheduler/descheduler_test.go @BinacsLee
- #570 Bump kind version @seanmalloy
- #527 Add helm test @pravarag
- #563 RemoveDuplicates: take node taints, node affinity and node selector into account when computing a number of feasible nodes for the average occurence of pods per node @ingvagabund
- #572 Add run descheduler as deployment @audip