Changes since v0.2.1
:
Features
- Support for kubeflow's MPIJob (v2beta1)
- Upgrade the
config.kueue.x-k8s.io
API version fromv1alpha1
tov1beta1
.v1alpha1
is no longer supported.
v1beta1
includes the following changes:- Add
namespace
to propagate the namespace where kueue is deployed to the webhook certificate. - Add
internalCertManagement
with fieldsenable
,webhookServiceName
andwebhookSecretName
. - Remove
enableInternalCertManagement
. UseinternalCertManagement.enable
instead.
- Add
- Upgrade the
kueue.x-k8s.io
API version fromv1alpha2
tov1beta1
.
v1alpha2
is no longer supported.
v1beta1
includes the following changes:ClusterQueue
:- Immutability of
spec.queueingStrategy
. - Refactor
quota.min
andquota.max
intonominalQuota
andborrowingLimit
. - Swap hieararchy between
resources
andflavors
. - Group flavors and resources into
spec.resourceGroups
to make
co-dependent resources explicit. - Move
admission
fromspec
tostatus
. - Add
conditions
field tostatus
.
- Immutability of
LocalQueue
:- Add
admitted
field instatus
. - Add
conditions
field tostatus
.
- Add
Workload
:- Add
metadata
topodSet
templates. - Move
admission
intostatus
.
- Add
ResourceFlavor
:- Introduce
spec
to hold all fields. - Rename
labels
tonodeLabels
. - Rename
taints
tonodeTaints
.
- Introduce
- Reduce API calls by setting
.status.admission
and updating theAdmitted
condition in the same API call. - Obtain queue names from label
kueue.x-k8s.io/queue-name
. The annotation with
the same name is still supported, but it's now deprecated. - Multiplatform support for
linux/amd64
andlinux/arm64
. - Validating webhook for
batch/v1.Job
validates kueue-specific labels and
annotations. - Sequential admission of jobs https://kueue.sigs.k8s.io/docs/tasks/setup_sequential_admission/
- Preemption within ClusterQueue and cohort https://kueue.sigs.k8s.io/docs/concepts/cluster_queue/#preemption
- Support for LimitRanges when calculating jobs usage.
- Library for integrating job-like CRDs (controller and webhooks) https://sigs.k8s.io/kueue/pkg/controller/jobframework
Production Readiness
- E2E tests for kubernetes 1.24, 1.25 1.26 on Kind
- Improve readability and code location in logging #14
- Optimized configuration for small size clusters with higher API QPS and number
of workers. - Reproducible load tests https://sigs.k8s.io/kueue/test/performance
- Documentation website https://kueue.sigs.k8s.io/docs/
Bug fixes
- Fix job controller ClusterRole for clusters that enable OwnerReferencesPermissionEnforcement admission control validation #392
- Fix race condition when admission attempt and requeuing happen at the same time #427
- Atomically release quota and requeue previously inadmissible workloads #512
- Fix support for leader election #580
- Fix support for RuntimeClass when calculating jobs usage #565
Acknowledgments
Thanks to our contributors in this release, in no particular order:
@tenzen-y @mcariatm @moficodes @mwielgus @trasc @mimowo @alculquicondor @fjding @kerthcet @ArangoGutierrez @Fish-pro @rbarberop @cortespao @rptaylor @kannon92 @noryev @oginskis @charlieyu1996 @kincl @ahg-g