1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CloudFormationを使うべきケースは?Terraformとの比較とYes/Noで分かる選定基準

Posted at

📌 概要

AWSでインフラをコードとして管理する方法(IaC: Infrastructure as Code)には大きく分けて以下の2つがあります。

  • Terraform(HashiCorp社製のオープンソース)
  • AWS CloudFormation(AWS純正サービス)

どちらもIaCを実現できますが、思想・適用範囲・運用体験に違いがあります。
この記事では以下を整理します。

  • TerraformとCloudFormationの違い
  • CloudFormationを選ぶべきケース
  • 観点ごとの評価比較(業務規模・スピード感・スキル汎用性)
  • Yes/Noで即決できるサポート図

1. TerraformとCloudFormationの違い

項目 Terraform CloudFormation
開発元 HashiCorp(OSS) AWS
対応範囲 マルチクラウド(AWS, Azure, GCP, ほか多数) AWS専用
言語/定義 HCL (HashiCorp Configuration Language) JSON / YAML
リソース対応スピード 新サービスの対応はやや遅れることも AWS新サービスに最速対応
状態管理 tfstateファイルで管理(S3, DynamoDBロック推奨) AWS側で自動管理(スタック)
拡張性 プラグイン・モジュール豊富 AWS専用のカスタムリソースで拡張
学習コスト HCL習得必要、直感的に書きやすい YAML/JSONベース、複雑になりがち
エコシステム OSSモジュール、コミュニティ活発 AWS公式ドキュメント中心

2. CloudFormationを選ぶべきケース

Terraformが汎用的で便利とはいえ、CloudFormationが有利なケースも存在します。

  • AWS専用で閉じた運用
  • 新サービスを即利用(TerraformのProvider対応待ちを避けたい)
  • 状態管理をAWSに委ねたい(tfstate不要)
  • AWS CDK/SAM/StackSetsと統合したい

3. 観点ごとの評価比較

(1) 業務規模

  • 小規模・AWS専用 → CloudFormationで十分
  • 中〜大規模・マルチクラウドや将来的な拡張 → Terraformが有利

(2) スピード感

  • 新サービスを即試したい → CloudFormation
  • モジュール化・再利用・CI/CD統合 → Terraform

(3) スキル汎用性

  • Terraform

    • AWS以外でも使える
    • 転職市場や他社案件でも有利
  • CloudFormation

    • AWS専用スキルの習熟には有効
    • 他クラウドには転用不可

4. 図解で理解する

アーキテクチャ的な位置づけ

Terraformは「マルチクラウド制御レイヤー」、CloudFormationは「AWS専用の純正制御レイヤー」というイメージです。

5. Yes/Noで判断できるサポート図

フローチャート版

6. まとめ

  • Terraform

    • マルチクラウド時代に強い
    • スキル汎用性・再利用性・CI/CD統合が優秀
  • CloudFormation

    • AWS専用に特化
    • 最新サービス対応や状態管理の容易さが強み

👉 結論:

  • 「AWS専用・短期集中型」 → CloudFormation
  • 「長期拡張・マルチクラウド・スキル汎用性」 → Terraform

7. 筆者の考え

個人的には、どちらか一方に偏るよりも 両方をまんべんなく理解しておくのが一番安心だと思っています。

特に転職市場やキャリア形成を考えると、Terraformをメインにハンズオン経験を積んでおくことが多くの企業にマッチする近道です。
そのうえで CloudFormation の基礎も押さえておけば、AWS特化の現場にもすんなり対応できます。

結局のところ、

  • Terraformで幅広さ
  • CloudFormationでAWSの深さ
    を押さえておくと、将来の選択肢が一気に広がるのかなと感じています。
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?