sigs.k8s.io/cluster-api-provider-aws@v1.5.5/docs/book/src/topics/eks/enabling.md (about)

     1  # Enabling EKS Support
     2  
     3  Support for EKS is enabled by default when you use the AWS infrastructure provider. For example:
     4  
     5  ```shell
     6  clusterctl init --infrastructure aws
     7  ```
     8  
     9  ## Enabling optional **EKS** features
    10  
    11  There are additional EKS experimental features that are disabled by default. The sections below cover how to enable these features.
    12  
    13  ### Machine Pools
    14  
    15  To enable support for machine pools the **MachinePool** feature flag must be set to to **true**. This can be done using the **EXP_MACHINE_POOL** environment variable:
    16  
    17  ```shell
    18  export EXP_MACHINE_POOL=true
    19  clusterctl init --infrastructure aws
    20  ```
    21  
    22  See the [machine pool documentation](../machinepools.md) for further information.
    23  
    24  NOTE: you will need to enable the creation of the default IAM role. The easiest way is using `clusterawsadm`, for instructions see the [prerequisites](../using-clusterawsadm-to-fulfill-prerequisites.md).
    25  
    26  ### IAM Roles Per Cluster
    27  
    28  By default EKS clusters will use the same IAM roles (i.e. control plane, node group roles). There is a feature that allows each cluster to have its own IAM roles. This is done by enabling the **EKSEnableIAM** feature flag. This can be done before running `clusterctl init` by using the the **CAPA_EKS_IAM** environment variable:
    29  
    30  ```shell
    31  export CAPA_EKS_IAM=true
    32  clusterctl init --infrastructure aws
    33  ```
    34  
    35  NOTE: you will need the correct prerequisities for this. The easiest way is using `clusterawsadm` and setting `iamRoleCreation` to true, for instructions see the [prerequisites](../using-clusterawsadm-to-fulfill-prerequisites.md).
    36  
    37  ### Additional Control Plane Roles
    38  
    39  You can add additional roles to the control plane role that is created for an EKS cluster. To use this you must enable the **EKSAllowAddRoles** feature flag. This can be done before running `clusterctl init` by using the **CAPA_EKS_ADD_ROLES** environment variable:
    40  
    41  ```shell
    42  export CAPA_EKS_IAM=true
    43  export CAPA_EKS_ADD_ROLES=true
    44  clusterctl init --infrastructure aws
    45  ```
    46  
    47  NOTE: to use this feature you must also enable the **CAPA_EKS_IAM** feature.
    48  
    49  ### EKS Fargate Profiles
    50  
    51  You can use Fargate Profiles with EKS. To use this you must enable the **EKSFargate** feature flag. This can be done before running `clusterctl init` by using the **EXP_EKS_FARGATE** environmnet variable:
    52  
    53  ```shell
    54  export EXP_EKS_FARGATE=true
    55  clusterctl init --infrastructure aws
    56  ```
    57  
    58  NOTE: you will need to enable the creation of the default Fargate IAM role. The easiest way is using `clusterawsadm` and using the `fargate` configuration option, for instructions see the [prerequisites](../using-clusterawsadm-to-fulfill-prerequisites.md).