← 中文资源

简体中文版本

用 terraform import 对齐状态漂移

检测存在于云但不在状态中的资源,用 terraform import 导入,再跑 plan 使 diff 为零后正式纳管。

阅读英文原文

先导入再对齐

先写资源块,再把云资源导入到该地址的状态。导入只读云并写状态,不改云。跑 plan 并更新 config 直到 diff 为零。

terraform import aws_s3_bucket.logs incident-logs-2026
terraform plan -out=adopt.tfplan

让 config 与云一致

若 plan 有 diff,说明 config 与云不符。用 terraform show 读取已导入状态,更新 config 匹配后再 plan。目标是零 diff,即资源安全纳管。

resource "aws_s3_bucket" "logs" {
  bucket = "incident-logs-2026"
}

预期结果

状态文件含该资源,plan 零变更,下次 apply 为空操作。资源现由 Terraform 纳管,未来 plan 不会试图销毁它。导入只读不改云,apply 才改云;provider 无法读取的属性需 -ignore-remote-version,属最后手段。