我想使用boto库创建一个新的spot实例,并使用fabric在其上运行一些命令。我使用以下代码
instance = reservations[0].instances[0]
status = instance.update()
tries = 40
i=0
while status == 'pending':
log.info("Status of instance: [ " + job_instance_id + " ] is pending")
time.sleep(10)
status = instance.update()
i=i+1
if i > tries:
break
log.info("Status of instance [ " + job_instance_id + " ] is " + status)
if status == 'running':
log.info("Adding tag")
instance.add_tag("Name", "test_tag")
public_dns_name = instance.public_dns_name
log.info("Host Name : " + public_dns_name)
init_instance(public_dns_name)
在init_instance中,我使用fabric运行一些命令。这些命令有时会失败,并且#34;无法连接到主机"错误。有时它没有任何问题也能正常工作。你能告诉我为什么有时会失败吗?我怎么处理这个?我已经进行了轮询,直到实例的状态发生了变化,即“正在运行”。仅在实例状态移至'运行'
后,才通过ssh运行命令