🗂

【超入門】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と比べて記述が冗長になりがち

  • 依存関係や更新時の扱いに注意が必要


🔰 初心者がまずやるべきこと

  1. AWSアカウント作成(済みの方はスキップ)

  2. CloudFormationテンプレートを触ってみる

  3. AWS::S3::Bucket など簡単なリソースから始める

  4. できればGitHubなどでテンプレートを管理する


📎 まとめ

  • CloudFormationはAWSのリソースをコードで管理できるIaCツール

  • YAMLまたはJSONでテンプレートを記述

  • 小さなテンプレートから触って慣れるのが大事


▶ 次回予告

次回は、実際にVPCとEC2をCloudFormationで構築するテンプレートをステップバイステップで解説します!


読んでいただきありがとうございました 🙌
よければフォロー&スキもお願いします!


Discussion