繁体   English   中英

在python中获取所有亚马逊EC2实例属性

[英]Get all amazon EC2 instance properties in python

我想为每个实例系列获取并在 AWS 上输入它们的属性和标签。 例如,AWS 提供的每个实例(例如 x2.2xlarge、t1.micro 等)有多少内核、RAM、带宽等可用。有什么办法可以用 python 做到这一点?

我最接近的是像这样使用 boto3:

import boto3

ec2 = boto3.resource('ec2')
instance = ec2.Instance('id')  #how to change this, brute force?

任何有关此问题的帮助将不胜感激,谢谢!

如果要打印给定实例的所有属性,可以使用该特定实例的过滤器执行 describe 调用。 请注意,这是一个“客户”调用,而不是“资源”调用。 这意味着,您将获得一个 JSON 输出,而不是一个对象。 了解一个实例的所有属性是非常好的。

import boto3
from pprint import pprint

instance_id = 'i-xxxxxxxxx'
ec2_client = boto3.client('ec2')
pprint(ec2_client.describe_instances(Filters=[{'Name': 'instance-id', 'Values': [instance_id]}]))

该文档列出了所有属性,包括方法、集合等。 https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html#instance

这是实例 ID 和实例状态的示例。 您可以向其中添加更多参数。

import boto3
ec2 = boto3.resource('ec2')
for instance in ec2.instances.all():
    print (instance.id , instance.state)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM