Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions docs/running-on-kubernetes.md
Original file line number Diff line number Diff line change
Expand Up @@ -1824,8 +1824,7 @@ Install Apache YuniKorn:
```bash
helm repo add yunikorn https://apache.github.io/yunikorn-release
helm repo update
kubectl create namespace yunikorn
helm install yunikorn yunikorn/yunikorn --namespace yunikorn --version 1.1.0
helm install yunikorn yunikorn/yunikorn --namespace yunikorn --version 1.1.0 --create-namespace --set embedAdmissionController=false
Copy link
Member Author

@dongjoon-hyun dongjoon-hyun Sep 14, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should not install YuniKorn admission controller because it doesn't allow other schedulers by default.

```

The above steps will install YuniKorn v1.1.0 on an existing Kubernetes cluster.
Expand All @@ -1836,6 +1835,8 @@ Submit Spark jobs with the following extra options:

```bash
--conf spark.kubernetes.scheduler.name=yunikorn
--conf spark.kubernetes.driver.label.queue=root.default
--conf spark.kubernetes.executor.label.queue=root.default
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apache YuniKorn provides two ways to set queues. We choose the simpler one.

--conf spark.kubernetes.driver.annotation.yunikorn.apache.org/app-id={{APP_ID}}
--conf spark.kubernetes.executor.annotation.yunikorn.apache.org/app-id={{APP_ID}}
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,11 @@ class YuniKornSuite extends KubernetesSuite {

override protected def setUpTest(): Unit = {
super.setUpTest()
val namespace = sparkAppConf.get("spark.kubernetes.namespace")
sparkAppConf
.set("spark.kubernetes.scheduler.name", "yunikorn")
.set("spark.kubernetes.driver.label.queue", "root." + namespace)
.set("spark.kubernetes.executor.label.queue", "root." + namespace)
.set("spark.kubernetes.driver.annotation.yunikorn.apache.org/app-id", "{{APP_ID}}")
.set("spark.kubernetes.executor.annotation.yunikorn.apache.org/app-id", "{{APP_ID}}")
}
Expand Down