kubeflow
kubeflow copied to clipboard
helm chart
Are there any plans for a helm chart?
Preferably one that would leverage the already existing argo, ambassador, minio and any other component's community charts as dependencies of the kubeflow chart?
Would be great if we could deploy and manage kubeflow with the package manager we all love and know!
My 2 cents...
Issue-Label Bot is automatically applying the label improvement/enhancement
to this issue, with a confidence of 0.74. Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback!
Links: app homepage, dashboard and code for this bot.
Got started on something, is this worth moving forward on?
https://github.com/helm/charts/pull/13454
I would like to see kubeflow in helm. We use helm for IAC and kubeflow is a massive project with no helm support.
@naseemkullah kubeflow is moving to kustomize for 0.6. Kustomize provides some support for helm through a helm plugin which would be a way to integrate new components. Your approach is interesting and goes the other way - moving everything to helm
Thanks for the info @kkasravi
Is there an update to this? I am also woking with @naseemkullah to create a helm chart for kubeflow. It won't take much work to get the manifests repo to be a helm chart. But I don't want to waste our efforts. Not sure why there would be resistance to deploying kubeflow via helm as it is by far the most common way to deploy services in kubernetes. Basically ever open source project can be deployed via helm. There are already 334 projects in this repo. https://github.com/helm/charts Kubeflow could easily be #335
@dodizzle even if the kubeflow org doesn't support helm. A community helm chart will be greatly appreciated.
kubeflow is a collection of components - eg the kustomization.yaml's under https://github.com/kubeflow/manifests are used to generate separate groups of resources. Each kustomize target is deployed separately.
if you do a kfctl init ~/kubeflow; cd ~/kubeflow; kfctl generate all
you'll see separate yamls under ~/kubeflow/kustomize.
Currently kfctl doesn't provide an option of deploying either using a helm chart or kustomize. But one could deploy a helm chart separately rather than use the kustomize target. As I noted earlier - kustomize has a helm plugin so you could use a helm chart that the plugin outputs as a kustomize target.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@dodizzle curious where did the helm chart end up?
helm is better!
Why is this closed?
I think that the resistance to helm is a huge bummer, we use helm + kustomize + flux pretty heavily and would love to deploy kubeflow but the lack of a stable chart and many interleaved components caused us to abandon this project for a different path.
Why not helm? Sure It might have some weird spots but it's an incredibly powerful and easy to use tool for automating complex deployments, I think this project would gain alot more traction if it embraced the tooling that the community was asking for.
Just to restate what @jay-manday said:
Helm has its quirks, kustomize has its quirks, <fill-in-tool-name> has its quirks, ..., nothing is perfect. Realistically though, Helm has achieved widespread adoption in the K8s application deployment space, and the packaging format they use for distribution makes it easy to use. Running something like
export PIPELINE_VERSION=1.7.0
kubectl apply -k "github.com/kubeflow/pipelines/manifests/kustomize/cluster-scoped-resources?ref=$PIPELINE_VERSION"
kubectl wait --for condition=established --timeout=60s crd/applications.app.k8s.io
kubectl apply -k "github.com/kubeflow/pipelines/manifests/kustomize/env/platform-agnostic-pns?ref=$PIPELINE_VERSION"
makes me feel like I'm forced to manually do things that Helm does for free with values, hooks, and CLI flags. I also have no interest in writing production-grade automation code using Bash and kubectl
. 🤮
Secondly, in order to perform an upgrade, Helm has a well-defined procedure for rollbacks in the event of a failure; kustomize applies (overwrites) so hold onto your butts. 🤷♂️ I've used both Helm and kustomize deployment strategies in production and I will never repeat the latter given the pain I experienced there, but that's just me.
I'd use Kubeflow in anger if a Helm chart was available, otherwise I feel like I need to search elsewhere.
@jay-manday @sonnysideup I hope to release an unofficial Helm chart for Kubeflow soon.
It will be more or less based on Kustomize files without the third-party components (Istio, cert-manager, an OIDC provider, ...)
@sebastien-prudhomme did you already release your helm chart?
@Legion2 just some components: see there https://github.com/cowboysysop/charts
I'm stuck with some problems, one of them is that some components are still using old APIs and are not compatible with K8S 1.22.
Fortunately it seems that things are changing since KServe which is remplacing KFServing now has an official Helm chart: https://github.com/kserve/kserve/tree/master/manifests/charts
@sebastien-prudhomme the KServe Helm chart is not publised and will come with KServe 0.8 version
There is here a helm chart for kubeflow-pipelines: https://github.com/getindata/helm-charts/tree/main/charts/kubeflow-pipelines
Due to its complexity and high entry level, Data Scientists seem to be discouraged to even give it a go. At GetInData, we have developed a platform-agnostic Helm Chart for Kubeflow Pipelines, that will allow you to get started within minutes
https://getindata.com/blog/kubeflow-pipelines-running-5-minutes/
@mtparet its not official and uptodate with latest KFP releases
Indeed there is some lack for latest update but it is a good start for all people wishing an easy way to use kubeflow. And with kindness contributions, I am sure this chart could be updated.
Also, feel free to check this very simple helm chart for kubeflow pipelines. It is aimed at running smaller experiments locally. I mostly use it for my personal ml projects.
https://github.com/Techn0logic/kubeflow-pipelines-standalone
Please feel free to try and join https://github.com/alauda/kubeflow-chart
Please re-open this issue @naseemkullah - in https://github.com/helm/charts/pull/13454#issuecomment-523251345, you ceased developing the Helm chart simply due to lack of time. This is a legitimate feature request that someone else could take up and should stay as an open issue.
Please re-open this issue @naseemkullah - in helm/charts#13454 (comment), you ceased developing the Helm chart simply due to lack of time. This is a legitimate feature request that someone else could take up and should stay as an open issue.
Sure ok
/priority p2 /area jupyter
All - I have added issue as a discussion point in today's (Nov 8, 2022 @ 8am PT) Community Call. Our goal will be to find users and contributors that will develop, test, document and support this enhancement in Kubeflow v1.7 (March 2023) and beyond. For reference, here are the notes to the Community Call Agenda, which includes the bridge, https://docs.google.com/document/d/1Wdxt1xedAj7qF_Rjmxy1R0NRdfv7UWs-r2PItewxHpE/edit#
/area manifest
@jbottum: The label(s) area/manifests
cannot be applied, because the repository doesn't have them.
In response to this:
/area manifests
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.
We have a few people discussing an official community helm chart. Please join the thread in the community slack if you are able to help this effort https://kubeflow.slack.com/archives/C01EY3L525N/p1672935974905539
@typhoonzero I looked over your repository - solid work! Come join in the slack conversation
@Syntax3rror404 adding you to this Helm thread