kubernetes-sigs/kueue

Kubernetes-native Job Queueing

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 40 minutes ago
Added to GitGenius on June 17th, 2025
Created on February 16th, 2022
Open Issues & Pull Requests: 711 (+0)
Number of forks: 760
Total Stargazers: 2,900 (+0)
Total Subscribers: 17 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 0.0 hours
Mean response time: 8.7 days
90th percentile: 5.5 days
Tracked items: 2,716

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 92% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 11% of tracked open issues have had no activity in three months. Only 4% of issues opened in the past year have been closed. Three people close 51% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 445
New in 7 days: 55
Closed in 7 days: 37
Avg open age: 116 days
Stale 30+ days: 211
Stale 90+ days: 68

Recent activity

Opened in 7 days: 45
Closed in 7 days: 33
Comments in 7 days: 150
Events in 7 days: 418

Top labels

  • kind/bug (1,185)
  • kind/feature (810)
  • kind/cleanup (559)
  • kind/flake (498)
  • lifecycle/rotten (257)
  • kind/documentation (122)
  • area/multikueue (96)
  • priority/important-soon (87)

Detailed Description

Kueue is a Kubernetes-native job queueing system that provides APIs and controllers for managing job admission and lifecycle at scale. Written in Go, it functions as a job-level manager that determines when jobs should be admitted to start pod creation and when they should be stopped by deleting active pods. The project is maintained as part of the Kubernetes Special Interest Group for Scheduling and has achieved production readiness status with API version v1beta2 following Kubernetes deprecation policies.

The system implements sophisticated job management through priority-based queueing with two distinct strategies: StrictFIFO and BestEffortFIFO. Beyond basic queueing, Kueue provides advanced resource management capabilities including resource flavor fungibility, fair sharing mechanisms, cohorts for resource grouping, and preemption policies that can be customized between different tenants. These features enable fine-grained control over how workloads consume cluster resources.

Kueue integrates with a broad ecosystem of Kubernetes job types and workload patterns. Built-in support exists for BatchJob, Kubeflow training jobs, RayJob, RayCluster, JobSet, plain Pods, and Pod Groups. The system can also manage serving workloads such as Deployments and StatefulSets, enabling simultaneous handling of batch training and inference workloads within the same cluster. This versatility makes Kueue applicable to diverse computational patterns from machine learning to general batch processing.

The project includes sophisticated scheduling capabilities such as topology-aware scheduling that optimizes pod-to-pod communication throughput by considering data-center topology. Partial admission allows jobs to run with reduced parallelism based on available quota, while dynamic reclaim mechanisms release quota as pods complete. An all-or-nothing scheduling implementation with timeout-based pod readiness ensures coordinated job execution. Multi-cluster job dispatching through MultiKueue enables searching for capacity across clusters and offloading work from the main cluster.

System observability is built into Kueue through Prometheus metrics and an on-demand visibility endpoint for monitoring pending workloads. AdmissionChecks provide a mechanism for internal or external components to influence workload admission decisions. Advanced autoscaling support integrates with cluster-autoscaler's provisioningRequest feature via admission checks.

The most active labels are kind/bug with 992 items, kind/feature with 663 items, and kind/cleanup with 456 items. The project shares contributors with ray-project/kuberay, opendatahub-io/notebooks, and kubernetes/kubernetes, indicating deep integration within the Kubernetes ecosystem.

Production readiness is demonstrated through comprehensive testing including unit tests, integration tests across multiple shards, E2E tests for Kubernetes versions 1.34 through 1.36, topology-aware scheduling tests, sequential tests, and performance benchmarks. The project maintains a stable release cycle of 2-3 months and has documented adopters running Kueue in production environments. Installation requires Kubernetes 1.29 or newer, with the controller running in the kueue-system namespace.