下面的代码给出了一个指定区域的结果,任何人都可以帮助我如何在一个aws帐户中的所有区域获取所有未标记的ec2实例信息吗?
#!/usr/bin/env python
import boto3
import json, ast
instances = [i for i in boto3.resource('ec2', region_name='us-east-2').instances.all()]
for i in instances:
d = (i.tags[0])
d2 = ast.literal_eval(json.dumps(d))
if ( d2['Value'] == "" ):
print i.instance_id
答案 0 :(得分:1)
获取所有地区的列表。遍历每个区域并执行您的代码。像这样:
def do_tags(region):
instances = [i for i in boto3.resource('ec2', region_name=region).instances.all()]
for i in instances:
d = (i.tags[0])
d2 = ast.literal_eval(json.dumps(d))
if ( d2['Value'] == "" ):
print i.instance_id
regions = boto3.session.Session().get_available_regions('ec2')
for region in regions:
print 'Checking region:', region
do_tags(region)