Terraform sample code to create Amazon EKS.
Set environment variable AWS_ACCESS_KEY_ID
, AWS_SECRET_ACCESS_KEY
, and AWS_DEFAULT_REGION
.
$ direnv edit . # direnv is not required
export AWS_ACCESS_KEY_ID=AKIAXXXXXXXXXXXXXXXXXX
export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXX
export AWS_REGION=us-east-1
Modify S3 bucket settings for remote state on terraform.tf
.
terraform {
required_version = "0.12.26"
backend "s3" {
bucket = "my-awesome-app-tfstate" # Enter your bucket name
key = "us-east-1/dev/terraform.tfstate"
region = "us-east-1"
}
}
Modify your source ip addresses for cluster endpoint access control on variables.tf
.
variable "eks_public_access_cidrs" {
type = list
default = ["54.XX.XX.XX/32"] # Enter your source ip
}
Install Terraform binary use tfenv and execute terraform init
.
$ tfenv install
$ terraform init
$ terraform plan
$ terraform apply
$ aws eks update-kubeconfig --name dev-app
See document bellow:
Managing users or IAM roles for your cluster - Amazon EKS
$ terraform destroy