We are going to explore how to provision an EKS Fargate cluster with Terraform, and how to setup an AWS ALB Ingress controller serving K8S pods hosted in private subnets
Article
| Name |
Version |
| aws |
3.75.2 |
| tls |
3.4.0 |
| Name |
Source |
Version |
| vpc |
github.com/obytes/terraform-aws-vpc.git |
v1.0.5 |
| Name |
Description |
Type |
Default |
Required |
| cidr_block |
The main CIDR block of the VPC |
string |
"172.19.0.0/18" |
no |
| cluster_ip_family |
The IP type of EKS Cluster |
string |
"ipv4" |
no |
| cluster_timeouts |
Create, update, and delete timeout configurations for the cluster |
map(string) |
{} |
no |
| create_acm_certificate |
Boolean, either to create a new ACM certificate or use existing one |
bool |
true |
no |
| create_ecr_repository |
Boolean, either to create a new ECR repository or use existing one |
bool |
true |
no |
| create_kms_key |
Boolean, either to create a new KMS key or use existing one |
bool |
true |
no |
| create_public_subnets |
A Boolean, for creating public subnets |
bool |
true |
no |
| domain |
Domain Name to issue ACM Certificate |
string |
"obytes.com" |
no |
| enable_dns_hostnames |
A Boolean to enable the dns hostname resolving |
bool |
true |
no |
| enable_internet_gateway |
A Boolean either to create an internet GW for the public reachability |
string |
true |
no |
| enable_nat_gateway |
A Boolean either to create a NAT GW in the VPC, used by the private subnets |
bool |
true |
no |
| environment |
The environment id where those resources will be created such as stag, production, qa |
string |
"stg" |
no |
| gh_branch |
GH Branch that will mapped to QA EKS Deployments |
string |
"main" |
no |
| kubernetes_cidr |
Configuration block with kubernetes network configuration for the cluster |
string |
"172.16.64.0/24" |
no |
| profile_name |
AWS Credentials profile name |
string |
n/a |
yes |
| project_name |
The Project name |
string |
"eks" |
no |
| region |
AWS Region name |
string |
"eu-west-1" |
no |
| single_nat_gateway |
A Boolean, either to create a single NAT GW for the VPC or to create a separate NAT GW for each AZ |
bool |
true |
no |