You need to enable JavaScript to run this app. Terraform从0.11.14升级0.13.7后Provider配置不存在错误如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Terraform从0.11.14升级0.13.7后Provider配置不存在错误如何解决

修复步骤

操作前请先备份你的Terraform state文件,避免操作失误导致数据丢失。

  • 第一步:替换State中旧的AWS Provider源地址
    你遇到的provider配置不存在报错,是因为跨0.12/0.13版本升级时,旧版本State中存储的AWS Provider是隐式的legacy地址registry.terraform.io/-/aws,和你现在配置的官方源hashicorp/aws不匹配,运行以下命令替换State中的provider源:
    terraform state replace-provider 'registry.terraform.io/-/aws' 'hashicorp/aws'
    
    确认操作时输入yes即可。
  • 第二步:重命名State中的旧资源名
    你把代码里的资源名从443改成https后,State里还留存着旧名称的资源记录,直接执行plan/apply会被判定为要删除旧资源、创建新资源,同时还会关联到旧provider记录,运行以下命令把State中的旧资源名和新代码的资源名对应:
    terraform state mv module.tflib.module.alb.aws_alb_listener.443 module.tflib.module.alb.aws_alb_listener.https
    
  • 第三步:验证修复结果
    重新执行初始化和预览命令,确认报错已消除:
    terraform init
    terraform plan
    
    如果plan输出没有报错,仅显示符合预期的变更,说明问题已修复。

内容的提问来源于stack exchange,提问作者Roman Newaza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 18:06:04