@tank/kueue

Installation
SKILL.md

Kueue

Core Philosophy

  1. Suspend first, admit later — Every supported Job is created in suspend: true state by Kueue's mutating webhook. The Workload object is the queueing unit; the Job only unsuspends after the Workload is admitted. Never bypass this by setting suspend: false manually.
  2. Quota lives on the ClusterQueue, naming lives on the LocalQueue — Users submit Jobs with a kueue.x-k8s.io/queue-name: <local-queue> label. The LocalQueue points to a ClusterQueue, which holds the actual quota. This separates tenant identity from capacity policy.
  3. Cohorts are how slack capacity is shared — Two ClusterQueues in the same cohort can borrow each other's unused nominalQuota up to their borrowingLimit. Without a cohort, quota is hard-isolated. Set lendingLimit to cap how much a queue can be borrowed from.
  4. Flavors map workloads to hardware — A ResourceFlavor is a tuple of (nodeLabels, taints, tolerations). Quota is per-flavor. The same cpu resource can have separate quotas for spot and ondemand flavors, and flavorFungibility controls fall-through behavior.
  5. AdmissionChecks gate the final unsuspend — Quota reservation is necessary but not sufficient. AdmissionChecks (e.g., MultiKueue, ProvisioningRequest) must all pass Ready before the Workload transitions to Admitted and the Job unsuspends.

Quick-Start: Common Problems

"My Job is created but no Pods appear"

Installs
–
GitHub Stars
1
First Seen
–
@tank/kueue — tankpkg/packages