无法用java访问官方的zookeeper docker 集群

如题,我从docker hub拉取了官方的zookeeper镜像,文件如下:

version: '3.1'

services:
  zoo1:
    image: zookeeper
    restart: always
    hostname: zoo1
    ports:
      - 2181:2181
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo2:
    image: zookeeper
    restart: always
    hostname: zoo2
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo3:
    image: zookeeper
    restart: always
    hostname: zoo3
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181

在虚拟机中成功启动,但是在java中生成客户端的时候会报错

public class Zookeeperdemo {
    public static void main(String[] args) throws IOException, KeeperException, InterruptedException {
    // 10.181.56.101 是虚拟机的IP
        String connectString = "10.181.56.101:2181,10.181.56.101:2182,10.181.56.101:2183";
        int sessionTimeout = 2000;
        ZooKeeper zooKeeper;

        zooKeeper = new ZooKeeper(connectString, 3000, watchedEvent -> {
            //TODO: 暂时是一个空事件
        });

    }
}

报错信息如下,比较奇怪,我在docker内部调用zkCli是没有问题的

2020-05-27 19:58:40,819 INFO [org.apache.zookeeper.ZooKeeper] - Initiating client connection, connectString=10.181.56.101:2181,10.181.56.101:2182,10.181.56.101:2183 sessionTimeout=3000 watcher=com.dennis.Zookeeperdemo$$Lambda$1/319977154@17579e0f
2020-05-27 19:58:40,822 INFO [org.apache.zookeeper.common.X509Util] - Setting -D jdk.tls.rejectClientInitiatedRenegotiation=true to disable client-initiated TLS renegotiation
2020-05-27 19:58:41,186 INFO [org.apache.zookeeper.ClientCnxnSocket] - jute.maxbuffer value is 1048575 Bytes
2020-05-27 19:58:41,193 INFO [org.apache.zookeeper.ClientCnxn] - zookeeper.request.timeout value is 0. feature enabled=false
阅读 2.6k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题