AWS Lambda:无法删除arn,因为它是一个复制函数

时间:2018-06-07 19:04:09

标签: amazon-web-services aws-lambda

我试图通过GUI删除AWS Lambda函数,但我收到了回复:There was an error deleting your function: Lambda was unable to delete arn:aws:lambda:us-east-1:624929674184:function:lambda-auth:1 because it is a replicated function.

enter image description here

如何删除复制的Lambda函数?

3 个答案:

答案 0 :(得分:7)

我已经找到了删除Lambda @ edge副本的解决方案。

  1. 首先,登录CloudFront控制台并转到您的分发
  2. 行为标签下-选中列出的行为编辑
  3. 向下滚动至Lambda函数关联,然后单击 X 删除任何关联。
  4. 是,编辑以保存更改。 ---现在您已经删除了关联,是时候删除Lambda @ edge副本了
  5. 转到Lambda控制台并打开您的lambda(您要删除)。
  6. 在顶部菜单上-限定符-> 版本->选择列出的下拉版本 enter image description here
  7. 它将打开该@edgeLambda版本
  8. 在顶部菜单上-操作-> 删除版本 enter image description here
  9. 这样,删除所有版本-您剩下 $ LATEST
  10. 同时删除-您终于可以删除Lambda @ edge函数

注意!>请记住删除与Lambda @ edge函数关联的所有IAM角色和权限。

我希望这会起作用:)

请参考链接Delete Lambda@Edge Functions and Replicas,您会发现它很有用。

答案 1 :(得分:3)

复制函数是Lambda@Edge使用的函数,所以我认为这是一个例子,即使它没有说明。您应该在how to delete这些文档上查看此文档。您目前无法手动删除它们:

  

您只能在复制时删除Lambda @ Edge功能   功能已被CloudFront删除。 Lambda的复制品   在以下情况下会自动删除功能:

     

从全部删除该功能的最后一个关联后   您的CloudFront分配。如果多个分发使用a   函数,仅在函数之后删除副本   脱离了最后一个。

     

删除函数关联的最后一个分发后   用。

     

通常会在几个小时内删除副本。

注意:

  

目前无法手动删除副本。这有助于防止删除您仍在使用的副本的情况,这会导致错误。

答案 2 :(得分:0)

BHEERAJ's answer 很好,但在我的确切情况下,我等了 6 个小时,但没有任何变化,错误仍然发生,但随后我也删除了相关的 S3 存储桶(为了删除存储桶,我不得不删除首先是里面的项目):

https://s3.console.aws.amazon.com/s3

然后在大约半小时内我试图删除那些 Lambda 函数,最后它真的删除了。