Before Installing Kubeflow

Kubeflow automatically assigns the following Kubeflow-specific aggregating cluster roles:

  • kubeflow-admin
  • kubeflow-edit
  • kubeflow-view


See the following resources for more information on how Kubeflow implements RBAC. The following links open external websites in a new browser tab or window:

System Requirements

For supported Kubernetes versions, see Kubernetes Version Requirements. For issues and workarounds, see Issues and Workarounds.

The following resources must be available to install Kubeflow:

  • Minimum number of nodes for compute cluster: 2 (1 master, 1 worker)

  • Minimum core and memory resources required:

    • CPU Cores: 36

    • Memory (GB): 160

Dynamic Volume Provisioning for Persistent Volumes

Persistent Volumes for Kubeflow are dynamically provisioned using a default Storage Class.

  • If you are using HPE Ezmeral Data Fabric, a default Storage Class is created and marked as default. For example:

    kubectl get sc 
    
    NAME                              PROVISIONER                    RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    cluster-1664736275961 (default)   com.mapr.csi-kdf               Delete          Immediate              true                   19h
    cluster-1664736275961-nfs         com.mapr.csi-nfskdf            Delete          Immediate              true                   19h
    hpe-hdd-storage                   kubernetes.io/no-provisioner   Delete          WaitForFirstConsumer   false                  19h
    hpe-nvme-storage                  kubernetes.io/no-provisioner   Delete          WaitForFirstConsumer   false                  19h
    hpe-ssd-storage                   kubernetes.io/no-provisioner   Delete          WaitForFirstConsumer   false                  19h
    
  • If you are using a storage configuration other than HPE Ezmeral Data Fabric on Kubernetes, mark a Storage Class as default prior to Kubeflow installation.

    Use the following command to mark a Storage Class as default:

    kubectl patch storageclass <storage-class-name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

    For information on available storage configurations, see Storage.

  • MinIO can be configured to provide Kubeflow persistent volumes. For information, see Configuring External MinIO.

Kubeflow Components

See Support Matrixes.