Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Pre-Requisites

Docker for Desktop

Install Docker for Desktop v2.3.0.5 for your OS

Windows:

 https://desktop.docker.com/win/stable/48029/Docker%20Desktop%20Installer.exe


Mac:

https://desktop.docker.com/mac/stable/48029/Docker.dmg


Configure the resources for Docker

You'll want to have at least 4-6 cpus and about 8-16Gb of ram if you can spare it.

Enable Kubernetes

Installation 

On Windows

For windows, we are going to use a Ubuntu docker container to install Kubeflow into our Kubernetes running in Docker for Desktop. 


From a Command Prompt:

Code Block
> docker run -it --rm -v C:\Users\<USER>\.kube:/root/.kube ubuntu:20.04 bash

apt-get update
apt-get install -y curl                                                                                                 
apt-get install -y git                                                                                                  
apt-get install -y wget 

#install kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

#install kfctl
wget https://github.com/kubeflow/kfctl/releases/download/v1.0.2/kfctl_v1.0.2-0-ga476281_linux.tar.gz                    
tar xvfz kfctl_v1.0.2-0-ga476281_linux.tar.gz                                                                           
cp kfctl /usr/local/bin                                                                                                                                                                                                                         

#install kubeflow
export KF_NAME=kubeflow
export BASE_DIR=/opt/ubuntu/                                                                                            
export KF_DIR=${BASE_DIR}/${KF_NAME}                                                                                    
export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml"  
mkdir -p ${KF_DIR}                                                                                                      
cd ${KF_DIR}                                                                                                            
kfctl apply -V -f ${CONFIG_URI}  


On Mac and Windows

Install kfctl

On Windows 

Code Block
#install kfctl
wget https://github.com/kubeflow/kfctl/releases/download/v1.0.2/kfctl_v1.0.2-0-ga476281_linux.tar.gz                    
tar xvfz kfctl_v1.0.2-0-ga476281_linux.tar.gz                                                                           
cp kfctl /usr/local/bin                                                                                                                                                                                                                         


On Mac

Code Block
wget https://github.com/kubeflow/kfctl/releases/download/v1.2.0/kfctl_v1.2.0-0-gbc038f9_darwin.tar.gz
tar xvfz kfctl_v1.2.0-0-gbc038f9_darwin.tar.gz
sudo cp kfctl /usr/local/bin/.


Install Kubeflow

On Windows in Container

Code Block
#install kubeflow
export KF_NAME=kubeflow
export BASE_DIR=/opt/ubuntu/                                                                                            
export KF_DIR=${BASE_DIR}/${KF_NAME}                                                                                    
export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml"  
mkdir -p ${KF_DIR}                                                                                                      
cd ${KF_DIR}                                                                                                            
kfctl apply -V -f ${CONFIG_URI} 


On Mac

Code Block
#install kubeflow
export KF_NAME=kubeflow
export BASE_DIR=/Users/<USERNAME>/kfctlinstall                                                                                            
export KF_DIR=${BASE_DIR}/${KF_NAME}                                                                                    
export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml"  
mkdir -p ${KF_DIR}                                                                                                      
cd ${KF_DIR}                                                                                                            
kfctl apply -V -f ${CONFIG_URI} 


Wait for containers to all start. This could take a while... up to 30 minutes.

Code Block
$ kubectl get pods --all-namespaces

$ kubectl get pods --all-namespaces |grep -v Running  |grep -v Completed |wc -l



From a regular windows CMD prompt(Windows) or teminal (MAC), enable port forwarding:

Code Block
$ kubectl port-forward -n istio-system svc/istio-ingressgateway 8080:80

Use it

Navigate to http://localhost:8080/

References

ReferenceURL
Install Kubeflow on a single-node Kubernetes v1.18.2 clusterhttps://illya13.github.io/RL/tutorial/2020/05/03/install-kubeflow-on-single-node-kubernetes-v1.18.2.html
How to use Docker Desktop for Mac or Windows to run Kubeflowhttps://morioh.com/p/7c45a5df9034

Kubeflow: How to Install and Launch Kubeflow on your Local Machine

https://towardsdatascience.com/kubeflow-how-to-install-and-launch-kubeflow-on-your-local-machine-e0d7b4f7508f