Install Using Helm

Install KubeDL using Helm

Install Helm

Helm is a package manager for Kubernetes. You can install helm with command below on MacOS

brew install helm

Check the helm website for more details.

Install KubeDL

From the root directory, run

helm install kubedl ./helm/kubedl --create-namespace -n kubedl-system

Running the command from master branch uses the daily docker image.

You can override default values defined in values.yaml with --set flag. For example, set the custom cpu/memory resource:

helm install kubedl ./helm/kubedl --create-namespace -n kubedl-system  --set resources.requests.cpu=1024m --set resources.requests.memory=2Gi

Helm will install CRDs and KubeDL controller under kubedl-system namespace.

Uninstall KubeDL

helm uninstall kubedl -n kubedl-system

Delete all CRDs

kubectl get crd | grep | cut -d ' ' -f 1 | xargs kubectl delete crd

Enable specific job Kind

KubeDL supports all kinds of jobs(tensorflow, pytorch etc.) in a single Kubernetes operator. You can selectively enable the kind of jobs to support. There are three options:

  1. Default option. Just install the job CRDs required. KubeDL will automatically enable the corresponding job controller.
  2. Set env WORKLOADS_ENABLE in KubeDL container. The value is a list of job types to be enabled. For example, WORKLOADS_ENABLE=TFJob,PytorchJob means only Tensorflow and Pytorch Job are enabled.
  3. Set startup flags --workloads in KubeDL container command args. The value is a list of job types to be enabled like --workloads TFJob,PytorchJob.