Why Lambda@Edge has to be in us-east-1 region?
Asked Answered
N

3

16

I am trying to create a CloudFormation stack in us-east-2 (Ohio) region. However, getting the following error

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

I have gone through the below sources and understand that this is a requirement that must be fulfilled by the lambda. My question is why? Why such restriction have been placed? I have looked in the documentations but they only mention the usage of us-east-1 but provide no reasoning!

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

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

Nero answered 6/5, 2020 at 13:4 Comment(0)
D
16

It seems to be an arbitrary decision. Lambda@Edge functions are distributed globally, but they originate from one place. The reason is most likely that there needs to be a single source of truth, and they picked us-east-1. This was also the first region and is special in a few ways (it handles billing, etc). It may have some benefits on their backend that we are not aware of.

Dogma answered 7/5, 2020 at 2:17 Comment(0)
H
5

The reason is because Cloud-front's Control plane is only in us-east-1. (i.e. if us-east-1 is down, the ability to update/create distributions is down.)

Hoplite answered 9/9, 2020 at 4:1 Comment(0)
B
3

Because cloudfront is deployed on us-east-1 even though it's a global service.

Bhang answered 24/7, 2021 at 20:25 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.