terraform-aws-modules / terraform-aws-eks
git clone https://github.com/terraform-aws-modules/terraform-aws-eks.git
v21.29.0 · 15d ago
🔥 on GitHub Trending today
Terraform module to create Amazon Elastic Kubernetes (EKS) resources 🇺🇦
+0
stars, 24h · #57,732
+4
stars, 7 days · #22,472
+15
stars, 30 days · #26,712
5.0k
★ total · +0% this week
4.4k
forks · 5 open issues
Star history (as recorded here)
LanguageHCL
LicenseApache-2.0
Created2018-06-07 (8y ago)
Last push15d ago
Watchers95
OwnerOrganization
Seen on GitHub Trending
- 2026-10-23 — #2 daily in hcl
- 2026-10-23 — #2 monthly in hcl · +15 ★
- 2026-10-23 — #2 weekly in hcl · +4 ★
GitHub topics
Links
- GitHub: github.com/terraform-aws-modules/terraform-aws-eks
- Homepage: https://registry.terraform.io/modules/terraform-aws-modules/eks/aws
- Releases · Issues · Hacker News mentions
README excerpt
# AWS EKS Terraform module Terraform module which creates Amazon EKS (Kubernetes) resources ## Documentation - Frequently Asked Questions - Compute Resources - User Data - Network Connectivity - Upgrade Guides - Upgrade to v17.x - Upgrade to v18.x - Upgrade to v19.x - Upgrade to v20.x - Upgrade to v21.x ### External Documentation Please note that we strive to provide a comprehensive suite of documentation for __*configuring and utilizing the module(s)*__ defined here, and that documentation regarding EKS (including EKS managed node group, self managed node group, and Fargate profile) and/or Kubernetes features, usage, etc. are better left up to their respective sources: - AWS EKS Documentation - Kubernetes Documentation ## Usage ### EKS Auto Mode > [!CAUTION] > Due to the current EKS Auto Mode API, to disable EKS Auto Mode you will have to explicity set: > > [code] > > If you try to disable by simply removing the `compute_config` block, this will fail to disable EKS Auto Mode. Only after applying with `enabled = false` can you then remove the `compute_config` block from your configurations. [code] ### EKS Auto Mode - Custom Node Pools Only [code] ### EKS Provisioned Control Plane EKS Provisioned Control Plane allows you to provision a control plane with increased capacity for larger workloads. Valid tier values are `standard`, `tier-xl`, `tier-2xl`, `tier-4xl`, and `tier-8xl`. [code] ### EKS Managed Node Group [code] ### Cluster Access Entry When enabling `authentication_mode = "API_AND_CONFIG_MAP"`, EKS will automatically create an access entry for the IAM role(s) used by managed node group(s) and Fargate profile(s). There are no additional actions required by users. For self-managed node groups and the Karpenter sub-module, this project automatically adds the access entry on behalf of users so there are no additional actions required by users. On clusters that were created prior to cluster access management (CAM) support, there will be an existing access entry for the cluster creator. This was previously not visible when using `aws-auth` ConfigMap, but will become visible when access entry is enabled. [code] ### EKS Hybrid Nodes [code] ### Bootstrap Cluster Creator Admin Permissions Setting the `bootstrap_cluster_creator_admin_permissions` is a one time operation when the cluster is created; it cannot be modified later through the EKS API. In this project we are hardcoding this to `false`. If users wish to achieve the same functionality, we will do that through an access entry which can be enabled or disabled at any time of their choosing using the variable `enable_cluster_creator_admin_permissions` ### Enabling EFA Support When enabling EFA support via `enable_efa_support = true`, there are two locations this can be specified - one at the cluster level, and one at the node group level. Enabling at the cluster level will add the EFA required ingress/egress rules to the shared security group created for the node group(s). Enabl