python - 如何通过使用 boto 传递卷 ID 来查找 ec2 实例 ID
问题描述
我想将卷 id 作为参数传递,然后在 python 中返回实例 id
解决方案
你需要打电话describe_instances()
。
您可以自己在 Python 中过滤结果,也可以通过Filters
.block-device-mapping.volume-id
import boto3
ec2_client = boto3.client('ec2', region_name='ap-southeast-2')
response = ec2_client.describe_instances(Filters=[{'Name':'block-device-mapping.volume-id','Values':['vol-deadbeef']}])
instance_id = response['Reservations'][0]['Instances'][0]['InstanceId']
print(instance_id)
一个卷一次只能附加到一个实例,因此此代码假定只返回一个实例。
推荐阅读
- android - Android Studio 工具栏上未显示菜单
- python - 如何设置授权标头(JWT)
- r - 非线性优化:为什么我在使用 DEoptim 时会得到不同的结果?
- d3.js - D3.js 实时图更新不顺畅
- javascript - 无法在“WorkerGlobalScope”上执行“importScripts”
- c# - FileSystemWatcher:它没有得到关于 C# 中新创建的文件夹中文件的任何记录
- angular - Angular 7、cordova 和 base href、点 (.) 和斜线 (/)
- excel - VBA - 具有不同 IF 语句的多个 FOR 循环。有没有办法重用相同的 THEN 命令而不是在每个部分中重写它们?
- c# - Google OAuth2 使用 .net 从刷新令牌中获取访问令牌
- nginx - 如果 403,Nginx 重定向并从子文件夹提供服务