Microk8s for Kubeflow
Out of dateThis guide contains outdated information pertaining to Kubeflow 1.0. This guide needs to be updated for Kubeflow 1.1.
AlphaThis Kubeflow component has alpha status with limited support. See the Kubeflow versioning policies. The Kubeflow team is interested in your feedback about the usability of the feature.
This document outlines the steps that you can take to get your local installation of Kubeflow running on top of Microk8s, a small enterprise Kubernetes cluster. Microk8s requires Linux; if you are not on a Linux system, you can use Multipass to create a Linux VM (virtual machine) on your built-in hypervisor.
If you don’t have a Linux system already, or you would like to confine your Kubeflow to a disposable machine, then Create a VM with Multipass first and then follow the instructions below. That will get you an Ubuntu machine that can be used to install Kubernetes and Kubeflow.
Install Kubeflow using Microk8s
Here’s a summary of the steps involved:
- Set up Microk8s
- Enable Kubeflow
Note: the minimum version of Microk8s needed to enable Kubeflow is 1.18.
1. Install Microk8s
Install MicroK8s with Snap by running the following command:
sudo snap install microk8s --classic
Verify that MicroK8s is running with the command:
2. Enable Microk8s services
Enable common services on your Microk8s deployment:
microk8s.enable dns dashboard storage
Optional: to enable GPU support (available only for NVIDIA GPU hardware), run:
3. Enable Kubeflow
Deploy Kubeflow with the command:
The deployment process may take a few minutes. Once completed, the script will print out the port number and credentials to access the Kubeflow dashboard.
Access Kubeflow dashboard
On your Linux machine
If you installed Microk8s directly on your Linux machine, (1) open a web browser window and (2) access the link provided after you enable Kubeflow, e.g.
10.64.140.43.xip.io (see previous step).
On Multipass or a virtual machine
When running Microk8s on Multipass or a virtual machine, create a SOCKS proxy to access the Kubeflow dashboard, as follows:
Logout from the current session using the
Re-establish connection to the machine using
SSH, enabling SOCKS proxy with the
ssh -D9999 ubuntu@<machine_public_ip>
or find multipass IP with
multipass listand connect with:
ssh -D9999 multipass@<multipass_public_ip>
On your computer, go to
Settings > Network > Network Proxy, and enable SOCKS proxy pointing to:
Finally, (1) open a new web browser window and (2) access the link provided after you enable Kubeflow, e.g.
10.64.140.43.xip.io(see previous step).
- Refer to the microk8s common issues
- Refer to the multipass docs
- Refer to the user guide
- Refer to the components
- Refer to the guide to Jupyter notebooks in Kubeflow
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.