【发布时间】:2015-03-16 22:50:20
【问题描述】:
您好,我正在使用 boto 来启动 ec2 现货实例。我无法从实例 ID 获取实例主机名。
从实例本身“wget -q -O - http://169.254.169.254/latest/meta-data/instance-id”有简单的方法
但我正在寻找使用实例 ID 获取元数据的方法
任何帮助
谢谢
【问题讨论】:
标签: python amazon-ec2 automation boto
您好,我正在使用 boto 来启动 ec2 现货实例。我无法从实例 ID 获取实例主机名。
从实例本身“wget -q -O - http://169.254.169.254/latest/meta-data/instance-id”有简单的方法
但我正在寻找使用实例 ID 获取元数据的方法
任何帮助
谢谢
【问题讨论】:
标签: python amazon-ec2 automation boto
实例元数据仅在实例上可用,但您可以使用 EC2 API 获取有关您的实例的大量信息。所以,如果你有实例 ID,你可以这样做:
import boto.ec2
conn = boto.ec2.connect_to_region('us-east-1') # or whatever region you use
reservations = conn.get_all_instances(instance_ids='i-12345678')
instance = reservations[0].instances[0]
print(instance.public_dns_name)
将打印实例的公共 DNS 名称(即主机名)。
这就是你要找的吗?
【讨论】:
instance_ids。它可以是一个 id 列表或只是一个值。我更正了示例代码。