Enabling ClusterClass

In this section we cover enabling ClusterClass for a CAPI Provider.

Before using ClusterClass, study the provider docs and confirm that the feature is supported. This documentation includes a matrix in the Certified providers section with cluster topology support status.

Enable ClusterClass

To use ClusterClass it needs to be enabled for core Cluster API and any provider that supports it. This is done by setting the CLUSTER_TOPOLOGY variable to true.

The SUSE® Rancher Prime Cluster API Helm chart will automatically enable the feature when installing CAPI. However, when enabling additional providers, ensure CLUSTER_TOPOLOGY is set in the provider configuration. Turtles' CAPIProvider resource supports passing installation parameters to the provider via variables as follows:

apiVersion: turtles-capi.cattle.io/v1alpha1
kind: CAPIProvider
metadata:
  name: azure
  namespace: capz-system
spec:
  type: infrastructure
  name: azure
  configSecret:
    name: azure-variables
  variables:
    CLUSTER_TOPOLOGY: "true"
    EXP_CLUSTER_RESOURCE_SET: "true"
    EXP_MACHINE_POOL: "true"
    EXP_AKS_RESOURCE_HEALTH: "true"

The resource defined in this yaml file will install CAPZ with support for a number of features, including CLUSTER_TOPOLOGY.