【问题标题】:"aws ecs describe-clusters" doesn't return the cluster“aws ecs describe-clusters”不返回集群
【发布时间】:2022-01-05 07:06:53
【问题描述】:

在 AWS 控制台中,我创建了一个集群、任务定义和存储库,用于部署我的 docker 映像。然后我创建了一个 IAM 用户并尝试通过调用列出我拥有的集群

aws ecs describe-clusters

它返回我

{
    "clusters": [], 
    "failures": [
        {
            "reason": "MISSING", 
            "arn": "arn:aws:ecs:us-east-1:XXXXXXXXXXX:cluster/default"
        }
    ]
 }

列出集群也会返回空数组,

aws ecs list-clusters

对此的任何帮助将不胜感激。

【问题讨论】:

  • 试过运行aws ecs describe-clusters --cluster default ?
  • 使用“aws ecs describe-clusters --region us-east-1”传递实际创建集群的区域
  • @ChetanRanpariya 集群名称不是默认的。尽管如此,在尝试时它返回相同的失败结果。
  • @ManishR 我也尝试过该地区。结果还是一样。我怀疑 IAM 政策存在问题。有什么想法吗?
  • 您所在地区似乎有问题。请使用 --region 参数传递正确的区域。

标签: amazon-web-services amazon-ecs


【解决方案1】:

可能有点晚了,希望对大家有所帮助。

首先你需要列出你的集群

$ aws ecs list-clusters
{
    "clusterArns": [
        "arn:aws:ecs:<aws_region>:<accn_id>:cluster/cumbancha-cluster"
    ]
}

然后,从之前的输出中获取集群名称(在本例中为 cumbancha-cluster)并再次尝试 describe-clusters 命令

$ aws ecs describe-clusters --cluster cumbancha-cluster
{
    "clusters": [
        {
            "clusterArn": "arn:aws:ecs:<aws_region>:<accn_id>:cluster/cumbancha-cluster",
            "clusterName": "cumbancha-cluster",
            "status": "ACTIVE",
            "registeredContainerInstancesCount": 1,
            "runningTasksCount": 3,
            "pendingTasksCount": 0,
            "activeServicesCount": 3,
            "statistics": [],
            "tags": [],
            "settings": [
                {
                    "name": "containerInsights",
                    "value": "disabled"
                }
            ],
            "capacityProviders": [],
            "defaultCapacityProviderStrategy": []
        }
    ],
    "failures": []
}

【讨论】:

  • OP 说他得到了一个空数组 list-clusters
【解决方案2】:

执行

aws configure

调整“默认区域名称:”并再次执行

aws ecs list-clusters

【讨论】:

  • 我认为解释一下您为什么认为aws configure 并调整默认区域将有助于解决 OP 的问题。
【解决方案3】:

上述错误表明脚本无法加载您的默认配置文件。将您的个人资料和地区添加到脚本中始终是一个好习惯。我在这里假设您已经通过“aws configure”cli 命令进行了配置。下面是sn-p:

aws ecs describe-clusters --profile <YOUR-PROFILE> --region <AWS-REGION>

您可以在 /.aws/config 文件中找到配置文件。

【讨论】:

    【解决方案4】:

    其他答案遗漏的一件事是describe-clusters 期望名称为default 的集群在未指定集群时退出。您可以拥有任意数量的集群,但如果您不指定要查看的集群,则会出现错误。

    正如其他人指出的那样,您可能需要指定正确的区域值(使用aws configure--region 参数、AWS_REGION 环境变量...)。如果您已经这样做了,那么可能是在 aws Web 控制台的错误区域中创建了资源?

    【讨论】:

      【解决方案5】:

      我也遇到了这个问题。 解决办法:

      • describe-clusters 命令需要输入参数 --cluster 才能以您调用的方式查找集群。

      首先,运行 aws ecs list-clusters 以获取您的集群名称。

      其次,运行aws ecs describe-clusters --cluster [cluster-name]

      提供您要描述的 ecs 集群来代替 cluster-name

      (假设您的区域、配置文件、aws cli 配置正确)

      【讨论】:

        【解决方案6】:

        试试

        aws ecs describe-services --services <service_name> --cluster <cluster_name> --region <region_name>
        

        【讨论】:

        • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
        • @user2672498 - 尝试添加更多细节以帮助理解毗湿奴,顺便说一句,这可能是评论,而不是回答
        • 具体来说,edit 您的答案有助于解释为什么您更喜欢现有答案。它是否利用了新功能?您要解决的先前答案是否存在问题?在某些情况下这会更好吗?如何?当有这么多现有答案时,这将是有用的信息。
        猜你喜欢
        • 1970-01-01
        • 2023-03-30
        • 2018-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-01
        • 1970-01-01
        • 2021-12-02
        相关资源
        最近更新 更多