Home > Workload Solutions > High Performance Computing > White Papers > Machine Learning Using Red Hat OpenShift Container Platform > Deploying Kubeflow v0.5
Kubeflow v0.5 installation is based on ksonnet, a configurable, typed, templating system for the Kubernetes application developer. The ksonnet system separates Kubernetes object definitions from the cluster destination to simplify and automate deployments.
To deploy Kubeflow v0.5 on OpenShift Container Platform v3.11:
$ mkdir ~/bin
$ cd ~/bin
$ wget https://github.com/kubeflow/kubeflow/releases/download/v0.5.1/kfctl_v0.5.1_linux.tar.gz
$ tar -xzf kfctl_v0.5.1_linux.tar.gz
$ wget https://github.com/ksonnet/ksonnet/releases/download/v0.13.1/ks_0.13.1_linux_amd64.tar.gz
$ tar -xzf ks_0.13.1_linux_amd64.tar.gz
$ ln -s ks_0.13.1_linux_amd64/ks ks
$ export PATH=$PATH:~/bin
$ cd ~
$ export KFAPP=kubeflow
$ kfctl init ${KFAPP}
$ cd ${KFAPP}
$ kfctl generate all -V
Note: KFAPP serves as the name of the directory where the deployment is stored and the project or namespace where Kubeflow is installed. The name “kubeflow” is recommended because some of the ksonnet parameters are still hard-coded with kubeflow as the project name.
$ kfctl apply all -V
$ oc adm policy add-scc-to-user anyuid -z ambassador
$ oc adm policy add-scc-to-user anyuid -z default
$ oc adm policy add-scc-to-user anyuid -z katib-ui
Note: Relaxing the Security Context Constraints (SCC) is required to get Kubeflow services up and running, but is not recommended for a production environment. We expect OpenShift Container Platform to add proper SCCs for these users in the future.
$ ks param set ambassador ambassadorServiceType ‘ClusterIP’
$ oc expose service ambassador
$ oc get routes
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD
ambassador ambassador-kubeflow.router.default.svc.cluster.local ambassador ambassador None
The Kubeflow web UI opens, as shown in the following figure:
Figure 3. Kubeflow user interface
You can access the Kubeflow components and documentation using the web UI.