Zookeeper 异常 ConnectionLossException 怎么办?

问答 Furing ⋅ 于 2018-01-26 15:12:24 ⋅ 最后回复由 青牛 2018-03-06 00:39:58 ⋅ 5660 阅读

一、appps/zookeeper3.4.5/conf/zoo.cfg配置
file
二、防火墙状态
2.1、Windows防火墙状态
file
2.2、Linux防火墙状态
file
三、Windows可ping通虚拟机IP
file
四、通过SecureCRT对打开zookeeper(三个虚拟机中zookeeper均正常)
file
file
五、Java代码
package cn.itcast.bigdata.zk;
import java.io.IOException;
import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.ZooDefs.Ids;

public class SimpleZKClient_1 {
    private static final String connectString = "192.168.64.102:2181,192.168.64.103:2181,192.168.64.104:2181";
    private static final int sessionTimeout = 2000;
    public static void main(String[] args) throws Exception {
        ZooKeeper zkClient = new ZooKeeper(connectString,sessionTimeout, new Watcher() {
            @Override
            public void process(WatchedEvent event) {
                // TODO Auto-generated method stub
                System.out.println(event.getType() + "---" + event.getPath());
            }
        });
            String nodeCreated = zkClient.create("/eclipse", "hellozk".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); 
    }
}

六、运行,报错
file

求大神帮助。。。。。

成为第一个点赞的人吧 :bowtie:
回复数量: 8
  • 青牛 海汼部落创始人,80后程序员一枚,曾就职于金山,喜欢倒腾技术做产品
    2018-01-27 00:49:43

    你3个机器zookeeper应该是1个leader,2个follower
    先netstat -apn|grep 2181查看端口是否启用,之后可以在任意一台机器上
    使用zkCli登录一下zookeeper,测试一下是否好使

    file

    确认以上OK。
    再到windows上启用telnet服务,在cmd窗口使用“telnet ip 2181”进行连接测试,或者使用windows上的zkCli.cmd进行连接测试

    以上都没有问题那就只能是你代码的问题了

  • Furing
    2018-01-27 16:37:16

    @青牛 多谢大牛,但还有些问题。

    一、三个zookeeper是1个leader,2个follower时2181端口状态:

    file

    file

    file

    二、用zkCli登录zookeeper并测试:

    2.1、登录后界面

    file

    2.2、测试界面

    file

    三、启动telnet服务

    file

    四、连接测试失败

    file

    求大牛帮助。。

  • 青牛 海汼部落创始人,80后程序员一枚,曾就职于金山,喜欢倒腾技术做产品
    2018-01-27 21:23:22

    @Furing telnet不是这么用的,不是telnet ip 2181而是telnet 192.168.x.x 2181这种

  • 好好学习
    2018-03-04 21:18:07

    为什么我按这个步骤操作之后,其他都正常显示,而到最后telnet ip 2181却什么也不显示?求大神解答

  • 好好学习
    2018-03-04 21:18:57

    @青牛 为什么我按这个步骤操作之后,其他都正常显示,而到最后telnet ip 2181却什么也不显示?求大神解答

  • 青牛 海汼部落创始人,80后程序员一枚,曾就职于金山,喜欢倒腾技术做产品
    2018-03-04 21:26:39

    @好好学习 截图给我看看,我看看是不是正常的telnet结果

  • 好好学习
    2018-03-05 20:25:46

    @青牛

    当telnet ip 2181后显示这个,这是怎么回事呢?

    file

  • 青牛 海汼部落创始人,80后程序员一枚,曾就职于金山,喜欢倒腾技术做产品
    2018-03-06 00:39:58

    @好好学习 这个应该是好使了

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter