Release Announcement v1.6.1
We are pleased to announce that the Apache YuniKorn community has voted to release 1.6.1. Apache YuniKorn is a standalone resource scheduler, designed for managing and scheduling Batch and Data workloads on container orchestration frameworks like Kubernetes for on-prem and on-cloud use cases.
Overview
The Apache YuniKorn community has resolved 12 JIRAs in this release.
Release manager: Craig Condit
Release date: 2025-01-24
Highlights
This release is primarily a bugfix release and contains critical fixes for issues found in YuniKorn 1.6.0. All users of 1.6.0 are urged to upgrade.
Orphan allocation due to reservation host mismatch
Critical: YuniKorn 1.6.0 can improperly assign an allocation to the wrong host when a reservation on one node is fulfilled on a different one. Fixed in YUNIKORN-2978.
Improper locking during Kubernetes event handling
Critical: A race condition was found which can corrupt internal YuniKorn data structures when pod and node events are published simultaneously. Fixed in YUNIKORN-2910.
Scheduling of multiple DaemonSet pods can fail if one is reserved
Critical: YuniKorn can fail to allocate a DaemonSet pod in the case where a different DaemonSet pod was already reserved on the same node. Fixed in YUNIKORN-2976.
Incorrect accounting of preeempted allocations
YuniKorn could mark an allocation as preempted again during it's graceful shutdown procedure, leading to resource accounting errors. Fixed in YUNIKORN-3003.
Incorrect count of placeholders released
Placeholder pod releases can be counted twice when cleanup of a timed out pod is requested. Fixed in YUNIKORN-2953.
Improper locking in user/group tracking
YuniKorn could update internal accounting structures unsafely in som cases. Fixed in YUNIKORN-3004.
Helm chart now supports setting GOGC / GOMEMLIMIT
In prior versions, YuniKorn's memory usage was unrestricted and did not
honor container requests or limits. In 1.6.1 and later releases, the YuniKorn
Helm charts support setting these values via the goGC
and goMemoryLimit
attributes. These can be set on the scheduler, admission controller, and web
containers.
NOTE: If you have customized YuniKorn's container memory requests or
limits, please ensure goMemoryLimit
is set to an appopriate value for your
environment. The defaults for each container in the Helm chart correspond to
75% of the default memory limits.
See YUNIKORN-3000 for more information.