はじめに
ここまでの章で、AWSのネットワーク設計、セキュリティ、監視、コスト管理などを段階的に学んできました。本章では、それらの知識を使って実践的なクラウドアーキテクチャを構築・運用する演習に取り組みます。
以下の3つのプロジェクトを通して、インフラ自動化・サーバレス開発・ハイブリッド構成・セキュリティ統合のスキルを実際に体験しましょう:
- EC2 + RDS + S3 を CloudFormation で自動構築
- Lambda + API Gateway + S3 を使った静的ホスティング & API 開発
- オンプレミス接続(VPN)と Security Hub / GuardDuty 連携
プロジェクト①:EC2 + RDS + S3をCloudFormationで自動構築
構成概要
このプロジェクトでは、以下のリソースをCloudFormationテンプレートで一括構築します:
- パブリックサブネット上のEC2(Apache + PHP)
- プライベートサブネット上のRDS(MySQL)
- S3バケット(静的ファイル保存用)
主な設計ポイント
- RDSへの接続はSecurity Groupで限定
- S3バケットに静的ファイルをアップロード
- CloudFormationテンプレートは再利用可能な構成に
CloudFormationテンプレート(抜粋例)
"Resources": { "MyEC2Instance": { "Type": "AWS::EC2::Instance", "Properties": { "InstanceType": "t3.micro", "ImageId": "ami-xxxxxxxx", "SubnetId": { "Ref": "PublicSubnet" }, "SecurityGroupIds": [ { "Ref": "EC2SecurityGroup" } ] } }, "MyRDS": { "Type": "AWS::RDS::DBInstance", "Properties": { "Engine": "mysql", "DBInstanceClass": "db.t3.micro", "AllocatedStorage": 20, "MasterUsername": "admin", "MasterUserPassword": "password123!", "DBSubnetGroupName": { "Ref": "MyDBSubnetGroup" }, "VPCSecurityGroups": [ { "Ref": "RDSSecurityGroup" } ] } } }
CloudFormationを使うことで、インフラ構成をコードで管理・再現性の高い構築が可能になります。
プロジェクト②:Lambda + API Gateway + S3で静的ホスティング&API構築
構成概要
この構成では、S3で静的なWebフロントをホスティングし、バックエンドAPIをLambda + API Gatewayで構築します。
主な構成要素
- S3(静的HTML, JS, CSSホスティング + バケットポリシー設定)
- API Gateway(REST API + CORS対応)
- AWS Lambda(Node.jsまたはPython)
- DynamoDB or S3連携(データ保存)
Lambda関数(Node.js)例
exports.handler = async (event) => { const name = event.queryStringParameters?.name || "ゲスト"; return { statusCode: 200, headers: { "Content-Type": "application/json" }, body: JSON.stringify({ message: `こんにちは、${name}さん!` }) }; };
S3バケットポリシー(静的サイト用)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::my-static-site/*" } ] }
CI/CDを組み合わせれば、完全なフルマネージドのモダンWebアプリ環境も構築可能です。
プロジェクト③:オンプレ接続(VPN)とセキュリティ監視の統合
構成概要
このプロジェクトでは、オンプレミス環境との接続と、Security Hub/GuardDutyを活用したセキュリティ監視の統合を行います。
主な構成要素
- Site-to-Site VPN接続(仮想プライベートゲートウェイ + カスタマーゲートウェイ)
- Security Hub + GuardDuty のアラート収集
- EventBridge → SNS/Lambdaで自動対応
VPN構成イメージ
[オンプレミス環境] ⇅ VPN (IPSec) [カスタマーゲートウェイ] ⇅ [VPC + VGW (仮想プライベートゲートウェイ)]
セキュリティ連携例
GuardDutyで不審なIPからのSSHスキャンを検出 → EventBridgeでトリガー → Lambdaが該当インスタンスを停止 or SG変更、などの自動対応が可能です。
# EventBridgeルールでGuardDutyの「UnauthorizedAccess」イベントを検出 { "source": ["aws.guardduty"], "detail-type": ["GuardDuty Finding"], "detail": { "type": ["UnauthorizedAccess:EC2/SSHBruteForce"] } }
まとめ
この章では、これまで学んだAWS技術を総合的に活用する3つの実践プロジェクトに取り組みました。
- EC2 + RDS + S3:CloudFormationで構成管理
- Lambda + API Gateway + S3:サーバレスWebアプリ
- VPN + セキュリティ統合:ハイブリッド構成 + 自動対応
これらを通じて、実運用に即した構築・セキュリティ・コスト・監視の考慮点を体系的に理解できます。次章では、これらをCI/CDとIaCで継続的にデリバリーする方法に焦点を当てます。

