Skip to content

Latest commit

 

History

History

aws

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Reference architecture for a deployment with servers running in AWS Fargate.

Prerequisites

  • You must have a route53 public hosted zone, passed in via the zone_name. This is where the certificate verification records and the CNAME of the service_domain_name will be made.

Deploying

To run, make a my-deployment.tfvars file and put your inputs in to it.

region              = "us-west-2"
availability_zones  = ["us-west-2c", "us-west-2b", "us-west-2a"]
zone_name           = "test.example.com"
service_domain_name = "edgeproxy.test.example.xyz"

Then apply

terraform apply -var-file my-deployment.tfvars

Terraform

Requirements

Name Version
aws 4.5.0

Providers

Name Version
aws 4.5.0

Modules

Name Source Version
base-network cn-terraform/networking/aws n/a
ecs-fargate cn-terraform/ecs-fargate/aws 2.0.34

Resources

Name Type
aws_acm_certificate.this resource
aws_acm_certificate_validation.this resource
aws_cloudwatch_log_group.logs resource
aws_route53_record.example resource
aws_route53_record.service resource
aws_route53_zone.default data source

Inputs

Name Description Type Default Required
availability_zones list of AZes within the region to use. Must be at least 2, i.e ["us-west-2a", "us-west-2-b"] list(string) n/a yes
edgeproxy_image where to source the server image from string "ghcr.io/segator/edgeproxy" no
edgeproxy_tag the server image tag to use string "main" no
region AWS region to deploy this server any n/a yes
service_domain_name FQDN of our service. i.e. "edgeproxy.test.example.com" any n/a yes
zone_name domain name of the r53 zone records will go in, i.e. "test.example.com" any n/a yes

Outputs

Name Description
aws_lb_lb_dns_name n/a