我一直在使用fabric 和boto 来启动新的ec2 主机以进行一些临时处理,但我一直无法知道何时可以连接到主机。问题是我可以询问 ec2 什么时候准备好,但它从来没有真正准备好。
这是我注意到效果最好的过程(尽管它仍然很烂):
- 轮询 ec2,直到它说它“活动”的主机
- 轮询 ec2 直到它有一个
public_dns_name
- 尝试循环连接到新主机,直到它接受连接
但有时它似乎在知道我与之关联的 ssh 密钥对之前就接受了连接,然后要求输入密码。
有没有更好的方法来决定在我的 ec2 主机启动后何时可以开始连接它们?有没有人写过一个库可以很好地有效地做到这一点?