What is Kubeflow?
The Kubeflow project is dedicated to making deployments of machine learning (ML) workflows on Kubernetes simple, portable and scalable. Our goal is not to recreate other services, but to provide a straightforward way to deploy best-of-breed open-source systems for ML to diverse infrastructures. Anywhere you are running Kubernetes, you should be able to run Kubeflow.
Installation
Step 1. Install MicroK8s
In this step you will install MicroK8s, a minimal, lightweight Kubernetes you can run and use on practically any machine. It can be installed with the following command:
sudo snap install microk8s --classic
Then, verify the success of the installation:
sudo microk8s status --wait-ready
Join the “microk8s” group
MicroK8s creates a group to enable seamless usage of commands which require admin privilege.
To add your current user to the group and gain access to the .kube caching directory, run the following two commands:
sudo usermod -a -G microk8s $USER
sudo chown -f -R $USER ~/.kube
Exit and re-enter the Ubuntu session for permissions to take effect.
Step 2. Deploy Kubeflow
Finally we are able to deploy all the Kubernetes services behind Kubeflow.
Let’s start by enabling the dns
, dashboard
and storage
services:
microk8s.enable dns dashboard storage
Then, to start Kubeflow:
microk8s.enable kubeflow
Starting these services can take several minutes. You can keep track of the status of this process with the following command:
microk8s.kubectl get all --all-namespaces
That’s it, you have successfully installed Kubeflow on your Ubuntu Server and you can start using it!