「for_each map includes keys derived from resource attributes」エラーの解決方法
1. 概要 for_eachではcountと同様に、planフェーズで確定できない値をキーに使うとエラーになります。ただしfor_eachの場合、キー(key)が未知であることが問題であり、値(value)が未知の場合と … 続きを読む
1. 概要 for_eachではcountと同様に、planフェーズで確定できない値をキーに使うとエラーになります。ただしfor_eachの場合、キー(key)が未知であることが問題であり、値(value)が未知の場合と … 続きを読む
1. 概要 循環参照エラーは、2つ以上のリソースが互いに依存し合ってしまったときに発生します。TerraformはDAG(有向非巡回グラフ)で依存関係を管理するため、ループする依存関係は解決できません。 2. エラーメッ … 続きを読む
1. 概要 バックエンド(stateの保存場所)の設定を変更した後にterraform initを実行すると、Terraformは既存のstateファイルをどう扱うかを確認します。適切な対応をしないとstateが失われる … 続きを読む
Terraform 1.5以降のtemplatestringで、S3やSSM Parameter Storeから取得したテンプレート文字列を動的にレンダリングする方法を解説。templatefileとの違い、第1引数の制約、実践的なユースケースを具体例付きで説明します。
terraform_remote_stateデータソースで複数のTerraform構成間でoutputsを共有する方法を解説。S3バックエンドの設定例、セキュリティリスク、tfe_outputsやSSM Parameter Storeへの代替手段も説明します。
Terraform CI/CDのブランチ戦略を解説。trunk-based development、ブランチ=環境パターン、PRをplan専用にする設計、本番applyの安全策(GitHub Environments承認ゲート・plan保存)を具体的なYAMLと設計図で説明します。
CheckovでTerraformコードのセキュリティ問題を自動検出する方法を解説。よくあるチェック項目(EBS/IMDSv2/S3/RDS暗号化)、GitHub Actions統合、tfsecとの比較、SARIF出力によるGitHub Security Alerts連携を説明します。
AtlantisとTerraform CloudのTerraform CI/CD自動化を比較。PRベースのplan/applyフロー、コスト・運用負荷・機能の違い、どちらを選ぶべきか判断基準を具体例付きで解説します。
Terraformのset操作関数(setintersection・setunion・setsubtract・setproduct)を解説。共通CIDRブロックの特定・全環境のCIDRマージ・AZ×サブネット種別の全組み合わせ生成など実践的なユースケースを具体例付きで説明します。
Terraformのissensitive・nonsensitive関数を解説。sensitiveの自動伝播のしくみ・ハッシュ値を安全にタグに使う方法・nonsensitiveの正しい使い方と危険な使い方を具体例付きで説明します。