Skip to content

Commit d07068f

Browse files
authored
Merge branch 'main' into evictionMetrics
2 parents fe78418 + 5655548 commit d07068f

File tree

8 files changed

+167
-0
lines changed

8 files changed

+167
-0
lines changed

examples/kueue/cluster-queue.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: kueue.x-k8s.io/v1beta1
2+
kind: ClusterQueue
3+
metadata:
4+
name: cluster-queue
5+
spec:
6+
namespaceSelector: {} # Available to all namespaces
7+
queueingStrategy: BestEffortFIFO # Default queueing strategy
8+
resourceGroups:
9+
- coveredResources: ["cpu", "memory", "nvidia.com/gpu", "ephemeral-storage"]
10+
flavors:
11+
- name: "default-flavor"
12+
resources:
13+
- name: "cpu"
14+
nominalQuota: 10
15+
- name: "memory"
16+
nominalQuota: 10Gi
17+
- name: "nvidia.com/gpu"
18+
nominalQuota: 10
19+
- name: "ephemeral-storage"
20+
nominalQuota: 10Gi

examples/kueue/create_jobs.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/bin/bash
2+
3+
while :
4+
do
5+
kubectl create -f ${1}
6+
kubectl create -f ${2}
7+
sleep ${3:-10}
8+
done

examples/kueue/flavors.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
apiVersion: kueue.x-k8s.io/v1beta1
2+
kind: ResourceFlavor
3+
metadata:
4+
name: default-flavor # This ResourceFlavor will be used for all the resources

examples/kueue/job-team-a.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
apiVersion: batch/v1
2+
kind: Job
3+
metadata:
4+
namespace: team-a # Job under team-a namespace
5+
generateName: sample-job-team-a-
6+
annotations:
7+
kueue.x-k8s.io/queue-name: lq-team-a # Point to the LocalQueue
8+
spec:
9+
ttlSecondsAfterFinished: 60 # Job will be deleted after 60 seconds
10+
parallelism: 3 # This Job will have 3 replicas running at the same time
11+
completions: 3 # This Job requires 3 completions
12+
suspend: true # Set to true to allow Kueue to control the Job when it starts
13+
template:
14+
spec:
15+
containers:
16+
- name: dummy-job
17+
image: gcr.io/k8s-staging-perf-tests/sleep:latest
18+
args: ["10s"] # Sleep for 10 seconds
19+
resources:
20+
requests:
21+
cpu: "500m"
22+
memory: "512Mi"
23+
ephemeral-storage: "512Mi"
24+
limits:
25+
cpu: "500m"
26+
memory: "512Mi"
27+
ephemeral-storage: "512Mi"
28+
restartPolicy: Never

examples/kueue/job-team-b.yaml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# [START gke_batch_kueue_intro_team_b_job]
2+
apiVersion: batch/v1
3+
kind: Job
4+
metadata:
5+
namespace: team-b # Job under team-b namespace
6+
generateName: sample-job-team-b-
7+
annotations:
8+
kueue.x-k8s.io/queue-name: lq-team-b # Point to the LocalQueue
9+
spec:
10+
ttlSecondsAfterFinished: 60 # Job will be deleted after 60 seconds
11+
parallelism: 3 # This Job will have 3 replicas running at the same time
12+
completions: 3 # This Job requires 3 completions
13+
suspend: true # Set to true to allow Kueue to control the Job when it starts
14+
template:
15+
spec:
16+
containers:
17+
- name: dummy-job
18+
image: gcr.io/k8s-staging-perf-tests/sleep:latest
19+
args: ["10s"] # Sleep for 10 seconds
20+
resources:
21+
requests:
22+
cpu: "500m"
23+
memory: "512Mi"
24+
ephemeral-storage: "512Mi"
25+
nvidia.com/gpu: "1"
26+
limits:
27+
cpu: "500m"
28+
memory: "512Mi"
29+
ephemeral-storage: "512Mi"
30+
nvidia.com/gpu: "1"
31+
restartPolicy: Never
32+
# [END gke_batch_kueue_intro_team_b_job]

examples/kueue/local-queue.yaml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: kueue.x-k8s.io/v1beta1
2+
kind: LocalQueue
3+
metadata:
4+
namespace: team-a # LocalQueue under team-a namespace
5+
name: lq-team-a
6+
spec:
7+
clusterQueue: cluster-queue # Point to the ClusterQueue
8+
---
9+
apiVersion: kueue.x-k8s.io/v1beta1
10+
kind: LocalQueue
11+
metadata:
12+
namespace: team-b # LocalQueue under team-b namespace
13+
name: lq-team-b
14+
spec:
15+
clusterQueue: cluster-queue # Point to the ClusterQueue

examples/kueue/team-a-crp.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
apiVersion: placement.kubernetes-fleet.io/v1beta1
2+
kind: ClusterResourcePlacement
3+
metadata:
4+
name: team-a-crp
5+
spec:
6+
resourceSelectors:
7+
- group: kueue.x-k8s.io
8+
version: v1beta1
9+
kind: ResourceFlavor
10+
name: default-flavor
11+
- group: kueue.x-k8s.io
12+
version: v1beta1
13+
kind: ClusterQueue
14+
name: cluster-queue
15+
- group: ""
16+
kind: Namespace
17+
version: v1
18+
name: team-a
19+
policy:
20+
placementType: PickFixed
21+
clusterNames:
22+
- ryanzhang-aks-member-2
23+
strategy:
24+
type: RollingUpdate
25+
rollingUpdate:
26+
maxUnavailable: 100%
27+
maxSurge: 25%
28+
unavailablePeriodSeconds: 60
29+
revisionHistoryLimit: 15
30+

examples/kueue/team-b-crp.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
apiVersion: placement.kubernetes-fleet.io/v1beta1
2+
kind: ClusterResourcePlacement
3+
metadata:
4+
name: team-b-crp
5+
spec:
6+
resourceSelectors:
7+
- group: kueue.x-k8s.io
8+
version: v1beta1
9+
kind: ResourceFlavor
10+
name: default-flavor
11+
- group: kueue.x-k8s.io
12+
version: v1beta1
13+
kind: ClusterQueue
14+
name: cluster-queue
15+
- group: ""
16+
kind: Namespace
17+
version: v1
18+
name: team-b
19+
policy:
20+
placementType: PickFixed
21+
clusterNames:
22+
- ryanzhang-aks-member-5
23+
strategy:
24+
type: RollingUpdate
25+
rollingUpdate:
26+
maxUnavailable: 100%
27+
maxSurge: 25%
28+
unavailablePeriodSeconds: 60
29+
revisionHistoryLimit: 15
30+

0 commit comments

Comments
 (0)