【问题标题】:Aggregated instance list from all regions of AWS using Boto3 Python library使用 Boto3 Python 库从 AWS 的所有区域聚合实例列表
【发布时间】:2018-08-14 06:21:15
【问题描述】:

我想通过 Boto3 python 库的一次调用从 AWS 的所有区域获取实例。

我们在 GCP 中有如下聚合实例列表:

request = service.instances().aggregatedList(project=project)

目前我正在使用 instance.all() 方法,但问题在于,我必须为每个区域分别创建 ec2resource,这需要大量时间来列出每个区域的实例。 目前我的代码如下:

region='us-east-2'
ec2resource = boto3.resource('ec2', region_name=region, aws_access_key_id=ac_k, aws_secret_access_key=sec_k)    
instances = ec2resource.instances.all()

对于上述问题是否有任何替代且省时的解决方案,以便我可以在一次调用中获取所有区域的所有实例并节省时间?

【问题讨论】:

  • 我发现了一些与此有些相似但都没有使用boto3的问题,所以我急需回答,所以我问了这个问题。

标签: python amazon-web-services amazon-ec2 boto3


【解决方案1】:

无论您创建boto3 EC2 资源还是EC2 client,它都是特定于区域的。所以除了分别查询每个区域之外别无他法。

在下面的两个参考中,都提到了boto api 对象只能与一个区域相关联。

参考:

  1. Reference 1
  2. Reference 2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-27
    • 2021-02-24
    • 1970-01-01
    • 2019-04-14
    • 2020-01-22
    • 1970-01-01
    • 2022-07-14
    • 1970-01-01
    相关资源
    最近更新 更多