You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform创建Lambda后执行apply报错:ValidationException

Terraform 再次执行apply时Lambda函数出现ValidationException 400错误的排查与解决

以下是针对该错误的具体排查方向和解决方法:

  • 检查Lambda IAM角色有效性
    确认var.lambda_role_arn对应的IAM角色未被删除、权限未被篡改,同时验证角色的信任策略是否包含Lambda服务主体:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "Service": "lambda.amazonaws.com"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    
  • 修正Lambda Handler配置
    当前handler配置为lambda_handler不符合Python Lambda的规则——正确格式应为文件名.函数名。假设你的代码文件是lambda_function.py,且处理函数名为lambda_handler,需修改handler字段:

    handler = "lambda_function.lambda_handler"
    

    同时确认ZIP包根目录下存在对应文件,且函数定义正确。

  • 验证ZIP包完整性
    检查data.archive_file生成的index.zip是否存在、未损坏,可手动解压确认目录结构是否符合要求(Python代码需放在ZIP根目录,而非子文件夹)。

  • 检查变量合法性

    • 确认var.lambdafunctionname符合Lambda命名规则(仅允许字母、数字、连字符、下划线,长度1-64字符)
    • 验证var.lambdatags的键值对是否符合AWS标签规范(键名不能包含:、/等特殊字符)
  • 刷新Terraform状态
    若状态文件与实际资源存在差异,执行以下命令刷新后重新apply:

    terraform refresh
    terraform apply
    
  • 确认运行时支持性
    部分AWS区域已停止对Python 3.8的支持,可尝试将runtime改为python3.9或更高版本验证。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 15:15:36