[x] Automate Infrastructure Provisionen with Cloudformation.
[x] Deploy a highly available architecture with a reliable 3-tier infrastructure that spans two availability zones.
[x] Managed network address translation (NAT) gateways to allow outbound internet access for resources in the private subnets.
[x] Dedicated custom network access control lists (ACLs) for each Availability Zone.
[x] single routing table for the public subnet, because the public subnets all use the same Internet gateway as the only route to communicate with the Internet.
[x] Dedicated custom network ACLs for each Availability Zone
[x] independent routing table for each private subnet configured to control the flow of traffic within and outside the VPC.
[x] capacity for adding subnets to support your environment as it grows.
[x] VPC gateway endpoint for Amazon Simple Storage Service (Amazon S3). This endpoint provides a secure, reliable connection to Amazon S3
[x] A layered architecture organizes stacks into multiple horizontal layers that build on top of one another.
[x] Include various basic AWS infrastructure services such as SSM / Endpoints / NAT Gateway / Security Groups / NACL / Flow Log / EFS / EC2 / Load Balancer / S3 Bucket
[x] Built according to AWS best practices and the AWS Well-Architected Framework.
[x] Build flexible CloudFormation templates with detailed code comments and a cheat sheet to explain the CloudFormation code used.
[x] Integrate Roger's monitoring solution into my AWS infrastructure and provision various services for monitoring.
[x] Use a version control system such as CodeCommit or GitHub to track changes to templates.