Why It Fits
選ぶ理由
- 宣言的・マルチクラウド対応
- 巨大なプロバイダ網
- plan で変更を事前確認できる
Product Profile
HashiCorp / IaC(プロビジョニング)
インフラをコードで宣言的に構築する IaC ツール。多数のクラウド/サービスに対応し、状態管理で差分を適用する。
Specifications
Introducing
Decision Guide
採用する理由と、事前に受け入れるべきトレードオフを分けて確認します。
Why It Fits
Trade-offs
Deep Dive
Terraform は、インフラを設定ファイルで定義・管理する IaC(Infrastructure as Code)の定番ツールです。サーバやネットワーク、データベースといったクラウド上のリソースを、コードとして記述して構築できます。
「結局なに?」を一言でいえば、インフラ構成をコードで宣言し、その通りに作る仕組みです。手作業でコンソールを操作する代わりに、構成をファイルに残し、再現・変更管理ができます。
リソースは HCL という専用言語で宣言的に書きます。「何を作るか」を記述すると、Terraform が現状との差分を計算し、必要な作成・変更・削除を実行します。
resource "aws_instance" "web" {
ami = "ami-123456"
instance_type = "t3.micro"
}
管理対象の現状は「state(ステート)」というファイルで把握します。複数のクラウドやサービスに対応しており、プロバイダを切り替えて使えます。
クラウド上のリソースそのものを作り・管理したいときに向きます。適用前に変更内容(plan)を確認できるため、影響を見てから反映できます。
サーバの中身の設定やソフト導入は Ansible のような構成管理が担当で、Terraform は「土台となるインフラの構築」に主眼を置く役割分担になります。
Implementation View
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
クラウドインフラの構築
種別: IaC(プロビジョニング) / 提供元: HashiCorp / ライセンス: BSL(旧 MPL)
巨大なプロバイダ網
状態(state)管理に注意が要る
Best Fit