myid文件缺失导致zookeeper无法启动(myid file is missing)

本文介绍了解决ZooKeeper集群中myid文件缺失的问题,通过配置zoo.cfg文件并创建myid文件来确保每个节点都有唯一的标识,从而实现ZooKeeper的正常启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

myid文件缺失

现象 :zookeeper无法启动;

异常 :$dataDir/myid file is missing;

原因 :zk集群中的节点需要获取myid文件内容来标识该节点,缺失则无法启动;

解决 :在zk数据文件存放目录下(见 $ZK/conf/zoo.cfg,dataDir属性),创建myid文件并写入一个数字用来标识本节点(类似这个节点的身份证)。

详细异常如下:

[java]  view plain  copy
  1. org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /home/crxj-coll/zookeeper-3.4.5/bin/../conf/zoo.cfg  
  2.   at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:121)  
  3.   at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:101)  
  4.   at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78)  
  5. Caused by: java.lang.IllegalArgumentException: /var/tmp/zookeeper/myid file is missing  
  6.   at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:344)  
  7.   at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:117)  
  8.   ... 2 more  
  9. Invalid config, exiting abnormally  


处理过程:

更改zookeeper/conf/zoo.cfg,找到dataDIr,修改如下:(在你的zookeeper目录下创建data文件夹)

[java]  view plain  copy
  1. dataDir=$ZK_HOME/data      

在data文件夹中

创建myid文件,在里面设置一个数字(每个节点的这个数字不能一样)


之后zookeeper就可以正常启动了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值