kubeflow-manifests icon indicating copy to clipboard operation
kubeflow-manifests copied to clipboard

Helm chart for kubeflow deployment.

Open goswamig opened this issue 2 years ago • 4 comments

Is your feature request related to a problem? Please describe. Customer would like to use helm chart for kubeflow deployment with various configuration which AWS distro offers.

Describe the solution you'd like Something along the below line

helm add repo awslabs/kubeflow-manifests 
# customer can update .Values file with configuration and installs it
helm install kubeflow-manifests/s3-rds

Additional context This will be helpful in https://github.com/awslabs/kubeflow-manifests/issues/48 as well.

goswamig avatar Mar 10 '22 20:03 goswamig

  • Kubeflow community use “kustomize” (configuration management tool) for deployment of kubeflow.

  • Kustomize basically uses an overriding concept i.e. preserving the base file(yaml) setting and configuring the requirement mentioned in the overlays file(yaml)

  • Every component have their respective BASE and OVERLAY yaml files

  • Example : Consider "Dex" component (*refer link : https://github.com/kubeflow/manifests/tree/master/common/dex) have the BASE and OVERLAY yaml file

Here,

  • HELM CHART based deployment is required for Kubeflow
  • Helm Chart Follows Template Based deployment unlike kustomize

The single line installation command mentioned here https://awslabs.github.io/kubeflow-manifests/docs/deployment/vanilla/guide/ [Vanilla Installation / Deploy Kubeflow on AWS using Amazon Elastic Kubernetes Service (EKS)] , internally doing kubectl apply on this https://github.com/awslabs/kubeflow-manifests/blob/main/deployments/vanilla/kustomization.yaml kustomization.yaml file

  • The very first component deployed is Cert-Manager followed by istio-system and others
  • We can refer the kustomization.yaml file of every component and can create Helm-cart for each component , eventually pacaking the entire Kubeflow application into Helm-Chart for deployment on AWS.

MedhaCS1010 avatar Sep 05 '22 14:09 MedhaCS1010

  • Kubeflow community use “kustomize” (configuration management tool) for deployment of kubeflow.
  • Kustomize basically uses an overriding concept i.e. preserving the base file(yaml) setting and configuring the requirement mentioned in the overlays file(yaml)
  • Every component have their respective BASE and OVERLAY yaml files
  • Example : Consider "Dex" component (*refer link : https://github.com/kubeflow/manifests/tree/master/common/dex) have the BASE and OVERLAY yaml file

Here,

  • HELM CHART based deployment is required for Kubeflow
  • Helm Chart Follows Template Based deployment unlike kustomize

The single line installation command mentioned here https://awslabs.github.io/kubeflow-manifests/docs/deployment/vanilla/guide/ [Vanilla Installation / Deploy Kubeflow on AWS using Amazon Elastic Kubernetes Service (EKS)] , internally doing kubectl apply on this https://github.com/awslabs/kubeflow-manifests/blob/main/deployments/vanilla/kustomization.yaml kustomization.yaml file

  • The very first component deployed is Cert-Manager followed by istio-system and others
  • We can refer the kustomization.yaml file of every component and can create Helm-cart for each component , eventually pacaking the entire Kubeflow application into Helm-Chart for deployment on AWS.

@surajkota @goswamig if the above Idea explained in comment by me make some sense, then I would like to work on this enhancement feature .......I did some research as well and found out that some sub-component of kubeflow application have Helm-Chart deployment that would ease our work in pacakaging entire Kubflow Application and getting Helm Based deployment

MedhaCS1010 avatar Sep 08 '22 19:09 MedhaCS1010

Hi @MedhaCS1010, thank you for the investigation and interest in this feature. @jsitu777 is already working on this and has created a PR #329 with Helm charts for Kubeflow 1.6. He is working on a few more changes to it. The charts are generated by a script.

Feel free to review the PR. The script to generate the charts will also be in PR next week.

btw, Which Kubeflow components already have helm chart except cert manager and KServe?

Are there any other items which you would like to contribute to?

surajkota avatar Sep 09 '22 07:09 surajkota

Yeah sure I am exploring this Helm based idea got deployment for few sub-component as well on my local setup under kubeflow namespace using helm charts.....soon will be adding those charts into my branch

MedhaCS1010 avatar Oct 15 '22 17:10 MedhaCS1010

@MedhaCS1010 Kubeflow 1.6 release includes Helm based deployment

surajkota avatar Nov 03 '22 15:11 surajkota