Installing Kubeflow

Overview of installation choices for various environments

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.

Installing Kubeflow

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:

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:

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.2.yaml Docs
Existing Kubernetes cluster using Dex for authentication kfctl_istio_dex.v1.0.2.yaml Docs
Amazon Web Services (AWS) using the standard setup kfctl_aws.v1.0.2.yaml Docs
Amazon Web Services (AWS) with authentication kfctl_aws_cognito.v1.0.2.yaml Docs
Microsoft Azure kfctl_k8s_istio.v1.0.2.yaml Docs
Google Cloud Platform (GCP) with Cloud Identity-Aware Proxy (Cloud IAP) kfctl_gcp_iap.v1.0.2.yaml Docs
IBM Cloud (IKS) kfctl_ibm.v1.0.2.yaml Docs
OpenShift kfctl_openshift.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. Make sure that you have the minimum required version of kustomize: 2.0.3 or later.

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.

Troubleshooting

See the Kubeflow troubleshooting guide.

Next steps