Agent Skills
返回列表
🔒

Terraform 状态检查器

IT 运维与安全 更新于 2026.08.30

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

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

技能介绍

要解决的具体问题

Terraform 状态文件记录了基础设施的实际资源映射关系,是 Terraform 执行变更、回滚的核心依据。但在实际运维中,由于资源被手动修改、未按流程删除或依赖关系混乱,常出现三类问题:资源漂移(状态与实际资源属性不一致)、孤儿资源(实际存在但未被状态跟踪的资源)、依赖循环(资源间依赖关系形成闭环,导致部署卡住)。手动排查这些问题需要逐一比对状态和实际环境,耗时且易遗漏,尤其当基础设施规模较大时,问题定位效率极低。

核心能力与工作流程

该技能基于 terraform CLI 命令与 Terraform Cloud API v2 实现状态诊断,核心能力包括:

  • 检测资源漂移:对比状态文件中的资源属性与实际环境的配置,找出不一致的字段;
  • 识别孤儿资源:扫描未被状态跟踪但实际存在的资源;
  • 诊断依赖循环:分析状态文件中资源的依赖关系,定位形成闭环的资源组。

工作流程如下:

  1. 通过 terraform CLI 命令获取本地状态文件数据,或调用 Terraform Cloud API v2 拉取云端托管的状态数据;
  2. 解析状态数据,提取资源的属性、依赖关系等关键信息;
  3. 基于预设规则检测三类异常,生成结构化的诊断报告,明确问题类型、涉及资源及定位建议。

适用边界与注意点

该技能仅针对 Terraform 状态文件相关的问题,不处理 Terraform 代码逻辑、资源定义语法等开发层面的问题。使用时需满足两个前提条件:

  • 本地环境已安装 terraform CLI,且执行命令的账号具备状态文件读取权限;
  • 若使用 Terraform Cloud API v2,需提供有效的 API 密钥,且账号有权限访问目标工作空间的状态数据。

此外,对于刚执行完 terraform apply 的最新状态,建议等待状态同步完成后再执行检查,避免因数据未更新导致误判。

使用场景

  • IaC 工程师在执行 terraform apply 后发现状态与实际资源属性不一致,需要定位哪些资源发生了漂移及具体不一致字段。
  • 运维人员清理测试环境时发现实际存在的云资源未被 Terraform 状态跟踪,需要找出孤儿资源并将其纳入状态管理。
  • 平台团队执行 terraform plan 时卡在 graphing 阶段,需要诊断状态文件中哪些资源之间形成了依赖循环。
  • 基础设施团队将本地状态迁移到 Terraform Cloud 后,需要验证云端托管的状态数据是否存在漂移与孤儿资源。

适合人员

  • 负责维护 Terraform 状态文件的基础设施工程师,需要快速定位资源漂移、孤儿资源与依赖循环等状态异常。
  • 刚接手历史基础设施项目的 DevOps 工程师,需要审计遗留状态文件的健康程度与潜在风险。
  • 使用 Terraform Cloud 托管状态的团队负责人,需要在变更前后验证状态数据的一致性与完整性。
  • 负责多环境资源纳管的运维人员,需要定期排查未被状态跟踪的影子资源。