目次
1. 結論
AWS CloudFormationは、「インフラの設計図(テンプレート)」を管理するサービスです。手動でコンソールをポチポチ操作するのではなく、コードを書くことでインフラを構築します。これにより、「誰が作っても同じ環境ができる」「修正履歴が残る」「不要になったら一括削除できる」という、運用の規律とスピードをもたらします。
2. SAAで出やすいポイント
- 再現性と一貫性: 複数のリージョンやアカウントに全く同じ構成をミスなくデプロイできる。
- スタック管理: 関連するリソース(EC2, RDS, VPCなど)を「スタック」という単位で一括管理し、作成・更新・削除をまとめて行える。
- ドリフト検出: テンプレートで定義した状態と、実際のAWSリソースの状態にズレ(手動変更など)がないかをチェックできる。
- チェンジセット: 変更を適用する前に、どのリソースが追加・変更・削除されるかプレビューを確認できる。
- 削除ポリシー (DeletionPolicy): スタック削除時に、大事なデータ(RDSなど)を削除せず保持したりスナップショットを撮ったりする設定。
3. キーワードでの判断
| 問題文のキーワード | 疑うべきサービス/機能 | 判断理由 |
|---|---|---|
| 「インフラのプロビジョニングを自動化」 | CloudFormation | IaCの代表サービス |
| 「別リージョンに同じ環境を迅速に構築」 | テンプレートの再利用 | 手動構築を避けるため |
| 「リソースの変更前に影響を確認」 | チェンジセット | 安全なデプロイのため |
4. ひっかけポイント
- Elastic Beanstalkとの違い:
- Beanstalkは「アプリのコードを上げればインフラも勝手に作ってくれる」パター。
- CloudFormationは「インフラそのものを細かく定義する」ツール。
- 既存リソースの取り込み: 既に手動で作ったリソースをCloudFormationの管理下に入れるには「リソースのインポート」作業が必要(自動では入らない)。
5. 覚え方
- 「プレモデルの組み立て説明書」。
- 説明書(テンプレート)があれば、誰でも同じ完成品(スタック)を作れる。
6. 関連サービス
| サービス名 | 関連する理由 |
|---|---|
| AWS CDK | プログラミング言語で記述し、最終的にCloudFormationテンプレートを生成する。 |
| Service Catalog | CloudFormationで承認済みテンプレートを公開し、ユーザーがセルフサービスで構築できる。 |
| Systems Manager | 構築後のOS設定やパッチ適用などはSSMが担当する。 |
7. Obsidian管理メモ
- 復習ポイント: スタックセット(StackSets)を利用すると、複数のAWSアカウントや複数のリージョンに対して一括でスタックをデプロイできる点も重要。
- 関連ノート: IaCと比較ツール
8. HTMLファイル名
aws-cloudformation-infrastructure-as-code.html