实现功能:在一台虚拟机上对另一台虚拟机作控制。当然pexpect也行,只是pexpect要对方的账户权限。而SimpleXMLRPCServer取消了这个壁垒。可以在忽略账户的基础上,对另一台机器做指定内容的访问控制。
原理:被访问的机器作为一个Server端,并且提供指定服务;访问机器作为Client端,连接到Server,调用指定接口实现对Server机器的特定服务进行操作。
Eq: #helloserver.py
from SimpleXMLRPCServer import SimpleXMLRPCServer
def hello():
print "hello,world!" svr=SimpleXMLRPCServer(("", 8080), allow_none=True)
svr.register_function(hello)
svr.serve_forever()
#helloclient.py
from xmlrpclib import ServerProxy
svr=ServerProxy("http://localhost:8080")
svr.hello()
先后运行helloserver.py和 helloclient.py就可以看到控制台输出hello,world