Repolode
kubeflow

kubeflow/community-distribution

Kubernetes-based distribution manifests for installing the full Kubeflow Platform, including Pipelines, KServe, Katib and the Central Dashboard.

Stars
1,049
Forks
1,076
Open issues
17
Last commit
8 hours ago

What is it?

This repository provides Kustomize manifests for installing the Kubeflow Platform on Kubernetes clusters such as Kind, Minikube, Rancher, EKS, AKS and GKE. It bundles official Kubeflow components like Pipelines, KServe, Katib, Notebooks, Trainer and Spark Operator, together with supporting services such as Istio, Knative, cert-manager, Dex and oauth2-proxy for routing, authentication and multi-tenancy.

Installation can be done with a single command that applies an example kustomization, or component by component for easier debugging and selective deployment. Users who need a different setup can build overlays on top of the manifests instead of editing them directly. The project publishes two releases per year and documents upgrade steps between versions.

The platform is aimed at teams that need multi-user isolation, OIDC-based login and a self-hosted ML platform. The default install uses a static test user and password, which the docs say must be changed for production use.

Key features

  • 01Installs Kubeflow components such as Pipelines, KServe, Katib, Notebooks and Trainer via Kustomize.
  • 02Supports Kind, Minikube, Rancher, EKS, AKS and GKE clusters.
  • 03Includes Istio, Dex and oauth2-proxy for authentication and multi-tenant access.
  • 04Offers single-command or per-component installation.
  • 05Provides overlays and documented upgrade steps between releases.

Use cases

  • Deploying an end-to-end machine learning platform on an existing Kubernetes cluster.
  • Running multi-tenant ML workloads with per-namespace isolation for teams.
  • Building a customized internal Kubeflow distribution on top of upstream manifests.
  • Exploring Kubeflow capabilities locally on Kind or Minikube.

Quick start

  1. 1

    Create the Kind cluster with the install script

    ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh
  2. 2

    Save the kubeconfig for the cluster

    kind get kubeconfig --name kubeflow > /tmp/kubeflow-config
  3. 3

    Install all Kubeflow components with a single command (retries until it succeeds)

    while ! kustomize build example | kubectl apply --server-side --force-conflicts -f -; do echo "Retrying to apply resources"; sleep 20; done

Things to know

  • Recommends 16+ GB RAM and 8 CPU cores, and the full install is resource-heavy.
  • Some container images may not support linux/arm64, so ARM64 is not fully supported yet.
  • The default login uses a well-known email and password that must be changed for production.

Topics

FAQ

What is community-distribution?
Kubernetes-based distribution manifests for installing the full Kubeflow Platform, including Pipelines, KServe, Katib and the Central Dashboard. This repository provides Kustomize manifests for installing the Kubeflow Platform on Kubernetes clusters such as Kind, Minikube, Rancher, EKS, AKS and GKE. It bundles official Kubeflow components like Pipelines, KServe, Katib, Notebooks, Trainer and Spark Operator, together with supporting services such as Istio, Knative, cert-manager, Dex and oauth2-proxy for routing, authentication and multi-tenancy.
Is community-distribution free to use? What license does it have?
community-distribution is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is community-distribution still maintained?
Actively maintained. The last commit to community-distribution was on Nov 6, 2026.
What can I use community-distribution for?
Deploying an end-to-end machine learning platform on an existing Kubernetes cluster. Running multi-tenant ML workloads with per-namespace isolation for teams. Building a customized internal Kubeflow distribution on top of upstream manifests. Exploring Kubeflow capabilities locally on Kind or Minikube.
How do I install community-distribution?
Create the Kind cluster with the install script: ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh Save the kubeconfig for the cluster: kind get kubeconfig --name kubeflow > /tmp/kubeflow-config Install all Kubeflow components with a single command (retries until it succeeds): while ! kustomize build example | kubectl apply --server-side --force-conflicts -f -; do echo "Retrying to apply resources"; sleep 20; done
Where can I get community-distribution?
The source code and installation instructions are on GitHub: https://github.com/kubeflow/community-distribution

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects