ALB: Layer 7 Load Balancer Basics and Your First HTTP Release
This chapter covers the role of the ALB and its three components — listeners, target groups, and health checks — the design decision to release with HTTP only for now, and the implementation of the ALB security group and the S3 bucket for access logs.
ECS Part 1: Building a Container Runtime Foundation with Fargate
Organizes the relationships among ECS clusters, task definitions, tasks, and services, and builds the execution role and task role needed to run containers under the Fargate launch type, along with an ECR repository and log collection via CloudWatch Logs. Verifies that the foundation works using a one-off run-task.
ECS Part 2: Publishing the web/api Services and Auto Scaling
This chapter completes the ECS service setup left unfinished in Chapter 8. We publish the web and api services behind the ALB using host-based routing, and cover everything from DB connection info injection via Secrets Manager and added S3 access permissions to rolling updates with a circuit breaker and Auto Scaling.
IAM: Policy JSON Syntax and a Practical Approach to Terraform Execution Permissions
Learn the syntax and evaluation order of IAM policy JSON and the relationship between roles and trust policies, then create a dedicated IAM user and group for Terraform execution to move off administrator-equivalent credentials.
Infrastructure and operations
A domain that collects notes on building and operating infrastructure, such as Docker, AWS, Terraform, and CI/CD. The Practical AWS Guide series is being published.
Mapping the Billing Structure and a Safe Ending: Cost Overview and Teardown Procedure
This is the final chapter of the series. It brings together the cost information scattered across earlier chapters into a single map and shows cost-reduction patterns for the development environment. It then covers the teardown procedure for safely ending the learning infrastructure, along with the next steps left out of scope for this series.
Overview: Requirements and Architecture for the Task Management SaaS "Tasuku"
Defines the functional and non-functional requirements for the fictional task management SaaS "Tasuku" used throughout this series, and explains the overall architecture built with VPC, Route 53, S3, ALB, ECS, RDS, and IAM, along with the build order based on resource dependencies.
Practical AWS Guide: Building a Task Management SaaS in Production with Terraform
This is the top page of a series that designs and builds, with Terraform, the production environment of the fictional task management SaaS "Tasuku," centered on seven AWS services: VPC, Route 53, S3, ALB, ECS, RDS, and IAM.
RDS: Design Decisions for Managed PostgreSQL and Completing the Security Group Chain
This chapter organizes the operational tasks RDS handles as a managed service versus the design decisions Tasuku owns, covering instance class, storage, and Multi-AZ selection, master password integration with Secrets Manager, and completing the security group chain. It closes with a connectivity check using run-task and psql.
Route 53 and ACM: Publishing a Custom Domain with DNS Delegation and HTTPS
Covers the basics of Route 53 hosted zones and DNS delegation, how ACM's DNS validation works, adding a port 443 listener, and redirecting port 80 to HTTPS.
S3: Bucket Design and Best Practices for Managing tfstate
This chapter covers the four principles of S3 bucket design, the chicken-and-egg problem that arises when moving Terraform state to S3, implementing the bucket for attachments, and the path for S3 access through a VPC endpoint.
Standardizing Deployment and Separating Environments: From Connectivity Checks to a module + envs Structure
We run an end-to-end connectivity check on the Tasuku infrastructure built through Chapter 10, and standardize the ECS deployment tag strategy. We then refactor the Terraform code from a single-environment flat structure into a module + envs/dev,prod structure.
Terraform Basics: Minimal HCL Syntax and Your First Apply
With a minimal Terraform configuration, learn HCL syntax, provider version pinning, and the concept of state, and create an AWS Budgets budget alert as your first apply.
VPC: CIDR Design and Cost Trade-offs for a 2-AZ, 3-Tier Network
Covers VPC CIDR design, a 3-tier subnet layout spanning two Availability Zones, and the cost trade-offs of redundant NAT Gateways.