Terraform AWS Provider插件崩溃求助,无代码变更突发报错
Terraform AWS Provider 插件崩溃问题解决建议
问题背景
Terraform代码此前运行正常,未主动修改代码的情况下,执行plan、apply、destroy操作时突发报错,报错信息及插件栈追踪如下:
报错信息
Plan: 21 to add, 0 to change, 0 to destroy. ╷ │ 错误:插件未响应 │ │ 涉及 data.aws_subnets.subnets, │ 位于 data.tf 第18行,data "aws_subnets" "subnets" 块中: │ 18: data "aws_subnets" "subnets" { │ │ 插件遇到错误,未能响应plugin.(*GRPCProvider).ReadDataSource调用。插件日志可能包含更多详情。 ╵ ╷ │ 错误:插件未响应 │ │ 涉及 data.aws_subnets.batch_subnets, │ 位于 data.tf 第30行,data "aws_subnets" "batch_subnets" 块中: │ 30: data "aws_subnets" "batch_subnets" { │ │ 插件遇到错误,未能响应plugin.(*GRPCProvider).ReadDataSource调用。插件日志可能包含更多详情。 ╵ ╷ │ 错误:插件未响应 │ │ 涉及 module.batch_security_group.aws_security_group.this_name_prefix[0], │ 位于 .terraform/modules/batch_security_group/main.tf 第37行,resource "aws_security_group" "this_name_prefix" 块中: │ 37: resource "aws_security_group" "this_name_prefix" { │ │ 插件遇到错误,未能响应plugin.(*GRPCProvider).ReadResource调用。插件日志可能包含更多详情。 ╵ ╷ │ 错误:插件未响应 │ │ 涉及 module.rsdl_batch.aws_batch_job_definition.this["rsdl-core"], │ 位于 .terraform/modules/rsdl_batch/main.tf 第265行,resource "aws_batch_job_definition" "this" 块中: │ 265: resource "aws_batch_job_definition" "this" { │ │ 插件遇到错误,未能响应plugin.(*GRPCProvider).PlanResourceChange调用。插件日志可能包含更多详情。 ╵
插件栈追踪
来自terraform-provider-aws_v5.49.0_x5插件的栈追踪信息: panic: interface conversion: interface {} is nil, not map[string]interface {}
错误:terraform-provider-aws_v5.49.0_x5插件崩溃! 这通常表明插件存在Bug。若您能向插件维护者上报该崩溃问题以修复它,将非常有帮助。上述输出有助于诊断问题。
解决建议
- 降级AWS Provider版本:该问题大概率是v5.49.0版本的插件Bug,在Terraform配置的
terraform块中指定稳定版本,例如:
执行terraform { required_providers { aws = { source = "hashicorp/aws" version = "~> 5.48.0" } } }terraform init -upgrade重新拉取对应版本插件。 - 清理本地插件缓存:删除项目目录下的
.terraform/providers文件夹,再执行terraform init重新初始化插件,避免缓存损坏导致的问题。 - 检查AWS服务状态:确认操作对应的AWS区域服务是否正常运行,排除AWS端临时故障影响。
- 验证本地环境:确保本地Terraform版本与指定的AWS Provider版本兼容,无本地环境(如系统依赖、权限)的变更。
- 提交Bug报告:如果降级版本后问题解决,可向AWS Provider维护团队提交Bug报告,附上完整报错信息和相关配置片段,帮助修复该版本问题。
内容的提问来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

