gpt4 book ai didi

amazon-web-services - AWS 创建失败 : Service already exists.(服务:AWSServiceDiscovery;状态代码:400;错误代码:ServiceAlreadyExists;请求 ID)

转载 作者:行者123 更新时间:2023-12-04 05:22:28 24 4
gpt4 key购买 nike

我是 AWS 新手,在尝试在 ECS 集群中创建 EC2 服务时遇到了一些问题。
我能够在 service1 中成功创建全新的服务 (cluster1) ,但后来我决定删除cluster1并创建 cluster2 .当我尝试重新创建 service1 时出现问题在 cluster2 .每当我尝试添加服务时,我都会收到以下错误

creation failed: Service already exists. (Service: AWSServiceDiscovery; Status Code: 400; Error Code: ServiceAlreadyExists; Request ID: d854025e-ebcc-11e8-84ab-b3bac906f2ef)
有谁知道如何解决这个问题?我曾尝试取消注册任务定义,但没有奏效。 cluster1已删除, cluster2 中没有服务.

最佳答案

这是完整的答案。当您创建 AWS ECS 服务并且您还为其选择了可选的 ServiceDiscovery 时,它在 Route53 中创建了一个命名空间(.local)和服务(与 ECS 服务同名)。

当您删除 ECS 服务和集群时,它不会自动删除 Route53 命名空间/服务条目。现在,您收到 Service already exists 错误,因为您的新 ECS 服务与 ServiceDiscovery 服务具有相同的名称。你有 3 个选项。 1. 清理 Route53 命名空间和服务。 2.如果您想继续使用ServiceDiscovery功能,请重新使用Route53服务。 3. 创建ECS服务时不要开启服务发现集成。

选项 1 -

  • 您无法通过控制台删除 Route53 ServiceDiscovery 命名空间和服务。您将需要使用 AWS CLI。(确保您已使用与您创建 ECS 的账户相同的 AWS key 配置 CLI)https://docs.aws.amazon.com/cli/latest/reference/servicediscovery/index.html
  • 使用 CLI 列出命名空间和服务,使用您应该获得的以下命令和示例输出。
  • aws servicediscovery list-services

  • { "Services": [ { "Id": "srv-x4acveybedar32mv", "Arn": "arn:aws:servicediscovery:us-east-1:1234567890:service/srv-x4acveybedar32mv", "Name": "nginx" } ] }


  • aws servicediscovery list-namespaces

  • { "Namespaces": [ { "Id": "ns-3yd7pskwsxhwlq67", "Arn": "arn:aws:servicediscovery:us-east-1:1234567890:namespace/ns-3yd7pskwsxhwlq67", "Name": "local", "Type": "DNS_PRIVATE" } ] }


  • 先用命令删除服务。 aws servicediscovery delete-service --id "srv-x4acveybedar32mv" 。结果是来自 CLI 的空响应。
  • 用命令删除命名空间。 aws servicediscovery delete-namespace --id "ns-3yd7pskwsxhwlq67"

  • { "OperationId": "s573v5dr62yee5d7vbfvsy5h65ybxmoh-jossalgs" }


  • 就是这样。现在,您可以重新创建您想要的 ECS 服务。

  • 笔记 -

    有时,DNS 清理操作需要几分钟才能正确反射(reflect),所以在重试之前总是给几分钟。

    选项 2 -
  • 通过选择退出而不是使用相同名称创建来重用 Route53 服务。

  • enter image description here

    关于amazon-web-services - AWS 创建失败 : Service already exists.(服务:AWSServiceDiscovery;状态代码:400;错误代码:ServiceAlreadyExists;请求 ID),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53370256/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com