Nae*_*eem 3 amazon-ec2 amazon-web-services boto3 aws-lambda
我正在 lambda 函数中运行以下脚本来使用标签描述 ec2 实例。但作为响应,我只需要实例 ID,而它会返回大量信息。请指导或以任何其他方式使用标签查找 ec2 insatnce id。谢谢
代码是:
import boto3
import json
from collections import defaultdict
region = 'us-east-1'
def lambda_handler(event, context):
client = boto3.client('ec2')
running_instances = client.describe_instances(
Filters=[
{
'Name': 'tag:orgid',
'Values': [
'demoxx',
]
},
],
)
return json.loads(json.dumps(running_instances, default=str))
Run Code Online (Sandbox Code Playgroud)
要从describe_instances获取实例ID,您必须遍历Reservations,然后遍历Instances。
因此,您的代码可以是:
import boto3
import json
from collections import defaultdict
region = 'us-east-1'
def lambda_handler(event, context):
client = boto3.client('ec2')
running_instances = client.describe_instances(
Filters=[
{
'Name': 'tag:orgid',
'Values': [
'demoxx',
]
},
],
)
instance_ids = []
for reservation in running_instances['Reservations']:
for instance in reservation['Instances']:
instance_ids.append(instance['InstanceId'])
return instance_ids
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3094 次 |
| 最近记录: |