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

使用CDK以容器方式部署Amazon Lambda失败问题求助

Lambda容器部署预配置并发失败(关联OpenTelemetry环境变量)

问题详情

用AWS CDK部署Docker容器到Lambda时,只要Dockerfile中保留ENV OPENTELEMETRY_COLLECTOR_CONFIG_FILE=/opt/opentelemetry-collector.yaml这个环境变量,执行cdk deploy "*Dev"就会触发预配置并发失败的错误:

2:35:17 PM | UPDATE_FAILED        | AWS::Lambda::Alias                          | SOptimL...ambdaAlias633C
Resource handler returned message: "Provisioned Concurrency configuration failed to be applied. Reason: FAILED" (RequestToken: 14efcc75-7xxxxx-xxxx2-e7a1dbf53246, HandlerErrorCode: NotStabilized)

移除该环境变量后,部署完全正常。Dockerfile完整内容如下:

FROM public.ecr.aws/lambda/python:${PYTHON_VERSION}
ENV OPENTELEMETRY_COLLECTOR_CONFIG_FILE=/opt/opentelemetry-collector.yaml

RUN mkdir -m 755 -p /opt/extensions
COPY --from=lambda-layer-builder /tmp/layer /opt/
COPY ./opentelemetry-collector.yaml /opt/opentelemetry-collector.yaml

WORKDIR ${LAMBDA_TASK_ROOT}

COPY --from=builder ${LAMBDA_TASK_ROOT} .

CMD ["api.handler"]

排查方向与解决办法

1. 检查OpenTelemetry扩展初始化超时

预配置并发会提前启动并初始化Lambda实例,当设置该环境变量后,OTel扩展会加载配置文件,如果初始化耗时超过Lambda预配置的超时阈值,就会导致失败:

  • 简化opentelemetry-collector.yaml配置,暂时去掉非必要的处理器、导出器,测试是否能正常部署;
  • 确认/opt目录下的OTel扩展二进制文件有执行权限(Dockerfile里已经设置了755权限,可再检查layer内文件权限);
  • 在CDK的Lambda配置中,调高预配置并发的初始化超时时间(上限10分钟)。

2. 验证配置文件的正确性

可能存在配置文件路径错误或格式问题,导致扩展加载失败:

  • 用yamllint工具检查YAML格式是否合法;
  • 本地模拟Lambda运行环境(比如拉取对应镜像手动运行),检查/opt/opentelemetry-collector.yaml是否存在且能被读取,OTel扩展是否能正常启动。

3. 调整环境变量设置方式

尝试把环境变量从Dockerfile移到CDK的Lambda配置中,不在镜像内置环境变量:

// 示例CDK代码(TypeScript)
const lambdaFn = new lambda.DockerImageFunction(this, 'MyLambda', {
  code: lambda.DockerImageCode.fromImageAsset(path.join(__dirname, 'docker')),
  environment: {
    OPENTELEMETRY_COLLECTOR_CONFIG_FILE: '/opt/opentelemetry-collector.yaml'
  },
  provisionedConcurrency: 5 // 你的预配置并发数
});

4. 更新OTel扩展版本

部分旧版本的OTel Lambda扩展和预配置并发存在兼容性问题,更新到最新稳定版本再测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 09:26:18