Agent Skills
返回列表
🔒

Terraform 状态检查器

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/terraform-state-inspector-skillhub。

技能介绍

在变更前先把 state 读清楚

Terraform 的 terraform.tfstate 是实际资源的账本。账号被回收、资源被手工删除、依赖图里出现环时,最常见的失败不是 apply 报错,而是在计划阶段就已经与真实环境不一致。排障时如果只重跑 terraform plan,很容易把漂移、孤儿资源和依赖循环混在一起。

检查器如何定位问题

  • 从 terraform show -json、terraform state list 等 CLI 输出中提取资源地址、类型和当前值,先建立一份可读的 state 快照。
  • 用 terraform state pull 与计划文件做对比,识别远端已有但 plan 不再声明的 orphaned resources,避免清理动作误删仍在使用的资源。
  • 结合 Terraform Cloud API v2 读取 workspace、run、state version 等上下文,把本地文件和远端锁、执行历史对齐。
  • 从资源 depends_on、references 和资源地址引用关系重建图,发现会导致 apply 无法继续的 dependency cycles,并指出成环的资源地址。

使用边界

  • 它分析的是 state 与远端 API 返回的数据,不能替代云厂商控制台或底层 API 的权限检查。
  • 对自定义 backend、私有模块或高度封装的 provider,仍需人工确认字段含义和资源生命周期。
  • 删除资源前应先用只读方式核对 plan;涉及生产环境时,建议在隔离 workspace 中验证后再执行。

使用场景

  • 在提交 `terraform apply` 前,对比远端环境与本地 state,定位意外发生配置漂移的资源。
  • 清理废弃项目时,找出远端仍运行但 state 中不再声明的孤儿资源,防止云账单遗漏。
  • 编写复杂模块引用时,排查 state 数据中因资源地址引用错误导致的依赖循环问题。

适合人员

  • 云平台运维工程师,希望在部署前自动检测配置漂移与孤儿资源,避免线上环境状态失控。
  • 基础设施代码开发者,需要快速排查复杂模块间的资源引用错误,防止依赖循环阻塞流水线。
  • 云资源财务管理员,定期审查废弃项目的 state 文件,清理未被声明的孤儿资源以控制成本。
  • DevOps 安全审计员,通过 Terraform Cloud API 核对 state 版本与执行历史,确保变更符合安全合规。