我正在使用
Python来启动ec2实例,在我获得实例的“运行”状态后,我正在尝试使用SCP脚本并通过ssh运行它.
我收到以下错误
“ssh:连接到主机ec2-xx-xxx-xxx-xxx.compute-1.amazonaws.com端口22:连接被拒绝”
当我检入控制台时,状态检查是“正在初始化”,一旦它改变“2/2检查通过”,我就可以ssh或运行任何脚本.
有什么办法可以通过python boto API获得“状态检查”吗?
我使用的是Python 2.7.5,
boto 2.19.0
提前致谢.
最佳答案 简单的方法是使用套接字模块检查新创建的实例的端口22是否可访问
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect(('hostname', 22))
print "Port 22 reachable"
except socket.error as e:
print "Error on connect: %s" % e
s.close()
当您能够到达端口22时,您可以调用ssh到它.