メインコンテンツまでスキップ

AWS 実践ガイド: タスク管理 SaaS を Terraform で本番構築する

この連載の検証環境と検証水準

本連載の Terraform コードは、執筆時点 (2026 年 7 月) の Terraform v1.13.5AWS provider v6.53.0terraform fmtterraform validate を通しています。validate が保証するのは構文と provider スキーマとの整合までで、実際に AWS へ apply した結果は保証しません。apply を伴う手順は AWS と HashiCorp の公式ドキュメントに基づいて記述し、各章で出典を示します。AWS の仕様値 (制約、既定値) も執筆時点の情報です。

本連載は、架空のタスク管理 SaaS「Tasuku」の本番環境を題材に、AWS の主要 7 サービスの設計と Terraform 実装を章ごとに積み上げる入門から実践までのガイドです。扱う 7 サービスは VPC、Route 53、S3、ALB、ECS、RDS、IAM です。構成上欠かせない ECR、ACM、CloudWatch Logs、Secrets Manager も、使う章の中で扱います。

章の並びは解説の都合ではなく、実際にインフラを構築する依存関係の順です。第 2 章で Terraform の最小構成から始め、章が進むごとに同じコードベースへリソースを足していき、第 10 章でアプリケーションが公開され、第 11 章で環境分離、第 12 章で運用の締めくくりまで到達します。

想定読者

  • Web アプリケーションの開発経験はあるが、AWS の本番環境をゼロから設計した経験がない方
  • コンソール操作で AWS に触れたことはあるが、Terraform でコード管理する方法を知りたい方
  • ECS や RDS の個別記事を読んだことはあるが、サービス間のつながり (ネットワーク、権限、名前解決) を一気通貫で追いたい方

AWS アカウントの作成手順そのものは扱いません。IAM の権限モデルや VPC のネットワーク概念は前提とせず、各章の冒頭で概念から説明します。

完成形

最終的に次の構成ができあがります。ユーザーのリクエストは Route 53 で名前解決され、ALB で HTTPS を終端し、プライベートサブネットの ECS (Fargate) へ届きます。データは RDS (PostgreSQL) と S3 に保存されます。

連載構成

テーマ概要
01. 全体像要件と設計図題材 Tasuku の要件定義、7 サービスの役割分担、構築順序の考え方
02. Terraform 基礎IaC の出発点HCL の最小文法、state の概念、最初の apply で予算アラートを作る
03. IAM権限モデルポリシー JSON の読み書き、ロールと信頼ポリシー、Terraform 実行権限の現実解
04. VPCネットワークCIDR 設計、2 AZ とサブネット 3 層、NAT Gateway のコスト判断
05. S3オブジェクトストレージバケット設計原則、tfstate 管理の定石、添付ファイルバケット
06. ALB入口L7 ロードバランサーの概念、アクセスログ、まず HTTP で公開する
07. Route 53 と ACM名前と証明書DNS 委任、証明書の DNS 検証、HTTPS 化と独自ドメイン公開
08. ECS 前編コンテナ基盤ECR、クラスタ、タスク定義、2 種類の IAMロール、ログ設計
09. RDSデータベースサブネットグループ、Secrets Manager 統合、Multi-AZ とセキュリティグループチェーンの完成
10. ECS 後編サービス公開web と api の 2 サービス、秘密情報の注入、Auto Scaling
11. デプロイ標準化・環境分離疎通確認と環境分離E2E 疎通チェックリスト、ECS デプロイの標準手順、module 化と envs/dev,prod 構成へのリファクタ
12. 総仕上げ課金構造と終わり方課金構造の地図、削減定石、安全な destroy 手順、次の一歩

読み進め方

  • 通読する場合: 章順そのままが構築順です。第 2 章以降は前章までのコードに積み上げるため、順番どおりに読むことを想定しています
  • 概念だけ知りたい場合: 各章の前半 (役割と概念、設計判断) だけを拾い読みできます。Terraform 実装の節は独立しています
  • 特定サービスだけ知りたい場合: 各章冒頭の構築順序図(現在の章をオレンジ色で示す)で、そのサービスが全体のどこに位置するかを確認してから読み始められます
費用に関する注意

本連載の構成には、作成した時点から時間課金が始まるリソース (NAT Gateway、ALB、RDS など) が含まれます。課金の始まる章の一部ではその旨を明示しており、第 2 章では最初のリソースとして予算アラートを作成します。連載全体の課金ディメンションは第 12 章でまとめて振り返ります。料金の具体額は改定されるため本文には書きません。試す場合は必ず AWS の料金ページで現行の料金を確認し、使い終わったリソースは削除してください。

それでは、第 1 章: 全体像から始めます。