python - 如何使用 boto 检索 ec2-image 的状态?

标签 python amazon-web-services amazon-ec2 boto

在我的代码中,我尝试从 AMI 创建图像,然后检查新图像的状态。然而,我正在努力弄清楚图像的状态。这是我尝试过的最后一件事:

package_name = "RAY"
promotion_id = "101-234"

print "[....] Package Install Complete"
print "[....] Proceeding to Bake AMI"

imagename = package_name + promotion_id
newimageid = conn.create_image(instance_id=bakeryinstanceid, name=imagename, description="Please Work"  )

print "[....] The new Base AMI ID for ", package_name, "is", newimageid

image_status = newimageid.state

这是我得到的错误:

Traceback (most recent call last):
File "./imagecreate.py", line 58, in <module>
image_status = newimageid.state
AttributeError: 'unicode' object has no attribute 'state'

查看新镜像状态的最佳方式是什么?

最佳答案

我相信 create_image() 返回一个包含图像 id 的字符串,而不是 Image 对象。使用您的示例,您应该这样做:

image_status = get_image(newimageid)

image_status.state 然后应该保存一个显示图像状态的字符串,可能的值包括“pending”、“available”和“failed”。

http://boto.readthedocs.org/en/latest/ref/ec2.html#boto.ec2.connection.EC2Connection.get_image http://boto.readthedocs.org/en/latest/ref/ec2.html#boto.ec2.connection.EC2Connection.create_image

关于python - 如何使用 boto 检索 ec2-image 的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24039944/

相关文章:

python - 在Python中为每个正则表达式匹配添加后缀?

amazon-web-services - cloudformation中的AWS属性输出和ImportValue是什么

linux - 为什么 cd 会调用函数 ':' ?

python - 如何在linux终端中再次打开进程?

Python 对管道和大文件的子处理

amazon-web-services - 使用 boto3 启动多个实例并等待它们完全启动

amazon-web-services - 如何处理 Amazon CloudFront 中有空格的文件?

ssl - AWS 和 SSL 以及修改 EC2 实例的选项

使用 Neo4j 托管 Grails 来读取/写入文件

php - 我将如何使用 Python 代码扩展我的 PHP 代码库?