无法从 AWS CLI 或 boto3 查看 ECS 集群
Unable to see ECS clusters from AWS CLI or boto3
我已经使用 AWS ECS 创建了几个集群来 运行 我的工作流程。到目前为止,我一直在通过 Terraform 和控制台的组合来管理他们的配置/任务定义。
今天,我想使用 boto3
为已经 运行ning 的任务添加一些逻辑检查。但是,当我尝试列出我的集群时,客户端 return 一个空列表:
session = boto3.Session(profile_name='default')
client = session.client('ecs')
print(client.list_clusters())
{'clusterArns': [], 'ResponseMetadata': {'RequestId':
'XXX', 'HTTPStatusCode': 200,
'HTTPHeaders': {'x-amzn-requestid':
'XXX', 'content-type':
'application/x-amz-json-1.1', 'content-length': '18', 'date': 'Fri, 18
Jan 2019 15:09:33 GMT'}, 'RetryAttempts': 0}}
这让我感到困惑,因为我确保使用我的默认配置文件,并且当我登录到我的 ECS 控制台时,我看到了我的集群(还有更多,但我只展示了一个):
此外,我能够毫无问题地列出我所有的 S3 存储桶:
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
print(bucket.name)
以上代码 return 是我的 S3 存储桶的完整列表。我已经通读了 ECS boto3
的文档,但对为什么找不到我的集群感到困惑。
检查您的默认配置文件的区域并确保它与您创建测试集群的位置匹配。
我已经使用 AWS ECS 创建了几个集群来 运行 我的工作流程。到目前为止,我一直在通过 Terraform 和控制台的组合来管理他们的配置/任务定义。
今天,我想使用 boto3
为已经 运行ning 的任务添加一些逻辑检查。但是,当我尝试列出我的集群时,客户端 return 一个空列表:
session = boto3.Session(profile_name='default')
client = session.client('ecs')
print(client.list_clusters())
{'clusterArns': [], 'ResponseMetadata': {'RequestId': 'XXX', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': 'XXX', 'content-type': 'application/x-amz-json-1.1', 'content-length': '18', 'date': 'Fri, 18 Jan 2019 15:09:33 GMT'}, 'RetryAttempts': 0}}
这让我感到困惑,因为我确保使用我的默认配置文件,并且当我登录到我的 ECS 控制台时,我看到了我的集群(还有更多,但我只展示了一个):
此外,我能够毫无问题地列出我所有的 S3 存储桶:
s3 = boto3.resource('s3')
for bucket in s3.buckets.all():
print(bucket.name)
以上代码 return 是我的 S3 存储桶的完整列表。我已经通读了 ECS boto3
的文档,但对为什么找不到我的集群感到困惑。
检查您的默认配置文件的区域并确保它与您创建测试集群的位置匹配。