-
Notifications
You must be signed in to change notification settings - Fork 12
Update gpu chart, pull #29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Rouke Broersma <[email protected]>
…requires privileged Signed-off-by: Rouke Broersma <[email protected]>
Signed-off-by: Rouke Broersma <[email protected]>
…, use template functions instead Signed-off-by: Rouke Broersma <[email protected]>
Signed-off-by: Rouke Broersma <[email protected]>
…untName is sufficient Signed-off-by: Rouke Broersma <[email protected]>
… default helper functions instead Signed-off-by: Rouke Broersma <[email protected]>
Signed-off-by: Alexey Fomenko <[email protected]>
Signed-off-by: Alexey Fomenko <[email protected]>
@byako in that case I think it makes more sense to only use With helm if --create-namespace is skipped, helm expects the namespace to already exist. This is a fair assumption. The fact that we manage the namespace from the Chart should not matter from the helm perspective. We only manage the namespace to add the label, not to actually create it before starting deployment. This is how helm works so no one using helm will be surprised by this.
Yes but after the namespace is created helm will still apply the Namespace object as defined in the Chart, which will update the namespace with the correct label. So this it not a problem. On updates the namespace will already exist, so Helm will also not remove the label after that. We could add a helm weight to the namespace to make sure it's the first object that's applied during install, if that is a concern. However I don't think that's neccesary as the Chart is not that large, applying the namespace label will be near-instant. Before any pod has been scheduled. And if a pod does manage to schedule before the label is applied, on retry it will be allowed to deploy. All in all using |
I'm afraid that is not the case - when the namespace template is applied - it's applied not as a $ helm list -A
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
$ kubectl get ns
NAME STATUS AGE
default Active 3d16h
kube-node-lease Active 3d16h
kube-public Active 3d16h
kube-system Active 3d16h
node-feature-discovery Active 3d16h
$ helm install --namespace intel-gpu-resource-driver intel-gpu-resource-driver charts/intel-gpu-resource-driver/
Error: INSTALLATION FAILED: create: failed to create: namespaces "intel-gpu-resource-driver" not found
$ helm install --namespace intel-gpu-resource-driver --create-namespace intel-gpu-resource-driver charts/intel-gpu-resource-driver/
Error: INSTALLATION FAILED: namespaces "intel-gpu-resource-driver" already exists Do you know if there is a way to make it applied as a patch - then it would work like you suggest on one hand, and we can prevent |
That is.. Strange of Helm to do.. I must admit I never use Helm directly, only through other orchestration tools where this works as expected. How about if you do If that doesn't work I think the best option is to not include the namespace in the Chart at all, and documenting that the namespace should be pre-created with the correct security level set if you use a cluster with pod security enabled. Fwiw I already do that for almost all Charts anyway, because most Charts do not include a Namespace object and I don't like letting Helm create an 'unmanaged' Namespace. A quick search suggests that Helm simply does not appreciate when a namespace is part of the Chart.. By the way just wanted to say great work on the DRA implementation :) Worked straight away with my integrated graphics cluster. |
Yep
I got that impression as well, but thought namespace template would make it easier for user to install the namespace labels since Helm doesn't support user-specified metadata for freshly created release namespace.. let's get rid of the namespace template then.
Great to hear, thanks for the feedback! |
Signed-off-by: Alexey Fomenko <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved, looks fine to me.
(I forgot about this until you mentioned it in another PR...)
🚀 🚀 🚀 When can this be released? 😁 |
Soon, I'll need to change the artifact name to have -chart suffix, and update the doc, so we could publish both the Helm chart and the container image into the same ghcr.io registry in addition to Docker Hub. WIP. |
@rouke-broersma FYI, this was published couple of days back - v0.7.1, with the old name for now. |
Update works perfectly, thanks!
|
This is mostly from intel/helm-charts#76 , but with a slight change @eero-t :
@rouke-broersma FYI, I changed the namespace to only use
.Values.namespace
, seems--namespace
Helm parameter is forcing Helm to ensure namespace exists before applying templates - this way it should be simpler - just one source of truth.Doc is updated.