使用Boto API时,EBS卷停留在“创建”上

时间:2013-05-23 20:39:33

标签: amazon-web-services boto amazon-ebs

我正在尝试使用Boto创建新的EBS卷并将其附加到现有实例。 Boto脚本正在实例本身上运行。

问题是状态在很多时候不断返回'创造'。 (令人沮丧的是,并非总是!)代码片段是:

volume = conn.create_volume(args.ebs_volume_size, instance.placement)

status = ''
while status != 'available':
    status = conn.get_all_volumes([volume.id])[0].status
    print "Volume status: %s" % status
    time.sleep(4)

大多数情况下,即使卷已创建且可用(它可以在管理控制台中看到已准备就绪),它仍会依赖于“创建”。有时,它工作正常。我必须遗漏一些明显的东西......但是什么呢?

1 个答案:

答案 0 :(得分:1)

在运行create_volume方法后,立即在新创建的卷上调用update。

volume = conn.create_volume(args.ebs_volume_size, instance.placement)

while volume.status != 'available':
    time.sleep(5)
    volume.update()
    print volume.status