myid文件缺失导致zookeeper无法启动(myid file is missing)
2016-04-13 21:37
537 查看
myid文件缺失
现象 :zookeeper无法启动;异常 :$dataDir/myid file is missing;
原因 :zk集群中的节点需要获取myid文件内容来标识该节点,缺失则无法启动;
解决 :在zk数据文件存放目录下(见 $ZK/conf/zoo.cfg,dataDir属性),创建myid文件并写入一个数字用来标识本节点(类似这个节点的身份证)。
详细异常如下:
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /home/crxj-coll/zookeeper-3.4.5/bin/../conf/zoo.cfg at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:121) at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:101) at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:78) Caused by: java.lang.IllegalArgumentException: /var/tmp/zookeeper/myid file is missing at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:344) at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:117) ... 2 more Invalid config, exiting abnormally
处理过程:
更改zookeeper/conf/zoo.cfg,找到dataDIr,修改如下:(在你的zookeeper目录下创建data文件夹)
dataDir=$ZK_HOME/data
在data文件夹中
创建myid文件,在里面设置一个数字(每个节点的这个数字不能一样)
之后zookeeper就可以正常启动了!
相关文章推荐
- 数据库事务的隔离级别
- 1004 Toxophily
- 【c语言】用辗转相除法求最大公约数和最小公倍数
- You have not concluded your merge (MERGE_HEAD exists)
- (1)Java设计模式-工厂方法模式(Factory Method)
- 故事讲解:我是一个线程
- C++ pair的比较大小
- POJ3233
- POJ3070
- 模拟器综合症
- ListView的优化
- 【c语言】将字符数组s2中的全部字符复制到字符数组s1中,不要用strcpy函数,'\0'也复制过去,'\0'后面的字符不复制
- 《Linux内核分析》 第八节 进程的切换和一般的执行过程
- AWS十周年,亚马逊cto总结的10个教训
- 约瑟夫问题求解
- 说说 UINavigationBar 中的 translucent 属性
- VideoView 官方
- Learning Scrapy笔记(零) - 前言
- 故事讲解:我是一个线程
- OneZero第四周第三次站立会议(2016.4.13)