Skip to main content

Release Announcement v1.8.0

We are pleased to announce that the Apache YuniKorn community has voted to release 1.8.0. 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 93 JIRAs in this release.

Release manager: Wilfred Spiegelenburg

Release date: 2026-02-03

Plugin mode removal

As per the documented deprecation and removal of the plugin mode the first step is part of this release. The convenience binary will no longer be published for this release. The binary can still be build if required via the normal build process. During the development cycle of YuniKorn 1.9 the implementation of the plugin will be gradually removed.

All deployments that use the plugin should plan on a migration to the standard mode in preparation of the YuniKorn 1.9 release.

Highlights

Kubernetes 1.33 and 1.34 support

Apache YuniKorn 1.8.0 add supports for Kubernetes 1.33 and Kubernetes 1.34. See YUNIKORN-3156 for details.

LDAP group resolver

LDAP resolution is a popular method to resolve group memberships. A new group resolver has been added as a tech preview to the release. See YUNIKORN-656 for details.

Quota change enforcement via preemption

Changing a queue quota would be a simple quota change. The new quota would be enforced but no action was taken to make sure the usage would not exceed the new quota. In YuniKorn 1.8.0 an option is now added to trigger preemption to bring usage down to within the newly assigned quota. See YUNIKORN-3133 for details.

Skip scheduling application if too many pods are unschedulable

If an application has too many unschedulable pods, it can drastically affect scheduling throughput. Only checking a limited number of requests per application limits the impact that large numbers of pending requests have on the scheduling throughput.

Two new properties are added to the queue configuration properties: application.unschedasks.backoff and application.unschedasks.backoff.delay. Backoff sets the number of requests to check before triggering backoff. The default is 0 (off), a value greater than 0 must be set on the queue to trigger backoff. The delay is a Golang duration in string form. The default is 30 seconds. See YUNIKORN-3115 for details.

Preemption Hardening (Phase 2)

Preemption now looks at the individual resources types requested in the request and maps that to resources provided by the victim. That same view is applied also when looking at a queue to decide if it is over guaranteed or not. A queue can now be over or below guaranteed for a single resource type. That allows a wider selection of queues and better victim selection.

A race condition between the release of a placeholder and the preemptor selecting that same allocation for preemption has been fixed. See YUNIKORN-2872 for details.

Deprecations

Removal of legacy user processing

Legacy user handling via the label yunikorn.apache.org/username will be removed in YuniKorn 1.9. The label method was deprecated in YuniKorn 1.6. YuniKorn 1.9 will only support the pod annotations for user details. See YUNIKORN-2634 for details.

Documentation update

The documentation for some older point releases has been removed. The latest patch release of each minor version has been retained.
The following documentation sets have been removed:

  • 1.5.0
  • 1.5.1
  • 1.6.0
  • 1.6.1
  • 1.6.2

YuniKorn 1.7.0 release note addendum

During the YuniKorn 1.7.0 release some references to important changes were missed. The release notes for 1.7.0 are missing the following crucial references:

Change default volume binding timeout to 10 minutes

The default volume bind timeout has been corrected to the default used by Kubernetes. It was incorrectly set to 10 seconds instead of 10 minutes causing unexpected scheduling failure in clusters with slow volume binding. See YUNIKORN-3021 for details.

Statedump endpoint change

The scheduler statedump has permanently moved from the webservice endpoint to the debug endpoint. The debug endpoint is not accessible via the poxy in the WEB UI container. The data exposed in the debug endpoint is not meant for generic consumption and could contain information that should only be accessed by administrators. See YUNIKORN-2965 for details.

Internal object removal

Some REST endpoints were exposing internal objects. Those objects were never designed to be exposed. Accessing them via REST could cause issues during the scheduling cycle. The objects have been removed from the application REST response. See YUNIKORN-2925 for details.

Metadata consistency warning

A warning is emitted if a pod has inconsistent metadata. The k8shim emits the warning to alert the administrator that behaviour might not be as expected. See YUNIKORN-2811 for details.

Community update

Mit Desai was added as a new committer.

Credits

The YuniKorn 1.8.0 release would not have been possible without the hard work of our community, and we would like to thank the following contributors to this release:

Adrian Lin, Craig Condit, Hank Hunang, Hsien-Cheng(Ryan) Huang, HUANG CHEN YI, Kaichia Chen, Kang-Li Wu, Kuo-Hao Huang, Manikandan R, Michael Chu, Mit Desai, Peter Bacsko, Po Han Huang, Shravan Achar, Shubham Mishra, Tyler E Denton, Wilfred Spiegelenburg