windows 10 环境下配置kafka,及我所遇到的坑【太坑了】
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了windows 10 环境下配置kafka,及我所遇到的坑【太坑了】,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5584字,纯文字阅读大概需要8分钟。
内容图文
![windows 10 环境下配置kafka,及我所遇到的坑【太坑了】](/upload/InfoBanner/zyjiaocheng/928/06811b3ee8bf4b1a9447ad9c185cd29b.jpg)
十年河东,十年河西,莫欺少年穷
学无止境,精益求精
CSDN上资源下载地址:https://download.csdn.net/download/wolongbb/15420395 【包括kafka /java8/ ZooKeeper】并且和本博客所用版本一致。
一、安装JAVA JDK
1、下载安装包
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
注意:根据32/64位操作系统下载对应的安装包
2、添加系统变量:JAVA_HOME=C:\Java\jdk1.8.0_40
二、安装ZooKeeper
kafka依赖ZooKeeper,因此,在启动kafka之前,应先安装启动ZooKeeper,启动ZooKeeper之前,应先配置ZooKeeper的环境变量。
1、 下载安装包 http://zookeeper.apache.org/releases.html#download
2、 解压并进入ZooKeeper目录,我的目录为:D:\tool\kafka\apache-zookeeper-3.6.2-bin
3、 在目录中的conf文件夹中找到zoo_sample.cfg,并将“zoo_sample.cfg”重命名为“zoo.cfg”
4、 打开“zoo.cfg”找到并编辑 dataDir=./zookeeper-3.4.13/data
5、admin.serverPort端口默认为8080,如果8080被占用,需要指定admin.serverPort端口,在zoo.cfg最后一行增加:admin.serverPort=8001
6、audit.enable 默认为 false,我们设置为 true,在zoo.cfg最后一行增加:audit.enable=true
7、添加系统变量:ZOOKEEPER_HOME=D:\tool\kafka\apache-zookeeper-3.6.2-bin
8、编辑path系统变量,添加路径:%ZOOKEEPER_HOME%\bin
9、在zoo.cfg文件中修改默认的Zookeeper端口(默认端口2181),如果端口2181未被占用,则无需修改。
10、打开新的cmd,输入“zkServer“,运行Zookeeper,cmd需要指定目录:D:\tool\kafka\apache-zookeeper-3.6.2-bin 【注意:我的文件夹命名中带有bin,而不是指向bin文件夹】,也可以在D:\tool\kafka\apache-zookeeper-3.6.2-bin 文件夹中,按住 shift 键,右键鼠标,打开:windows power shell。
11、按照第10步,输入 zkServe 后,如果出现如下界面,则证明ZooKeeper启动成功。
注意:不要关了这个窗口,启动kafka时会用到。
上述11个步骤中,我所遇到的坑如下:
坑1:
下载安装包时,应下载命名中带有bin的文件,不要去下载source文件
通过HTTP下载即可:
坑2:
我的服务器中,admin.serverPort 的默认端口8080被占用了,导致启动时报错,因此,我显式指定了端口为:8001
坑3:
建议增加这个配置:audit.enable=true,关于这个配置,我并不知道干啥用的
三、安装Kafka
1、 下载安装包 :http://kafka.apache.org/downloads 【注意要下载二进制版本】
2、 解压并进入Kafka目录,我的路径:D:\tool\kafka\kafka_2.12-2.7.0
3、 进入config目录找到文件server.properties并打开
4、 找到并编辑:log.dirs=./logs
5、 找到并编辑zookeeper.connect=localhost:2181 【非集群部署的情况下,无需修改】
6、 Kafka会按照默认,在9092端口上运行,并连接zookeeper的默认端口:2181 【注意9092端口不应该被其他程序占用】
7、 进入Kafka安装目录D:\tool\kafka\kafka_2.12-2.7.0\bin\windows,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
kafka-server-start.bat ..\..\config\server.properties
注意:不要关了这个窗口,启用Kafka前请确保ZooKeeper实例已经准备好并开始运行
上述7个步骤中,我遇到的坑如下:
坑1、
环境变量Path要增加,如下截图:
分别如下:
1、ZOOKEEPER_HOME ,kafka依赖,安装ZooKeeper 时,就需要配置
%ZOOKEEPER_HOME%\bin
2、系统路径,这个据说和 wbem 文件夹下的exe有关,没有的话,加上这两个系统路径变量
C:\Windows\System32 C:\Windows\System32\wbem
3、据说和启动kafka有关,经过我的测试,应该没关系,不管有没有关系,加上保险一点。
D:\tool\kafka\kafka_2.12-2.4.0\bin\windows
坑2
进入Kafka安装目录D:\tool\kafka\kafka_2.12-2.7.0\bin\windows,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:kafka-server-start.bat ..\..\config\server.properties
但:
好多博客上都是进入D:\tool\kafka\kafka_2.12-2.7.0 安装路径 ,然后执行:
.\bin\windows\kafka-server-start.bat .\config\server.properties
但,在我测试的过程中,执行 .\bin\windows\kafka-server-start.bat .\config\server.properties 无任何响应。
四、测试
(linux直接在bin目录下.sh,windows需要进入bin\winndows下的.bat)
1、 创建主题,进入Kafka安装目录D:\Kafka\kafka_2.12-0.11.0.0,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
注意:不要关了这个窗口
2、查看主题输入:
.\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181
3、 创建生产者,进入Kafka安装目录D:\Kafka\kafka_2.12-0.11.0.0,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test
注意:不要关了这个窗口
4、 创建消费者,进入Kafka安装目录D:\Kafka\kafka_2.12-0.11.0.0,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
此时,往生产者窗口写入消息,消费者窗口也能同步的接收到消息
5、查看topic,进入Kafka安装目录D:\Kafka\kafka_2.12-0.11.0.0,按下Shift+右键,选择“打开命令窗口”选项,打开命令行,输入:
- .\bin\windows\kafka-topics.bat --describe --zookeeper localhost:2181 --topic
- test
6、 重要(操作日志的处理):
kafka启动后,如果你去查看kafka所在的根目录,或者是kafka本身的目录,会发现已经默认生成一堆操作日志(这样看起来真心很乱):
而且会不断生成不同时间戳的操作日志。刚开始不知所措,一番研究后,看了启动的脚本内容,发现启动的时候是会默认使用到这个log4j.properties文件中的配置,而在zoo.cfg是不会看到本身的启动会调用到这个,还以为只有那一个日志路径:
在这里配置一下就可以了,找到config下的log4j.properties:
将路径更改下即可,这样就可以归档在一个文件夹下边了,路径根据自己喜好定义:
另外如何消除不断生成日志的问题,就是同一天的不同时间会不停生成。
修改这里,还是在log4j.properties中:
本身都为trace,字面理解为会生成一堆跟踪日志,将其改为INFO即可。
参考文献:
https://www.cnblogs.com/xuzimian/p/10138442.html 【我的成功所在】
https://blog.csdn.net/weixin_38004638/article/details/91893910 【CSDN】
https://stackoverflow.com/questions/58754086/answer/submit 【英文站点BBS】
https://zhuanlan.zhihu.com/p/101162159 【知乎】
内容总结
以上是互联网集市为您收集整理的windows 10 环境下配置kafka,及我所遇到的坑【太坑了】全部内容,希望文章能够帮你解决windows 10 环境下配置kafka,及我所遇到的坑【太坑了】所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。