"Terraform"
- IaC 工具選型與 state 地基
Terraform / OpenTofu / CDK / Pulumi 的選型判準,state 作為 IaC 工具對現實的唯一記憶,以及 remote state backend 的自管與託管路線
- Console 唯讀鐵律與最小可行資源集合
Console 只用來看不用來改的操作紀律、drift 的延遲浮現與偵測,以及能跑出第一個完整 apply 迴路的最小資源集合
- State(IaC 狀態檔)
IaC 工具用來記錄每個納管資源在雲端真實樣貌的快照,是比對差異與排定操作順序的依據
- Terraform CI Pipeline 設定指南
用 GitHub Actions 建立完整的 Terraform CI pipeline:fmt → validate → tflint → plan → PR comment → apply,含 OIDC credential 與環境保護規則
- 斷網環境的 IaC
Terraform provider mirror、離線 plugin cache、本地 state backend、沒有雲端時的 plan/apply 流程與內網 CI
- 有半套 IaC 但文件缺失的環境接管
IaC 覆蓋不完整、部分資源在 state 外、文件缺失的環境怎麼盤點差距、修復 state 健康、收斂 drift 並重建文件
- Terraform → OpenTofu:HCL 跟 state file 級 drop-in、CI runner 切 binary 完成
OpenTofu 是 Terraform 在 BSL license 後的 fork、Terraform 1.5.x baseline 完全相容(HCL / state / provider);本文是 Type B drop-in migration 的標準形態 — 用 code-led HCL / state diff sample 開頭、5 個 production 踩雷(provider version drift / state lock 微差 / Terraform Cloud feature 不支援 / CI binary name 假設 / registry routing)
- State 修復與清理
接手的 Terraform state 損壞、有 orphaned entry、或需要搬遷時,怎麼診斷問題、安全操作、以及從錯誤中回復
- Drift 分類處理指南
接手半套 IaC 環境時,怎麼讀 plan 輸出分類 drift、判斷保留還是回退、處理 stateful 資源的高風險漂移,以及批次收斂的工作流
- Unmanaged Resource 批次 Import 工作流
把 Terraform state 外的雲端資源有系統地納入 IaC 管理:優先序判斷、import block 語法、generated HCL 的 review 要點、批次策略與常見失敗處理
- 兩套真相並存的過渡期操作
部分資源在 IaC、部分在手動時,怎麼安全操作避免比全手動更危險,以及怎麼縮短這個過渡期