This module creates an EKS cluster with Karpenter node controller.
| Name | Version |
|---|---|
| terraform | >= 1.3.2 |
| aws | >= 5.40 |
| helm | >= 2.7 |
| kubectl | >= 2.0 |
| Name | Version |
|---|---|
| aws | >= 5.40 |
| aws.us-east-1 | >= 5.40 |
| helm | >= 2.7 |
| kubectl | >= 2.0 |
| Name | Source | Version |
|---|---|---|
| eks | terraform-aws-modules/eks/aws | ~> 20 |
| eks_irsa | terraform-aws-modules/iam/aws//modules/iam-role-for-service-accounts-eks | ~> 5.3 |
| karpenter | terraform-aws-modules/eks/aws//modules/karpenter | ~> 20 |
| Name | Type |
|---|---|
| helm_release.karpenter | resource |
| kubectl_manifest.gp3_ext4_sc | resource |
| kubectl_manifest.karpenter_node_class | resource |
| kubectl_manifest.karpenter_node_pool | resource |
| aws_ecrpublic_authorization_token.token | data source |
| aws_partition.this | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| access_entries | Map of access entries to add to the cluster, https://github.com/terraform-aws-modules/terraform-aws-eks?tab=readme-ov-file#cluster-access-entry | any |
{} |
no |
| additional_tags | Additional tags for all resources | map(string) |
{} |
no |
| aws_mountpoint_s3 | Configuration for aws-mountpoint-s3-csi-driver addon | object({ |
null |
no |
| aws_region | AWS region | string |
n/a | yes |
| cluster_endpoint_public_access | EKS cluster public endpoint | bool |
false |
no |
| cluster_identity_providers | External Identity Providers, e.g Okta, AzureSSO, Google Auth | map(any) |
{} |
no |
| cluster_security_group_additional_rules | List of additional security group rules to add to the cluster security group created. Set source_node_security_group = true inside rules to set the node_security_group as source |
any |
{} |
no |
| cluster_version | EKS cluster version | string |
n/a | yes |
| create_cloudwatch_log_group | Create CloudWatch log group | bool |
false |
no |
| deployment_name | Deployment name | string |
"eks" |
no |
| enable_cluster_creator_admin_permissions | Indicates whether or not to add the cluster creator (the identity used by Terraform) as an administrator via access entry | bool |
false |
no |
| environment | Environment | string |
n/a | yes |
| on_demand_node_group_conf | On-demand node group configuration | object({ |
{} |
no |
| owner | Owner | string |
n/a | yes |
| stack | Installation stack | string |
n/a | yes |
| subnet_ids | List of subnet IDs | list(string) |
n/a | yes |
| team | Team name | string |
"devops" |
no |
| vpc_id | VPC ID | string |
n/a | yes |
| Name | Description |
|---|---|
| eks_cluster_certificate_authority_data | base64 EKS certificate authority data |
| eks_cluster_endpoint | EKS cluster endpoint |
| eks_cluster_id | EKS cluster ID |
| eks_oidc_provider_arn | EKS OIDC provider ARN |
| eks_security_group_id | EKS Worker nodes security group ID |