这个问题已经存在here,但我认为它会对SO产生更大的影响。
我创建了一个 AWS Lambda @ Edge功能,以便在Cloudfront URL到达Origin之前重写它们。
AWS Lambda @ Edge函数在发布时会自动复制到所有区域,因此我对每个区域都看到这一点并不感到惊讶:
这里开始出现问题:
我删除了Lambda @ Edge,因为它是一个测试,我想开始一个全新的,但复制品不会同时删除。
当时没什么大不了的,我以为我可以创建一个新的Lambda @ Edge功能
但你不能,因为 Cloudfront触发器一次只能使用一个功能(因为副本使用它,你不能创建一个新的)。
此外,无法删除触发器。
所以现在我无法在任何地方使用Lambda @ Edge复制品,我无法删除,也无法创建类似的复制品。
TL; DR
我很感激能得到一些帮助 弗朗索瓦
编辑:
我绝对认为这是一个错误,因为在我的副本页面中, Master ARN 的链接以404响应。
答案 0 :(得分:11)
我找到了答案的一部分:
事实证明我需要删除Cloudfront行为中的触发器 简单地说:
Edit
尽管如此,我无法删除副本,但至少我可以为此触发器创建新的lambdas ......
答案 1 :(得分:5)
我向AWS支持部门提出了这个问题,答案如下:"您现在无法删除已复制的lambda函数,但我们知道很多人都需要这样做"。
AWS Lambda @ Edge http://docs.aws.amazon.com/es_es/lambda/latest/dg/lambda-edge.html
创建触发器时,Lambda会将该功能复制到AWS 全球各地区和CloudFront边缘位置。注意 副本无法编辑或删除。
答案 2 :(得分:1)
现在有一个文档here指出,副本会在“几个小时后”删除-这意味着我随后也可以删除Lambda函数。
答案 3 :(得分:1)
我发现可以删除该功能的最佳答案,请按照以下步骤操作:
来源:https://adrian.simionov.io/aws/2019/08/28/deleting-lambda-at-edge-functions.html
答案 4 :(得分:1)
您好francois,yves,reki,我已经找到了删除Lambda @ edge副本的解决方案。
注意!>请记住删除与Lambda @ edge函数关联的所有IAM角色和权限。
我希望这对您有用,享受:)
答案 5 :(得分:0)
即使我尝试*要删除触发器然后创建lambda(在我的情况下lambda达到近30)*,但我无法创建新的lambda @ edge。最后我做了这个
删除了与lambda函数关联的云端分布, 现在很容易进一步发展。请确保仅由相关lambda使用的分发。