Skip to content

Add ai-ml/gke-ray/kueue-concurrent-admission: ephemeral RayJobs with Kueue Concurrent Admission - #2149

Open
gangli113 wants to merge 1 commit into
GoogleCloudPlatform:mainfrom
gangli113:add-rayjob-kueue-concurrent-admission-sample
Open

Add ai-ml/gke-ray/kueue-concurrent-admission: ephemeral RayJobs with Kueue Concurrent Admission#2149
gangli113 wants to merge 1 commit into
GoogleCloudPlatform:mainfrom
gangli113:add-rayjob-kueue-concurrent-admission-sample

Conversation

@gangli113

Copy link
Copy Markdown

Description

This PR adds a new sample under ai-ml/gke-ray/kueue-concurrent-admission that demonstrates how to run
ephemeral RayJobs across multiple resource flavors using Kueue's Concurrent Admission feature on GKE.

Concurrent Admission lets a ClusterQueue evaluate multiple ResourceFlavors at the same time, so an
ephemeral RayJob can start on whichever flavor has capacity first (for example, a reservation-backed GPU
node pool or a DWS Flex-Start node pool) instead of waiting on strict flavor ordering. This reduces
RayJob start latency for bursty, short-lived GPU workloads.

These manifests back the user guide
Start RayJobs faster across multiple resource flavors.

Files added

File Purpose
ai-ml/gke-ray/kueue-concurrent-admission/kueue-setup.yaml Two ResourceFlavors (reservation-flavor, dws-flex-flavor), a ClusterQueue with concurrentAdmissionPolicy (migration.mode: TryPreferredFlavors, constraints.lastAcceptableFlavorName: reservation-flavor), and a LocalQueue (user-queue).
ai-ml/gke-ray/kueue-concurrent-admission/ephemeral-rayjob.yaml An ephemeral RayJob (shutdownAfterJobFinishes: true) labeled with kueue.x-k8s.io/queue-name: user-queue, running 3 single-GPU Ray tasks on 3 worker replicas.
ai-ml/gke-ray/kueue-concurrent-admission/README.md Sample overview, manifest descriptions, and quickstart commands.

Notes

  • Uses the Kueue kueue.x-k8s.io/v1beta2 API, which is required for concurrentAdmissionPolicy.
  • Queue targeting uses the kueue.x-k8s.io/queue-name label (not an annotation), consistent with Fix kueue.x-k8s.io/queue-name metadata field  #2052.
  • Region tags added: gke_ai_ml_gke_ray_kueue_concurrent_admission_kueue_setup and
    gke_ai_ml_gke_ray_kueue_concurrent_admission_ephemeral_rayjob.

Tasks

  • The contributing guide has been read and followed.
  • The samples added / modified have been fully tested.
  • Workflow files have been added / modified, if applicable.
  • Region tags have been properly added, if new samples.
  • Editable variables have been used, where applicable.
  • All dependencies are set to up-to-date versions, as applicable.
  • Merge this pull-request for me once it is approved.

@snippet-bot

snippet-bot Bot commented Sep 3, 2026

Copy link
Copy Markdown

Here is the summary of changes.

You are about to add 2 region tags.

This comment is generated by snippet-bot.
If you find problems with this result, please file an issue at:
https://github.com/googleapis/repo-automation-bots/issues.
To update this comment, add snippet-bot:force-run label or use the checkbox below:

  • Refresh this comment

@gangli113
gangli113 force-pushed the add-rayjob-kueue-concurrent-admission-sample branch from fe858fa to 3cd633e Compare September 3, 2026 22:31
Comment thread ai-ml/gke-ray/kueue-concurrent-admission/ephemeral-rayjob.yaml Outdated
Comment thread ai-ml/gke-ray/kueue-concurrent-admission/README.md Outdated
Add Kueue setup and ephemeral RayJob manifests demonstrating Kueue's
Concurrent Admission feature on GKE, along with sample documentation.

- kueue-setup.yaml: ResourceFlavor, ClusterQueue, LocalQueue
- ephemeral-rayjob.yaml: RayJob using local queue and GPU resources
- README.md: Overview and quickstart commands
@gangli113
gangli113 force-pushed the add-rayjob-kueue-concurrent-admission-sample branch from 3cd633e to 2c4828f Compare September 4, 2026 20:24
@gangli113
gangli113 requested a review from iennae September 4, 2026 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants