10

我正在尝试在 us-east-2(俄亥俄州)区域创建 CloudFormation 堆栈。但是,收到以下错误

com.amazonaws.services.cloudfront.model.InvalidLambdaFunctionAssociationException:
The function must be in region 'us-east-1'

我浏览了以下资源并了解这是 lambda 必须满足的要求。我的问题是为什么?为什么会设置这样的限制?我查看了文档,但他们只提到了 us-east-1 的用法,但没有提供任何理由!

https://github.com/awslabs/serverless-application-model/issues/635

https://medium.com/@mnylen/lambda-edge-gotchas-and-tips-93083f8b4152

4

3 回答 3

6

这似乎是一个武断的决定。Lambda@Edge 函数分布在全球,但它们源自一个地方。原因很可能是需要一个单一的事实来源,他们选择了 us-east-1。这也是第一个区域,并且在某些方面很特别(它处理计费等)。它可能在他们的后端有一些我们不知道的好处。

于 2020-05-07T02:17:44.873 回答
3

原因是Cloud-front的Control plane只在us-east-1。即如果 us-east-1 宕机,更新/创建发行版的能力就会下降。

于 2020-09-09T04:01:14.020 回答
0

us-east-1因为即使它是全球服务,也部署了 cloudfront 。

于 2021-07-24T20:25:22.313 回答