Estoy tratando de crear una pila de CloudFormation en la región us-east-2 (Ohio). Sin embargo, obteniendo el siguiente error
com.amazonaws.services.cloudfront.model.InvalidLambdaFunctionAssociationException: The function must be in region 'us-east-1'He revisado las siguientes fuentes y entiendo que este es un requisito que debe cumplir la lambda. Mi pregunta es ¿por qué? ¿Por qué se ha puesto tal restricción? He buscado en la documentación, pero solo mencionan el uso de us-east-1, ¡pero no proporcionan ningún razonamiento!
https://github.com/awslabs/serverless-application-model/issues/635
https://medium.com/@mnylen/lambda-edge-gotchas-and-tips-93083f8b4152
Parece ser una decisión arbitraria. Las funciones de Lambda@Edge se distribuyen globalmente, pero se originan en un solo lugar. Lo más probable es que la razón sea que debe haber una única fuente de verdad, y eligieron us-east-1. Esta fue también la primera región y es especial en algunos aspectos (maneja la facturación, etc.). Puede tener algunos beneficios en su backend que no conocemos.
La razón es que el plano de control de Cloud-front está solo en us-east-1. es decir, si us-east-1 está inactivo, la capacidad de actualizar/crear distribuciones está inactiva.
porque Cloudfront se implementa en us-east-1 a pesar de que es un servicio global.