A reusable Terraform module to provision a public and scalable Amazon EKS cluster with required IAM roles (for cluster and nodes), managed node groups, networking configuration, and core Kubernetes addons.
Before using this module, ensure the following are installed:
- Terraform
- Configured AWS credentials to authenticate terraform with AWS using command -
aws configure - kubectl (optional, for cluster access)
git clone https://github.com/NashTech-Labs/EKS_Terraform_Module.gitcd EKSterraform initterraform planterraform applyType yes when prompted to create the infrastructure.
This module provisions:
- IAM roles and policies required for EKS cluster and nodes
- Amazon EKS cluster
- Managed node group
- VPC networking configuration
- Core EKS addons (VPC CNI, CoreDNS, kube-proxy)
After successful deployment:
aws eks update-kubeconfig --region <region> --name <cluster-name>
kubectl get nodesTo remove all created resources:
terraform destroy