mac配置kafka 环境报错,解决途径,记录一下:
清华源下载:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.8/
选择bin 下载,然后解压,启动报错如下:
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /Users/malong63/opt/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
mkdir: illegal option -- e
usage: mkdir [-pv] [-m mode] directory ...
Usage: zkServer.sh [--config <conf-dir>] {start|start-foreground|stop|restart|status|print-cmd}
报错应该是创建目录的时候参数错误
把zkServer.sh 113行附近的几个目录都打印出来
113 ZOO_DATADIR="$($GREP "^[[:space:]]*dataDir" "$ZOOCFG" | sed -e 's/.*=//')"
114 echo "ZOO_DATADIR:${ZOO_DATADIR}"
115 ZOO_DATADIR="$(echo -e "${ZOO_DATADIR}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
116
117 echo "ZOO_DATADIR:${ZOO_DATADIR}"
118 ZOO_DATALOGDIR="$($GREP "^[[:space:]]*dataLogDir" "$ZOOCFG" | sed -e 's/.*=//')"
119 echo "ZOO_DATALOGDIR:${ZOO_DATALOGDIR}"
运行
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /Users/malong63/opt/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
ZOO_DATADIR:/Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper
ZOO_DATADIR:-e /Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper
ZOO_DATALOGDIR:
mkdir: illegal option -- e
usage: mkdir [-pv] [-m mode] directory ...
-n Starting zookeeper ...
zkServer.sh: line 172: -e /Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper/zookeeper_server.pid: No such file or directory
FAILED TO WRITE PID
可见 ZOO_DATADIR 第二次过滤出错了多了个 -e , zkServer.sh 里面有两行 ZOO_DATADIR= 把第二行的ZOO_DATADIR 注释掉 , ZOO_DATALOGDIR 为空 需要在conf里面配置dataLogDir=/Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper/log
运行,启动成功
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /Users/malong63/opt/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
ZOO_DATADIR:/Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper
ZOO_DATADIR:/Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper
ZOO_DATALOGDIR:/Users/malong63/opt/apache-zookeeper-3.5.8-bin/data/zookeeper/log
-n Starting zookeeper ...
STARTED

本文记录了在Mac上配置Kafka环境时遇到的报错问题及解决过程,详细介绍了如何修正zkServer.sh脚本中的错误,并在配置文件中正确设置dataLogDir路径,最终成功启动Zookeeper。
807





