#Terraform

48 件の記事

Terraform Associate 004 #5 state 管理 — バックエンド、ロック、state コマンド、機密情報
読了 4分

Terraform Associate 004 #5 state 管理 — バックエンド、ロック、state コマンド、機密情報

state の目的とデフォルトのファイル位置から、ローカルとリモートバックエンドの違い、ロックが防ぐ事故と force-unlock の位置づけを試験の観点で整理します。state list、show、mv、rm の各コマンドが何を変えて何を残すのか、moved、removed、import ブロックとの対応、そして state の中の機密情報とアクセス制御まで、出題ポイントを固めます。

Terraform Associate 004 #4 コアワークフロー — init・plan・apply・destroy とデバッグ
読了 5分

Terraform Associate 004 #4 コアワークフロー — init・plan・apply・destroy とデバッグ

Write、Plan、Apply という試験公式ワークフローの 3 段階と各コマンドの役割、init を再実行すべき 4 つの状況を整理します。plan の -out 保存、apply の -auto-approve と -replace、-target の危険性といったオプションの出題ポイント、fmt と validate の役割の区別、そして TF_LOG 環境変数でデバッグログを有効にする方法まで固めます。

Terraform Associate 004 #3 Terraform の基本 — バージョン制約、ロックファイル、provider 設定
読了 4分

Terraform Associate 004 #3 Terraform の基本 — バージョン制約、ロックファイル、provider 設定

インストール方法と terraform version での確認から始めて、試験が特に好むバージョン制約演算子(=、~>、>=)の読み方、required_providers ブロックと .terraform.lock.hcl ロックファイルの役割の区別を整理します。provider の設定と alias によるマルチリージョン構成、そして .terraform ディレクトリに何が入るのかまで、試験目標 3 の出題ポイントを固めます。

Terraform Associate 004 #2 IaC の概念と Terraform の目的 — 定義問題の攻略
読了 5分

Terraform Associate 004 #2 IaC の概念と Terraform の目的 — 定義問題の攻略

IaC の定義と利点を試験が求める言い回しで整理し、宣言型と命令型の区別、冪等性の概念を問題を解く観点から固めます。マルチクラウドと provider エコシステムにおける Terraform の位置、state が存在する理由、そして Terraform の言語とバイナリの構造まで、試験目標 1 と 2 の出題ポイントをひととおり押さえます。

Terraform Associate 004 #1 試験の紹介 — 004 改定の内容、ドメイン構成、学習戦略
読了 4分

Terraform Associate 004 #1 試験の紹介 — 004 改定の内容、ドメイン構成、学習戦略

HashiCorp Terraform Associate 資格の 2026 年 1 月の 004 改定を基準に、試験の形式と 003 からの変更点を整理します。新しく出題範囲になった ephemeral・write-only と HCP Terraform の拡大、ドメインごとの出題範囲、そしてこのブログの Terraform トラック 26 本と試験目標のマッピング表まで作って、学習の道筋を立てます。

terraform.tfstate を消してしまったときの復旧 — バックアップファイル、S3 バージョニング、再 import の順で
読了 5分

terraform.tfstate を消してしまったときの復旧 — バックアップファイル、S3 バージョニング、再 import の順で

state ファイルが消えたときに現れる症状と、そのまま apply してはいけない理由から整理します。ローカルの terraform.tfstate.backup の確認、S3 バージョニングから以前のバージョンを復元するコマンド、バックアップが何もないときに import で state を再構築する最後のルートまで優先順位どおりに扱い、同じ事故を構造的に防ぐバックエンド設定をまとめます。

terraform import のやり方 — import ブロックで既存リソースをコードに取り込む
読了 5分

terraform import のやり方 — import ブロックで既存リソースをコードに取り込む

コンソールで作ったリソースを Terraform 管理下に取り込む手順を、import ブロック基準で整理します。リソースごとの import ID を探す場所、-generate-config-out でコードの下書きを生成する方法、plan が変更なしになるまでコードを実際に合わせるコツ、旧 CLI コマンド方式との違いと、複数リソースを一度に取り込むときの順序まで扱います。

terraform state lock エラーの解決 — 原因の確認と force-unlock の判断基準
読了 4分

terraform state lock エラーの解決 — 原因の確認と force-unlock の判断基準

Error acquiring the state lock エラーの Lock Info の読み方から整理します。同僚や CI が実行中という正常な状況と、異常終了でロックだけが残った状況を見分ける確認手順、force-unlock を使ってよい条件と誤って使うと state が壊れる理由、DynamoDB ロック方式の場合の確認場所と再発防止の設定まで扱います。

Terraform 運用 #7 OpenTofu とライセンス — BSL 転換、IBM による買収、選択基準
読了 6分

Terraform 運用 #7 OpenTofu とライセンス — BSL 転換、IBM による買収、選択基準

2023 年の BSL ライセンス転換と OpenTofu フォークの経緯から、CNCF への採択と IBM による HashiCorp 買収まで続いた勢力図の変化を時系列で整理します。BSL が実際に禁止していることと大半のユーザーには無関係な理由、2 つのツールの機能分岐の現状、組織の状況別の選択基準と移行時の確認事項を扱い、Associate 資格の案内とあわせて Terraform トラック全体を締めくくります。

Terraform 運用 #6 実行プラットフォーム比較 — 素の CI、HCP Terraform、Atlantis、Spacelift
読了 4分

Terraform 運用 #6 実行プラットフォーム比較 — 素の CI、HCP Terraform、Atlantis、Spacelift

自作した GitHub Actions ワークフローがどこまで持ちこたえ、どこから苦しくなるのかを基準に、マネージドの HCP Terraform、セルフホスト OSS の Atlantis、商用専門プラットフォームの Spacelift 系を比較します。ポリシーのコード化、RBAC、実行履歴の可視化といったプラットフォームの付加価値と料金構造を確認し、チーム規模ごとの選択基準を整理します。

Terraform 運用 #5 大規模の構造化 — スタック分割の基準、スタック間参照、Terragrunt 導入のタイミング
読了 6分

Terraform 運用 #5 大規模の構造化 — スタック分割の基準、スタック間参照、Terragrunt 導入のタイミング

1 つの state が大きくなると生まれる plan の遅延、ブラスト半径、チーム間のロック競合という問題を整理し、変更頻度、寿命、所有チームを基準にスタックを分割する方法を説明します。スタック間で値を渡す 2 つの方式である terraform_remote_state と SSM パラメータの結合度の違い、モノレポの運用ルール、そしてボイラープレートが限界を超えたときの Terragrunt 導入の判断まで扱います。

Terraform 運用 #4 セキュリティ・コストスキャン — trivy、checkov、Infracost で PR ガードレール
読了 4分

Terraform 運用 #4 セキュリティ・コストスキャン — trivy、checkov、Infracost で PR ガードレール

セキュリティ設定のミスを apply の前に捕まえる静的スキャナー trivy と checkov を比較して導入し、誤検知の例外処理を理由つきでコードに残すルールを決めます。Infracost で PR に月額コストの変化をコメントとして表示してコストレビューをデプロイ前の段階に引き上げ、default_tags ベースのコスト追跡までつなげて PR ガードレールを完成させます。