Charmed Kubeflow (CKF) can be installed on any CNCF certified Kubernetes, including AKS, EKS, GKE, Openshift and any kubeadm
-deployed cluster.
Prerequisites
A working Kubernetes (K8s) cluster is required. The cluster must meet these requirements:
- Be version 1.27-1.29
- Have a default storage class configured
Bootstrap Juju
CKF is deployed to Kubernetes with Juju. Before deployment, Juju must first be bootstrapped to the K8s cluster. For bootstrapping instructions, see Get started with the Juju OLM.
Create the kubeflow
model
To create a Juju model for CKF, run:
juju add-model kubeflow
The model name must be kubeflow
for deploying Charmed Kubeflow.
See Juju OLM | juju add-model
for more details.
To deploy the most recent stable version of CKF, run:
juju deploy kubeflow --trust --channel=1.9/stable
See Charmhub | kubeflow
for more details.
It may take up to 20 minutes for all charms to become active.
To monitor the model with Juju:
juju status --watch 5s
Access the Kubeflow dashboard
To access the Kubeflow dashboard, you need to do the following:
Set credentials for a static user
Configure dex-auth
with a username and password:
juju config dex-auth static-username=<new username>
juju config dex-auth static-password=<new password>
See juju config
and Configure for more details.
Find the dashboard’s IP address and log in
To find the IP address of the Kubeflow dashboard, run::
kubectl get services -n kubeflow
See Kubernetes | kubectl get
for more details.
The Charmed Kubeflow dashboard can be accessed using the IP attached to the istio-ingressgateway
component. If you are using MicroK8s with the metallb
add-on, the dashboard should be accessible at the LoadBalancer IP, typically http://10.64.140.43.nip.io
. Otherwise, it should be accessible at the LoadBalancer IP, ClusterIP or NodePort when configured. You can refer to the gateway_service_type
configuration option for more information.
If you have to set up DNS, you should use the resolvable address used by istio-ingressgateway
.
If you are accessing the dashboard remotely, this URL can be made available over SSH and a SOCKS proxy — see How to setup SSH for more details.
After you have accessed the dashboard, log in using the static-username
and static-password
you configured in Set credentials for a static user.