记一次zookeeper启动问题

1,背景,部署大数据组件,由于手动部署比较麻烦,所以自己创建脚本部署,启动zookeeper报错

2,报错如下

  2024-08-02 13:45:11,407 [myid:2] - WARN  [QuorumPeer[myid=2](plain=/0:0:0:0:0:0:0:0:2181)(secure=disabled):QuorumCnxManager@679] - Cannot open 
channel to 1 at election address  com85/10.1.1.85:3888
java.net.ConnectException: Connection refused (Connection refused)
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java:650)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java:707)
        at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectAll(QuorumCnxManager.java:735)
        at org.apache.zookeeper.server.quorum.FastLeaderElection.lookForLeader(FastLeaderElection.java:910)

3,检查config的配文件置没问题,检查最后发现是

server.1=com85:2888:3888

server.2=com86:2888:3888

server.3=com87:2888:3888

这个里面配置的和myid的不同,com85应该是要配置myid=1,结果配置了2,导致起不来

4,原因

在ZooKeeper集群的配置中,‌myid是每个ZooKeeper服务器节点用来标识自己身份的文件,‌通常位于ZooKeeper的数据目录下的myid文件中。‌这个文件包含一个整数,‌用于标识该服务器在ZooKeeper集群中的唯一标识。‌每个服务器节点都有一个唯一的myid,‌这是集群内部用于识别和通信的基础1。‌

而server.1、‌server.2等是在ZooKeeper的配置文件中定义的,‌用于指定集群中各个服务器的地址和端口。‌这些设置告诉ZooKeeper集群如何找到并与其他服务器通信。‌例如,‌server.1=hadoop3:2888:3888表示编号为1的服务器位于hadoop3主机上,‌该主机用于与其他服务器通信的端口为2888,‌而在选举过程中使用的端口为38881。‌

简而言之,‌myid是每个ZooKeeper服务器节点用来标识自己的内部标识符,‌而server.1等则是配置文件中定义的服务器标识和通信信息,‌两者虽然服务于不同的目的,‌但在ZooKeeper集群的上下文中共同作用,‌确保集群的正确运行和服务器之间的通信

相关推荐
运维小文20 分钟前
K8S资源限制之LimitRange
云原生·容器·kubernetes·k8s资源限制
只因在人海中多看了你一眼2 小时前
分布式缓存 + 数据存储 + 消息队列知识体系
分布式·缓存
zhixingheyi_tian5 小时前
Spark 之 Aggregate
大数据·分布式·spark
求积分不加C6 小时前
-bash: ./kafka-topics.sh: No such file or directory--解决方案
分布式·kafka
nathan05296 小时前
javaer快速上手kafka
分布式·kafka
wuxingge9 小时前
k8s1.30.0高可用集群部署
云原生·容器·kubernetes
谭震鸿10 小时前
Zookeeper集群搭建Centos环境下
分布式·zookeeper·centos
志凌海纳SmartX10 小时前
趋势洞察|AI 能否带动裸金属 K8s 强势崛起?
云原生·容器·kubernetes
锅总10 小时前
nacos与k8s service健康检查详解
云原生·容器·kubernetes
BUG弄潮儿11 小时前
k8s 集群安装
云原生·容器·kubernetes