🗂
【超入門】AWS CloudFormationって何?ゼロから始めるIaC
【超入門】AWS CloudFormationって何?ゼロから始めるIaC
こんにちは、クラウドエンジニアのtomoです。
本記事では、AWSのインフラ構築自動化ツール「CloudFormation」の基本について、まったくの初心者向けに解説します!
☁️ CloudFormationとは?
AWSのリソース(EC2、VPC、S3など)をテンプレート(YAML/JSON)で記述し、自動的に構築・管理できるサービスです。
いわゆる 「Infrastructure as Code(IaC)」 を実現する代表的なAWS純正ツールです。
🔧 なぜCloudFormationを使うのか?
- ✅ 手作業による設定ミスを防げる
- ✅ 同じ構成を再現性高く何度でも作れる
- ✅ Gitなどで構成管理ができる
- ✅ 他のAWSサービス(CodePipelineなど)と連携しやすい
📘 CloudFormationでできること
CloudFormationでできる代表的なことは以下の通りです:
- ネットワーク構築(VPC / サブネット / IGW など)
- コンピュートリソースの作成(EC2 / AutoScaling / ELB)
- ストレージ(S3 / EBS / EFS)
- IAMポリシーやロールの定義
- CloudWatchなど監視系リソースの作成
✍ ざっくりテンプレートの書き方(YAML)
AWSTemplateFormatVersion: '2010-09-09'
Description: My first CloudFormation template
Resources:
MyBucket:
Type: AWS::S3::Bucket
このテンプレートは、S3バケットを1つ作成するだけのシンプルな例です。
💡 CloudFormationのメリットとデメリット
メリット
-
AWSとの親和性が高い
-
マネジメントコンソールからすぐに使える
-
組織での標準化に向いている
デメリット
-
他クラウド(Azure/GCP)には使えない
-
Terraformと比べて記述が冗長になりがち
-
依存関係や更新時の扱いに注意が必要
🔰 初心者がまずやるべきこと
-
AWSアカウント作成(済みの方はスキップ)
-
CloudFormationテンプレートを触ってみる
-
AWS::S3::Bucket など簡単なリソースから始める
-
できればGitHubなどでテンプレートを管理する
📎 まとめ
-
CloudFormationはAWSのリソースをコードで管理できるIaCツール
-
YAMLまたはJSONでテンプレートを記述
-
小さなテンプレートから触って慣れるのが大事
▶ 次回予告
次回は、実際にVPCとEC2をCloudFormationで構築するテンプレートをステップバイステップで解説します!
読んでいただきありがとうございました 🙌
よければフォロー&スキもお願いします!
Discussion