以下是该方案:
只要我在同一个远程服务器上启动该进程,我的kafka服务器和zookeeper就在远程服务器上正常运行。
我的本地计算机和服务器之间没有任何连接问题。我可以从本地计算机ssh并访问远程服务器上的所有其他应用程序。
尝试直接从本地计算机将客户端连接到远程zookeeper时,会出现连接超时。调试显示正在抛出NoRouteToHost异常。
客户端日志文件包含以下行:
org.apache.zookeeper.ZooKeeper: Initiating client connection, connectString=remotehost:2181 sessionTimeout=120000
watcher=org.I0Itec.zkclient.ZkClient@62807a4d
org.apache.zookeeper.ClientCnxn: Opening socket connection to server
remotehost/192.13.12.1:2181. Will not attempt to authenticate using
SASL (unknown error)
注意" remotehost / 192.13.12.1:2181"。我指定的URL是remotehost:2181。他似乎正确地将主机名解析为IP,然后......将正斜杠和IP打开到URL,这对我来说很奇怪。这是他应该如何解决并传递到套接字的URL?或者这是我的问题的原因。
答案 0 :(得分:1)
发现了这个问题。 zookeeper监听端口未对防火墙开放。