[Feature] Support `runtimeClassName` in values.yaml
Search before asking
- [x] I had searched in the issues and found no similar feature requirement.
Description
What problem does this solve?
KubeRay clusters that run with containerd + GPU runtimes (e.g. k3s/rke + nvidia) must set
spec.template.spec.runtimeClassName: nvidia on the worker Pods.
With the current chart (¹) there is no supported way to pass that field. the template only renders an explicit whitelist of PodSpec attributes, so any additional keys placed under
worker: template: spec:
are silently discarded.
The only workaround today is to patch the RayCluster after Helm deploy:
kubectl patch raycluster
-p='[
{"op":"add",
"path":"/spec/workerGroupSpecs/0/template/spec/runtimeClassName",
"value":"nvidia"}
]'
Use case
worker: template: spec: runtimeClassName: nvidia
Related issues
No response
Are you willing to submit a PR?
- [x] Yes I am willing to submit a PR!
Hi @Future-Outlier, is this issue still valid? I'd like to give it a shot.
Hi @Future-Outlier, is this issue still valid? I'd like to give it a shot.
go for it
Thanks! I'll take a look into it.
I’m planning to modify helm-chart/ray-cluster/templates/raycluster-cluster.yaml to include something like:
{{- with .Values.worker.runtimeClassName }} runtimeClassName: {{ . }} {{- end }}
However, I noticed there’s also another repository kuberay-helm. Should I submit the PR there, or in this main repository?
Hi @Narwhal-fish,
You just need to open a PR in this repo, the release manager will handle syncing it to the kuberay-helm repo during the release process.
Hi @Narwhal-fish,
You just need to open a PR in this repo, the release manager will handle syncing it to the kuberay-helm repo during the release process.
Got it!