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

Terraform创建AWS Lambda应用自动扩缩容时报ValidationException错误求助

错误根因

你出现该报错是因为aws_appautoscaling_target的resource_id参数配置不符合Lambda预置并发的自动扩缩规则。Lambda的预置并发是绑定到具体的函数版本或别名的,无法直接作用于未指定版本的函数本身,你当前只填写了function:${函数名}的格式,缺少版本/别名后缀,所以触发了不支持资源类型的校验报错。

修复步骤

  1. 修改aws_appautoscaling_target的resource_id参数,追加对应的函数版本后缀,你已经开启了函数自动发布,直接使用发布的版本号拼接即可:
resource "aws_appautoscaling_target" "autoscale_foo" {
  max_capacity       = var.PCMax
  min_capacity       = var.PCMin
  resource_id        = "function:${aws_lambda_function.foo.function_name}:${aws_lambda_function.foo.version}"
  scalable_dimension = "lambda:function:ProvisionedConcurrency"
  service_namespace  = "lambda"
}
  1. 删除你当前配置的固定预置并发资源aws_lambda_provisioned_concurrency_config,固定预置并发和自动扩缩管理的预置并发会产生冲突,自动扩缩场景下不需要单独配置固定值的预置并发。

补充说明

  • 如果你是使用别名做灰度发布,将resource_id的后缀替换为对应的别名即可,格式为function:<函数名>:<别名>
  • 你当前使用的Terraform 1.0.11和AWS Provider 3.66.0版本完全支持Lambda预置并发自动扩缩能力,不存在功能不支持的问题
  • 配置完自动扩缩目标后,你可以继续补充aws_appautoscaling_policy资源,配置基于业务指标的扩缩容规则,比如根据Lambda并发利用率、SQS队列深度等指标调整预置并发数量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 19:36:03