【问题标题】:Amazon Web Service can't delete an Elastic Beanstalk environmentAmazon Web Service 无法删除 Elastic Beanstalk 环境
【发布时间】:2014-08-20 22:07:15
【问题描述】:

我对 AWS Elastic Beanstalk 有疑问。我试图删除一个环境。它开始了这个过程,但几分钟后环境“健康栏”变灰并给我以下错误:

"Deleting security group named: XXXXX failed Reason: resource YYYYY has a dependent object"
"Stack deletion failed: The following resource(s) failed to delete: [AWSEBSecurityGroup]."

我试图从错误消息中删除安全组,但我得到了这个:

"XXXXXX: resource XXXXX has a dependent object"

在这之后我想从EB环境中删除依赖,但是因为它是灰色的,它不允许我这样做。

我浏览了几个小时的互联网,找到了一个可能的解决方案,我需要在 EC2 的网络接口页面上做一些事情,但它没有说明任何具体的选项或信息。

【问题讨论】:

    标签: amazon-web-services amazon-ec2


    【解决方案1】:

    RDS 或 S3 中是否引用了安全组?如果是这种情况,您必须删除 RDS 或 S3 中的依赖项。

    错误消息表明您的环境之外的某些内容仍在使用安全组,因此无法将其删除。

    【讨论】:

    • 谢谢,另一个 EC2 实例是依赖对象
    • 也许它会帮助某人:在我的情况下,它只是另一个安全组,我想删除安全组作为活动入站规则。
    • 在我的例子中,它是一个网络接口,我在 EC2 > Network Interfaces 屏幕中找到了它,this blog post shows how to delete the network interface
    • 是的,ENI 也是我的问题。似乎是最近创建的弹性 beanstalk 环境的一个问题,因为它发生在我上周创建并终止的几个环境中
    • 如果您将 VPC Beanstalk 环境链接到经典实例,我的对象是“ClassicLink”。在终止环境之前,请务必取消实例与 VPC 的链接。
    【解决方案2】:

    如果我将 EB 创建的安全组与非 eb 创建的 RDS 实例一起使用,是否会发生这种情况。

    我修改了 RDS 实例以停止使用 EB 创建的安全组,并且能够成功终止环境和应用程序。我使用了 eb cli 3.x 和 eb terminate --all --force 来重新开始应用程序。

    【讨论】:

      【解决方案3】:

      使用https://github.com/mingbowan/sgdeps 查找您的安全组依赖关系,然后打破依赖关系。

      【讨论】:

        【解决方案4】:
        1. 转到 AWS 控制台的 Compute 下的 EC2
        2. 转到侧边栏NETWORK & SECURITY 下的Security Groups
        3. 在页面上查找行为不端的安全组
        4. 检查并从Actions 菜单中选择Delete Security Group
        5. 您将看到一个链接,该链接将引导您访问它所依赖的安全组或实例。
        6. 继续,直到您到达父安全组或实例并删除它们。

        确保不要删除任何重要的安全组或实例!

        【讨论】:

          【解决方案5】:

          如果发生这种情况是由于类似的错误,但由于附加了 RDS,

          Stack deletion failed: The following resource(s) failed to delete: [AWSEBRDSDatabase].
          

          当您从 RDS 列表控制台手动终止 RDS 实例时会发生这种情况。我通过启动另一个具有相同DB instance ideIntifier 名称的实例解决了这个问题。

          创建后,您可以成功终止 Elastic Beanstalk 环境。这行得通。

          【讨论】:

            【解决方案6】:

            试试这个,AWS 支持建议我,它对我有用。

            • 您需要转到 CloudFormation 控制台并重新尝试删除 Beanstalk 环境使用的 CloudFormation 堆栈。
            • 删除可能会失败,但重试后会提示您是否要跳过删除失败的“AWSEBRDSDatabase”资源。您只需确认要跳过删除(因为您实际上已经删除了它)。
            • 这应该会删除 CloudFormation 堆栈
            • 然后您可以从 Beanstalk 控制台重试删除 Beanstalk 环境。

            【讨论】:

            • 谢谢,删除 CloudFormation 堆栈对我有帮助。
            【解决方案7】:

            在我的情况下,我将 EBS 实例列入 RDS 安全组,因此从 RDS 中删除解决了问题。

            【讨论】:

              猜你喜欢
              • 2019-04-20
              • 2016-04-20
              • 2015-07-13
              • 2019-01-17
              • 2021-12-27
              • 2016-04-30
              • 2013-11-06
              • 2015-09-18
              • 2013-08-16
              相关资源
              最近更新 更多