我创建了一个boto3脚本
1 import boto3
2
3 #STATUSES = ( 'available', 'pending' )
4 REGIONS = ('us-west-1', 'us-east-1', 'us-west-2')
5 REGIONS_H = ('N. California', 'N. Virginia', 'Oregon')
6
7 for i in range(len(REGIONS)):
8 region = REGIONS[i]
9 region_h = REGIONS_H[i]
10 print()
11 print("Images in {}".format(region_h))
12 print("-----------------------")
13 rds = boto3.setup_default_session(region_name=region)
14 rds = boto3.client('rds')
15
16 ec2 = boto3.resource('ec2')
17 images = ec2.images.filter(Owners=['self'])
18 for image in images:
19 print("[{}] ( {} {} {} {} )".format(image.state, image.id, image.image_type, image.architecture, image.description, image.platform))
这给了我以下输出(为勇敢起见):
Images in N. California
-----------------------
[available] ( ami-02efeb026dba996f8 machine x86_64 Base system for testing Progressive install )
[available] ( ami-046bd9fc47f29a58f machine x86_64 bb-rhel7-install-5 )
[available] ( ami-04c2959b96500208c machine x86_64 bb-ubuntu-install-3 )
是否可以添加到第19行,所以我可以显示 谁 创建了AMI?
答案 0 :(得分:2)
image.owner_id
将返回图像所有者的AWS账户ID。请参阅this链接。
答案 1 :(得分:0)
有多种访问AMI元数据的方法,在这种情况下,正在使用ec2资源访问AMI元数据,因此您需要参考EC2 resources
,获取所有者ID的电话应为image.owner-id