如何使用Boto获取已启动实例的IP地址

时间:2014-07-03 07:00:20

标签: python amazon-ec2 boto openstack

我使用boto

在openstack中启动实例
myinstance = conn.run_instances('ami-0000007d',min_count=1,max_count=1, instance_type = 'm1.small')

newmachine=myinstance.instances[0]

newMachine具有与已启动实例相关的信息。我试过了

vars(newmachine)

并且变量的ip_address和private_ip_address为空。如何获取已启动实例的ip_address?

1 个答案:

答案 0 :(得分:11)

刷新值,直到实例进入运行状态。此时,应该存在IP(并不是说在实例运行状态之前你可以对IP做任何事情)。

reservation = conn.run_instances(...)

instance = reservation.instances[0]

while instance.update() != "running":
    time.sleep(5)  # Run this in a green thread, ideally

print instance.ip_address