Installing Kubeflow
What is Kubeflow?
Kubeflow is an end-to-end Machine Learning (ML) platform for Kubernetes, it provides components for each stage in the ML lifecycle, from exploration through to training and deployment. Operators can choose what is best for their users, there is no requirement to deploy every component.
Learn more about Kubeflow in the Introduction and Architecture pages.
How to install Kubeflow?
Anywhere you are running Kubernetes, you should be able to run Kubeflow. There are two primary ways to install Kubeflow:
- Packaged Distributions
- Standalone Components
- Raw Manifests (advanced users)
Packaged Distributions of Kubeflow
Packaged distributions are maintained by various organizations and typically aim to provide a simplified installation and management experience for Kubeflow. Some distributions can be deployed on all certified Kubernetes distributions, while others target a specific platform (e.g. EKS or GKE).
Note
Packaged distributions are developed and supported by their respective maintainers. The Kubeflow community does not endorse or certify any specific distribution.
In the near future, there are plans to introduce conformance testing for distributions, you may track progress on this initiative by following kubeflow/kubeflow#6485
.
The following table lists packaged distributions of Kubeflow and their respective maintainers:
Maintainer Distribution Name | Kubeflow Version | Target Platform | Link |
---|---|---|---|
Amazon Web Services | 1.7.0 [Release Notes] | Amazon Elastic Kubernetes Service (EKS) | Website |
Aranui Solutions deployKF | 1.7.0 [Version Matrix] | All Certified Kubernetes Distributions | Website |
Canonical Charmed Kubeflow | 1.8.0 [Release Notes] | All Certified Kubernetes Distributions | Website |
Google Cloud | 1.8.0 [Release Notes] | Google Kubernetes Engine (GKE) | Website |
IBM Cloud | 1.8.0 [Release Notes] | IBM Cloud Kubernetes Service (IKS) | Website |
Microsoft Azure | 1.7.0 [Release Notes] | Azure Kubernetes Service (AKS) | Website |
Nutanix | 1.8.0 | Nutanix Kubernetes Engine | Website |
QBO | 1.8.0 [Release Notes] | QBO Kubernetes Engine (QKE) | Website |
Red Hat Open Data Hub | 1.6.0 | OpenShift | Website |
VMware | 1.6.1 | VMware vSphere | Website |
Standalone Components
Some components in the Kubeflow Ecosystem may be deployed as standalone services, without the need to install the full platform.
Note
Some features may be limited or unavailable when using standalone components. For example, standalone Kubeflow Pipelines does not include multi-user support, and is limited to a single Namespace.
A few packaged distributions allow you to choose which components are installed, while still providing the full version of those components.
The following table lists each component of Kubeflow and whether it supports standalone deployment:
Kubeflow Component | Source Code | Supports Standalone |
---|---|---|
Kubeflow Central Dashboard | kubeflow/kubeflow | No |
Kubeflow Notebooks | kubeflow/kubeflow | No |
Kubeflow Pipelines | kubeflow/pipelines | Yes | Installation Guide |
Kubeflow Katib | kubeflow/katib | No |
Kubeflow Training Operator | kubeflow/training-operator | Yes | Installation Guide |
Kubeflow MPI Operator | kubeflow/mpi-operator | Yes | Installation Guide |
Kubeflow Spark Operator | kubeflow/spark-operator | Yes | Installation Guide |
External Add-Ons
There are a number of External Add-Ons which are commonly deployed alongside the Kubeflow ecosystem.
These tools are maintained by external organizations and are not part of the core Kubeflow project.
However, some are included in the Raw Kubeflow Manifests (under the contrib
folder), so are available in most packaged distributions.
The following table lists some popular add-ons and whether they are included in the raw manifests:
External Add-On | Source Code | In Kubeflow Manifests |
---|---|---|
KServe | kserve/kserve | Yes |
Feast | feast-dev/feast | No |
Raw Kubeflow Manifests
The raw Kubeflow Manifests are aggregated by the Manifests Working Group and are intended to be used as the base of packaged distributions.
Advanced users may choose to install the manifests for a specific Kubeflow version by following the
instructions in the README
of the kubeflow/manifests
repository.
- Kubeflow 1.8:
v1.8-branch
(development branch)v1.8.0
- Kubeflow 1.7:
v1.7-branch
(development branch)v1.7.0
Warning
Kubeflow is a complex system with many components and dependencies. Using the raw manifests requires a deep understanding of Kubernetes, Istio, and Kubeflow itself.
When using the raw manifests, the Kubeflow community is not able to provide support for environment-specific issues or custom configurations. If you need support, please consider using a packaged distribution. Nevertheless, we welcome contributions and bug reports very much.
Next steps
- Review the Kubeflow component documentation
- Explore the Kubeflow Pipelines SDK
Feedback
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.