Zookeeper 启动失败【Cannot open channel to 3 at election address...】

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: 解决Hadoop Zookeeper连接问题:检查Zookeeper目录权限,使用`sudo chown -R username:username /your_zookeeper_path`授权。确保`zoo.cfg`配置`quorumListenOnAllIPs=true`并监听所有IP。关键是机器ID(如`server.0`, `server.1`等)需与IP或主机名对应,修正`zoo.cfg`中的设置,例如`server.0=hadoop120:2888:3888`等。重启Zookeeper后,问题解决。

@[toc]

完整报错信息

Cannot open channel to 3 at election address hadoop121/192.168.10.121:3888 java.net.ConnectException

解决方法

1.检查文件夹权限

检查当前用户是否拥有 Zookeeper 安装目录管理权限,没有的话需要进行授权:

sudo chown -R username:username /your_zookeeper_path

2.未监听所有IP

zoo.cfg 文件中授权监听所有 IP:

quorumListenOnAllIPs=true

添加完成后,注意分发到其它节点!

3.IP映射名称与 ID 不对应

我碰到的就是这种情况,排查了很久,服务以及端口都正常启动了,但是查看日志还是发现无法连接,zkCli.sh 中也一直报错。

image.png

在 Zookeeper 的官网发现,机器编号 ID 需要与 IP 或 IP 映射名称对应,我刚开始看还没反应过来。

我当前共有三台机器,如下所示:

192.168.10.120 hadoop120
192.168.10.121 hadoop121
192.168.10.122 hadoop122

那么你的 Zookeeper 机器编号 ID 必须是 012

然后在 zoo.cfg 配置文件中进行对应设置

server.0=hadoop120:2888:3888
server.1=hadoop121:2888:3888
server.2=hadoop122:2888:3888

重新启动 Zookeeper 查看服务运行状态:

image.png

问题解决,成功启动。

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
7月前
分布式系列教程(25) -解决Zookeeper启动失败的问题
分布式系列教程(25) -解决Zookeeper启动失败的问题
182 0
|
Java Apache
Apache ZooKeeper - Leader Election使用场景
Apache ZooKeeper - Leader Election使用场景
61 0
zookeeper启动失败:【zkServer.sh status Error contacting service. It is probably not running】
zookeeper启动失败:【zkServer.sh status Error contacting service. It is probably not running】
203 0
zookeeper启动失败:【zkServer.sh status Error contacting service. It is probably not running】
|
Linux
关于ZooKeeper在Linux端启动失败的问题解决方案
关于ZooKeeper在Linux端启动失败的问题解决方案
363 0
关于ZooKeeper在Linux端启动失败的问题解决方案
Zookeeper应用之——选举(Election)
请注意,此篇文章并不是介绍Zookeeper集群内部Leader的选举机制,而是应用程序使用Zookeeper作为选举。 使用Zookeeper进行选举,主要用到了Znode的两个性质: 临时节点(EPHEMERAL) 序列化节点(SEQUENCE) 每一个临时的序列化节点代表着一个客户端(client),也就是选民。
1487 0
|
监控 Linux 网络安全
zookeeper使用和原理探究 (注意linux下防火墙导致启动失败的坑,使用service iptables stop 关闭防火墙 使用service iptables status确认)
转  http://www.blogjava.net/BucketLi/archive/2010/12/21/341268.html zookeeper使用和原理探究(一) zookeeper介绍zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目中的一个子项目,并且根据google发表的论文来实现的,接下来我们首先来安装使用下这个软件,然后再来探索下其中比较重要一致性算法。
1623 0
|
1月前
|
监控 负载均衡 Cloud Native
ZooKeeper分布式协调服务详解:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入剖析ZooKeeper分布式协调服务原理,涵盖核心概念如Server、Client、ZNode、ACL、Watcher,以及ZAB协议在一致性、会话管理、Leader选举中的作用。讨论ZooKeeper数据模型、操作、会话管理、集群部署与管理、性能调优和监控。同时,文章探讨了ZooKeeper在分布式锁、队列、服务注册与发现等场景的应用,并在面试方面分析了与其它服务的区别、实战挑战及解决方案。附带Java客户端实现分布式锁的代码示例,助力提升面试表现。
416 2
|
1月前
|
监控 Dubbo 前端开发
快速入门分布式系统与Dubbo+zookeeper Demo
快速入门分布式系统与Dubbo+zookeeper Demo
417 0
|
1月前
|
消息中间件 Java 网络安全
JAVAEE分布式技术之Zookeeper的第一次课
JAVAEE分布式技术之Zookeeper的第一次课
520 0

热门文章

最新文章