kubeflow icon indicating copy to clipboard operation
kubeflow copied to clipboard

helm chart

Open naseemkullah opened this issue 5 years ago • 97 comments

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...

naseemkullah avatar May 02 '19 03:05 naseemkullah

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.

issue-label-bot[bot] avatar May 02 '19 03:05 issue-label-bot[bot]

Got started on something, is this worth moving forward on?

https://github.com/helm/charts/pull/13454

naseemkullah avatar May 02 '19 05:05 naseemkullah

I would like to see kubeflow in helm. We use helm for IAC and kubeflow is a massive project with no helm support.

devonkinghorn avatar May 06 '19 21:05 devonkinghorn

@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

kkasravi avatar May 10 '19 05:05 kkasravi

Thanks for the info @kkasravi

naseemkullah avatar May 10 '19 11:05 naseemkullah

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 avatar May 22 '19 16:05 dodizzle

@dodizzle even if the kubeflow org doesn't support helm. A community helm chart will be greatly appreciated.

devonkinghorn avatar May 22 '19 16:05 devonkinghorn

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.

kkasravi avatar May 22 '19 20:05 kkasravi

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.

stale[bot] avatar Aug 20 '19 20:08 stale[bot]

@dodizzle curious where did the helm chart end up?

kyprifog avatar Nov 03 '20 18:11 kyprifog

helm is better!

maxisacoder avatar May 14 '21 07:05 maxisacoder

Why is this closed?

danielbraun89 avatar Aug 08 '21 08:08 danielbraun89

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.

jmandel1027 avatar Oct 02 '21 17:10 jmandel1027

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.

sonnysideup avatar Oct 13 '21 01:10 sonnysideup

@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 avatar Oct 13 '21 10:10 sebastien-prudhomme

@sebastien-prudhomme did you already release your helm chart?

Legion2 avatar Dec 17 '21 14:12 Legion2

@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 avatar Dec 17 '21 16:12 sebastien-prudhomme

@sebastien-prudhomme the KServe Helm chart is not publised and will come with KServe 0.8 version

js-ts avatar Dec 17 '21 19:12 js-ts

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 avatar Jan 13 '22 14:01 mtparet

@mtparet its not official and uptodate with latest KFP releases

js-ts avatar Jan 13 '22 15:01 js-ts

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.

mtparet avatar Jan 13 '22 15:01 mtparet

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

Techn0logic avatar Apr 06 '22 16:04 Techn0logic

Please feel free to try and join https://github.com/alauda/kubeflow-chart

typhoonzero avatar Apr 25 '22 00:04 typhoonzero

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.

brsolomon-deloitte avatar Oct 07 '22 20:10 brsolomon-deloitte

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

naseemkullah avatar Oct 07 '22 21:10 naseemkullah

/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#

jbottum avatar Nov 08 '22 15:11 jbottum

/area manifest

jbottum avatar Nov 29 '22 19:11 jbottum

@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.

google-oss-prow[bot] avatar Nov 29 '22 19:11 google-oss-prow[bot]

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

Talador12 avatar Jan 31 '23 17:01 Talador12

@Syntax3rror404 adding you to this Helm thread

jbottum avatar Feb 01 '23 16:02 jbottum