Tod*_*odd 5 amazon-web-services aws-lambda terraform
我之前在该us-east-1
区域中创建了一个存储桶,其中包含我要在其他区域部署的Lambda代码.当我在us-west-2
区域中尝试使用相同代码的Terraform部署时,我收到以下错误:
Error creating Lambda function: InvalidParameterValueException: Error occurred while GetObject. S3 Error Code: PermanentRedirect. S3 Error Message: The bucket is in this region: us-east-1. Please use this region to retry the request
Run Code Online (Sandbox Code Playgroud)
我认为无法在Terraform的aws_lambda_function
资源中指定S3存储桶的区域.
使用Terraform,是否可以在一个区域中提供S3存储桶,以提供可在其他区域部署的Lambda代码?
为源指定S3存储桶的Lambda函数必须与S3存储桶位于同一区域.这是因为在幕后他们正在按需从S3中提取代码,因为Lambda需要部署.跨越区域会增加大量延迟,现在也会创建跨区域依赖关系.
您需要将Lambda软件包移动到您可能在S3存储桶上进行跨区域复制的新区域,或者只需将Lambda函数软件包手动上载到其他区域的S3存储桶中.