This project contains a full terra node provisioned and configured using terraform on top of AWS.
- Terraform version: v1.1.8
- An AWS account
- Configure an AWS profile in your terminal
- Create a bucket that will contains the tfstate and logs of the load balancer.
aws s3 mb <BUCKET_NAME>
- Add this policy to the bucket to give the load balancer the right to put the access logs:
- Change the
terraform.tfvars
files with the suitable variables
This is the design of the solution needs.
terraform init
terraform plan
terraform deploy
You can use gitlab ci/cd in order to deploy the project or also github workflows.
- Challenge the use of ALB instead of NLB
- Evalute the use of an ansible playbook to configure the node instead of bash script
- Finish the ci/cd pipeline of provisioning
- Alerting using Cloudwatch and SNS needs to be completed
- sync script health check