Skip to content

Commit

Permalink
Simplify the user-facing documentation for JobSet in MultiKueue (kube…
Browse files Browse the repository at this point in the history
…rnetes-sigs#2318)

* Simplify the user-facing documentation for JobSet in MultiKueue

* Review remarks

* remarks
  • Loading branch information
mimowo authored and Fiona-Waters committed Jun 25, 2024
1 parent d842598 commit e19b557
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 16 deletions.
7 changes: 3 additions & 4 deletions site/content/en/docs/concepts/multikueue.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ description: >
Kueue multi cluster job dispatching.
---

{{% alert title="Warning" color="warning" %}}
_Available in Kueue v0.6.0 and later_
{{% alert title="Note" color="primary" %}}
Available in Kueue v0.6.0 and newer
{{% /alert %}}

{{% alert title="Warning" color="warning" %}}
Expand Down Expand Up @@ -59,8 +59,7 @@ There is an ongoing effort to overcome these limitations by adding the possibili

### JobSet

When you want to submit JobSets to a ClusterQueue with a MultiKueue admission check, you should set the `spec.managedBy` field to `kueue.x-k8s.io/multikueue`, otherwise the admission check controller will `Reject` the workload causing it to be marked as `Finished` with an error indicating the cause.
The `managedBy` field is available in JobSet v0.5.0 and newer.
We recommend using JobSet v0.5.1 or newer.

## Submitting Jobs
In a [configured MultiKueue environment](/docs/tasks/manage/setup_multikueue), you can submit any MultiKueue supported job to the Manager cluster, targeting a ClusterQueue configured for Multikueue.
Expand Down
13 changes: 10 additions & 3 deletions site/content/en/docs/tasks/manage/setup_multikueue.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,19 @@ kubectl config use-context manager-cluster
```
{{% /alert %}}

### Jobset CRD only install
### JobSet installation

As mentioned in the [MultiKueue Overview](/docs/concepts/multikueue/#jobset) section, in the manager cluster only the JobSet CRDs should be installed, you can do this by running:
If you are using Kueue in version 0.7.0 or newer install the JobSet on the
management cluster (see [JobSet Installation](https://jobset.sigs.k8s.io/docs/installation/)
for more details). Please install JobSet 0.5.1 or newer for MultiKueue.

{{% alert title="Warning" color="warning" %}}
If you are using an older version of Kueue than 0.7.0, only install the JobSet
CRD in the management cluster. You can do this by running:
```bash
kubectl apply --server-side -f https://raw.githubusercontent.com/kubernetes-sigs/jobset/v0.4.0/config/components/crd/bases/jobset.x-k8s.io_jobsets.yaml
kubectl apply --server-side -f https://raw.githubusercontent.com/kubernetes-sigs/jobset/v0.5.1/config/components/crd/bases/jobset.x-k8s.io_jobsets.yaml
```
{{% /alert %}}

### Enable the MultiKueue feature

Expand Down
15 changes: 6 additions & 9 deletions site/content/en/docs/tasks/run/jobsets.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,9 @@ metadata:
kueue.x-k8s.io/queue-name: user-queue
```
### b. MultiKueue
### b. Configure the resource needs
If the JobSet is submitted to a queue using [MultiKueue](/docs/concepts/multikueue) its `spec.managedBy` field needs to be set to `kueue.x-k8s.io/multikueue`. Otherwise the its workload will be marked as `Finished` with an error indicating this cause.

### c. Configure the resource needs

The resource needs of the workload can be configured in the `spec.replicatedJobs`. Should also be taken into account that number of replicas, [parallelism](https://kubernetes.io/docs/concepts/workloads/controllers/job/#parallel-jobs) and completions affect the resource calculations.
The resource needs of the workload can be configured in the `spec.replicatedJobs`. Should also be taken into account that number of replicas, [parallelism](https://kubernetes.io/docs/concepts/workloads/controllers/job/#parallel-jobs) and completions affect the resource calculations.

```yaml
- replicas: 1
Expand All @@ -54,8 +50,8 @@ The resource needs of the workload can be configured in the `spec.replicatedJobs
cpu: 1
```

### d. Jobs prioritisation
### c. Jobs prioritisation

The first [PriorityClassName](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass) of `spec.replicatedJobs` that is not empty will be used as the priority.

```yaml
Expand Down Expand Up @@ -126,7 +122,8 @@ spec:

{{% alert title="Note" color="note" %}}
The same `jobset-sample.yaml` file from [single cluster environment](#single-cluster-environment) can be used in a [MultiKueue environment](#multikueue-environment).
The `spec.managedBy` field will be set to `kueue.x-k8s.io/multikueue` automatically, if not specified, as long as the `kueue.x-k8s.io/queue-name` annotation
In that setup, the `spec.managedBy` field will be set to `kueue.x-k8s.io/multikueue`
automatically, if not specified, as long as the `kueue.x-k8s.io/queue-name` annotation
is specified and the corresponding Cluster Queue uses the Multi Kueue admission check.
{{% /alert %}}

Expand Down

0 comments on commit e19b557

Please sign in to comment.