• Skip to main content
  • Skip to primary sidebar

bloggggggggggggggg

// コードと趣味の境界線上

Terraformでインフラをコード化 — 「ポチポチ」からの卒業

AWSのマネジメントコンソールでEC2を作って、セキュリティグループを設定して、ELBに紐付けて…。手動でやると15分。でも環境が3つ(dev/stg/prod)になったら45分。さらに東京とバージニアでやったら倍。もうやってられない。

Terraform(HashiCorp)は、HCLという宣言的言語でインフラを定義するツール。「このVPCがあって、このサブネットがあって、このEC2があって…」とコードに書く。`terraform apply`一発で全リソースが構築される。

Terraformの基本概念:

  • Provider — AWS、GCP、Azure、Cloudflare…何でも対応。各クラウドのAPIを抽象化してくれる。
  • Resource — 作るもの。`aws_instance`とか`aws_s3_bucket`とか。
  • State(tfstate) — 今のインフラ状態を記録するファイル。これを元に差分(変更点)だけ適用する。S3で共有管理が鉄則。
  • Plan — `terraform plan`で「これからこんな変更が入ります」を事前確認。意図しない削除がないかチェックできる。

僕のTerraform構成のベストプラクティス:

terraform/
  environments/
    dev/
      main.tf        # 環境ごとの設定
      terraform.tfvars  # 変数値(インスタンスサイズ等)
    stg/
    prod/
  modules/
    vpc/             # 再利用可能なモジュール
    ecs/
    rds/

注意点。tfstateは絶対にGitにコミットするな。機密情報が含まれるし、複数人で同時に編集するとコンフリクトする。S3バックエンド + DynamoDBで状態ロックがベスト。

Terraformを覚えると、インフラ構築が「コードレビューできるもの」に変わる。もう誰も手動でコンソールをポチポチしなくなる。これがInfrastructure as Codeの真価だ。

← CI/CDパイプラインの組み方 — 自動化の連鎖が生む開発速度
Ansibleで構成管理を自動化する — サーバー設定をコードに →

Primary Sidebar

最近の投稿

  • インフラエンジニアのキャリアパス — 手動運用からSREへ
  • 障害対応の心得 — 本番で焦らないために
  • 監視設計の基本 — 何をどう見るべきか
  • ログ管理 — ELKスタック入門
  • HTTPSと証明書管理 — Let’s Encryptの恩恵を最大限に

アーカイブ

  • May 2026

カテゴリー

  • AI
  • Linux
  • OS
  • Windows
  • インフラ・DevOps
  • おうちサーバー
  • サーバー・インフラ
  • ツール・環境
  • プログラミング
  • 未分類
  • 開発哲学

最近のコメント

No comments to show.

© 横山鉄工所 & まめたろう重工