zookeeper启动报错:serverid is not a number
问题
启动zookeeper时,启动失败:
查看logs下面的日志,发现了这个错误。
ERROR [main:o.a.z.s.q.QuorumPeerMain@99] - Invalid config, exiting abnormally
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /Users/tingchang.fan/Downloads/DevelopApplication/zookeeper-cluster/zookeeper-3/bin/../conf/zoo.cfg
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:198)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:125)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:91)
Caused by: java.lang.IllegalArgumentException: serverid {
\rtf1\ansi\ansicpg936\cocoartf2636 is not a number
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.setupMyId(QuorumPeerConfig.java:741)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.setupQuorumPeerConfig(QuorumPeerConfig.java:660)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:487)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:194)
... 2 common frames omitted
错误原因
原因是我用的是Mac自带的文本编辑创建的myid文本,但是后面用vi打开myid后发现里面的内容不止是数字:
解决
使用vi,将其他字符删去。
切记:以后创建文件最好用控制台去创建,否则可能会有额外的字符。