2 回答
TA贡献1966条经验 获得超4个赞
如果您不为其指定区域,它将使用您运行 Lambda 函数的区域。
如果您想通过 Boto3 在多个区域进行 AWS API 调用,您必须为每个区域创建一个客户端对象,并为每个区域进行单独的 API 调用。
TA贡献1818条经验 获得超11个赞
在这里,我列出了跨多个区域可用的所有实例。
你可以做类似的事情,
1. 列出所有可用区域。
client = boto3.client('ec2')
def get_all_regions():
all_regions = [ region['RegionName'] for region
inclient.describe_regions['Regions']]
return all_regions
regions_arr = []
regions = get_all_regions()
2.将结果附加到python列表中
for each_reg in regions:
regions_arr.append(each_reg)
3. 遍历 python 列表中的每个区域,并为其设置 region_name 属性。
for x in range(0, len(regions_arr)):
client_2 = boto3.client('ec2', region_name=regions_arr[x])
response = client_2.describe_instance_status()
for x in response['InstanceStatuses']:
print(x['InstanceId'])
希望这可以帮助。谢谢!
添加回答
举报