为什么 dispy 客户端联系时 dispynode return "ignoring ping"?

Why does dispynode return "ignoring ping" when contacted by dispy client?

我正在使用 Centos6.5 服务器集群,其中我有一个头节点,其余为从节点。这些节点通过本地网络 192.168 上的交换机连接。1.x 这对外界是不可见的。

我正在尝试在头节点上使用 Python Dispy 在从属节点上分发 Python 脚本。从属节点都在运行 dispynode.py,当我在客户端节点上启动 Dispy 程序时,从属节点正在运行 dispynode.py return "ignoring ping from 192.168.1.1"。然后它就挂起。关于为什么运行 dispynode 的从属忽略并且不运行该作业有什么想法吗?

谢谢!

答案如上@Rich所述,版本必须相同。当客户端节点和服务器节点具有不同版本时,Dispy 不会 return 一个非常有用的错误消息。它们必须具有相同的版本号才能正常通信。我在 dispynode.py:

的源代码中找到了这个
try:
                info = unserialize(msg[len('PING:'):])
                assert info['version'] == _dispy_version
                if info['ip_addr'] is None:
                    addr = (addr[0], info['port'])
                else:
                    addr = (info['ip_addr'], info['port'])
except:
                logger.debug('Ignoring ping message from %s (%s)', addr[0], addr[1])
                continue

注意断言版本行。