- Consists of a VPC -----> 10.0.0.0/16
- Consists of Two public subnets
- Public subnet 1 ------> 10.0.0.0/24
- Public subnet 2 ------> 10.0.1.0/24
- Consists of Two private subnets
- Private subnet 1 -----> 10.0.2.0/24
- Private subnet 2 -----> 10.0.3.0/24
- An Internet Gateway to the the VPC
- A public route point to 0.0.0.0/0 attached to the Internet Gateway
- Route table associations
- NAT Gateway and NAT Gateway attachments
- Application load balancer (ALB) components
- ALB security group
- ALB attachment to IGW
- Target group
- ECS Cluster
- Cluster security group
- Autoscaling Role (Autoscaling role to verify the instance frequently and set u the autoscaling as required)
- aws-cicd-demo-asg-role
- EC2 Role (For the EC2 instances to run ECS agent and register instances to ECS)
- aws-cicd-ec2-role
- Task Execution Role ( Task execution role to pull images from ECR, push logs to CloudWatch)
- ECS Role (For ECS cluster to manage AWS resources)
- aws-cicd-demo-ecs-role
Deploy an ECS service on AWS Fargate
- Service name ----> aws-cicd-demo-service
- Setup default Image from Dockerhub
- Specify container attributes
- Specify service count
- Create service resources
- Log group for logs
- Task definition
- Service
- Target group
- Load balancer