This document provides information about setting up Kubeflow in various environments.
Before you begin
It’s important that you have some knowledge of the following systems and tools:
If you plan to deploy Kubeflow on an existing Kubernetes cluster, review these Kubernetes system requirements.
Overview of installation options
The following diagram gives an overview of the options for deploying Kubeflow:
The following section describes the options in more detail and links to the relevant instructions.
There are various ways to install Kubeflow. Choose one of the following options to suit your environment (public cloud, existing Kubernetes cluster, or a single-node cluster which you can use on a desktop or server or in the cloud).
Installing Kubeflow on a public cloud
Choose the Kubeflow deployment guide for your chosen cloud:
- To use Kubeflow on Google Cloud Platform (GCP) and Kubernetes Engine (GKE), follow the GCP deployment guide.
- To use Kubeflow on Amazon Web Services (AWS), follow the AWS deployment guide.
- To use Kubeflow on Microsoft Azure Kubernetes Service (AKS), follow the AKS deployment guide.
- To use Kubeflow on IBM Cloud (IKS), follow the IKS deployment guide.
- To use Kubeflow on OpenShift, follow the OpenShift deployment guide.
Installing Kubeflow on an existing Kubernetes cluster
Follow the guide to deploying Kubeflow on Kubernetes.
Installing Kubeflow on desktop, server, or cloud in a single-node Kubernetes cluster
You can use the following options to run Kubeflow on a single-node Kubernetes cluster, which you can use on a desktop or server or in the cloud.
Choose the guide for your operating system or environment:
- To use Kubeflow on Linux, follow the Linux deployment guide.
- To use Kubeflow on MacOS, follow the MacOS deployment guide.
- To use Kubeflow on Windows, follow the Windows deployment guide.
- To use MiniKF (mini Kubeflow) on Google Cloud Platform, follow the guide to MiniKF on GCP.
Configuration quick reference
Below is a matrix of the platforms where you can deploy Kubeflow and the corresponding manifest files that specify the default configuration for each platform. The matrix shows the same manifests as the installation guides. The matrix is therefore an alternative way of accessing the information in the installation section above.
|Deployment platform||Manifest||Deployment guide|
|Existing Kubernetes cluster using a standard Kubeflow installation||kfctl_k8s_istio.v1.0.1.yaml||Docs|
|Existing Kubernetes cluster using Dex for authentication||kfctl_istio_dex.v1.0.1.yaml||Docs|
|Amazon Web Services (AWS) using the standard setup||kfctl_aws.v1.0.1.yaml||Docs|
|Amazon Web Services (AWS) with authentication||kfctl_aws_cognito.v1.0.1.yaml||Docs|
|Google Cloud Platform (GCP) with Cloud Identity-Aware Proxy (Cloud IAP)||kfctl_gcp_iap.v1.0.1.yaml||Docs|
|IBM Cloud (IKS)||kfctl_ibm.v1.0.1.yaml||Docs|
Installing command line tools
The following information is useful if you need or prefer to use command line tools for deploying and managing Kubeflow:
Download the kfctl binary from the Kubeflow releases page.
Follow the kubectl installation and setup instructions from the Kubernetes documentation. As described in the Kubernetes documentation, your kubectl version must be within one minor version of the Kubernetes version that you use in your Kubeflow cluster.
Follow the kustomize installation and setup instructions from the guide to kustomize in Kubeflow.
Understanding the Kubeflow versioning policies
With the launch of Kubeflow v1.0, the Kubeflow community attributes stable status to those applications and other components that meet the required level of stability, supportability, and upgradability.
Read about the Kubeflow versioning policies, including the stable status of Kubeflow applications and deployment platforms.
See the Kubeflow troubleshooting guide.
- Read the documentation for in-depth instructions on using Kubeflow.
- Explore the tutorials and codelabs for learning and trying out Kubeflow.
- Build machine-learning pipelines with the Kubeflow Pipelines SDK.
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.