Skip to main content
In this lesson you’ll learn how to access the Kubeflow Central Dashboard (the Kubeflow UI) from your workstation and review the main areas available in the dashboard. Before opening the UI, inspect a few Kubernetes resources to determine how the cluster exposes Kubeflow.

Inspect cluster services

Kubernetes Services define how pods communicate inside the cluster and how traffic is routed to workloads. To list services across all namespaces run:
A representative excerpt (trimmed to the relevant namespaces and services) looks like this:
We are interested in the istio-ingressgateway service in the istio-system namespace. It uses type ClusterIP and exposes ports 80 and 443. A ClusterIP service is reachable only from within the cluster by default — it is not exposed to your local machine or the internet.

Create a local proxy with kubectl port-forward

To reach the Kubeflow UI from your workstation, forward a local port to the service port inside the cluster. Set the Istio namespace and run a port-forward from your local port 8080 to the service port 80:
This forwards requests to http://localhost:8080 to the ingress gateway’s port 80 inside the cluster. Once the port-forward is running, open your browser to http://localhost:8080 to reach the Kubeflow Central Dashboard.
A web browser displaying the Kubeflow sign-in page with the Kubeflow logo centered and a "Sign in with Dex" button. The address bar shows localhost:8080.
See the official documentation for the same steps under “Kubeflow Dashboard Access”.
Do not use default demo credentials for production clusters. Always secure the dashboard with proper authentication and rotate default accounts. If you expose the ingress gateway publicly, ensure you configure strong authentication, TLS, and network controls.
If you need public access (not recommended for production without proper auth), you can expose the ingress gateway via a LoadBalancer service or configure an external reverse proxy. For most local admin tasks, kubectl port-forward is the simplest and safest approach.

Overview: Kubeflow Central Dashboard

After authenticating, the Kubeflow Central Dashboard provides a namespace-aware overview of Kubeflow components, quick links, and recent activity. It is the central place to monitor and manage notebooks, pipelines, experiments, and model serving. Notebooks is where you create and manage Jupyter instances (and other notebook types) that run in your cluster:
A screenshot of the Kubeflow Central Dashboard web interface with the left navigation menu (Home, Notebooks selected, TensorBoards, Volumes, etc.) and main panels showing Quick shortcuts, Recent Notebooks/Pipelines, and Documentation links. The Notebooks section is highlighted and the dashboard lists actions like creating a notebook, uploading a pipeline, and viewing docs.
Clicking New Notebook lets you select the notebook runtime and resource configuration (CPU, memory, GPUs). Kubeflow supports multiple runtimes so data scientists can run JupyterLab, VS Code, or RStudio directly in the cluster:
A Kubeflow dashboard "New notebook" screen showing selectable notebook types (JupyterLab, VisualStudio Code, RStudio). The page also displays CPU/RAM and GPU configuration fields with a left-side navigation menu.
Pipelines is where you define and orchestrate machine learning workflows — data ingestion, preprocessing, training, evaluation, and deployment. The UI visualizes pipeline graphs and lets you create runs to execute them:
A screenshot of the Kubeflow Pipelines web UI showing a pipeline graph titled "[Tutorial] DSL - Control structures" with nodes labeled exit-handler-1, flip-coin-op, print-op, and for-loop-3. The left sidebar shows navigation items like Home, Notebooks, and Pipelines.
Key dashboard sections at a glance: Later you’ll get hands-on experience creating notebooks, running pipelines, tuning models with Katib, and deploying models with KServe. The Kubeflow Central Dashboard is the primary UI for monitoring and managing these activities.

Watch Video