Win下的Kafka安装配置
一、准备工作(可以不做,毕竟最新版kafka也不需要zk)
1、Windows下安装Zookeeper
(1)官网下载Zookeeper
官网下载地址
(2)解压Zookeeper安装包到指定目录C:\DevelopApp\zookeeper\apache-zookeeper-3.6.4-bin
(3)在当前目录新建data文件夹,即:C:\DevelopApp\zookeeper\apache-zookeeper-3.6.4-bin\data
(4)进入C:\DevelopApp\zookeeper\apache-zookeeper-3.6.4-bin\conf
,zoo_sample.cfg文件,改名为zoo.cfg
(5)修改配置文件 zoo.cfg,把dataDir=/tmp/zookeeper
修改为C:\\DevelopApp\\zookeeper\\apache-zookeeper-3.6.4-bin\\data
,注意此处的路径一定要使用双斜杠!
(6)添加Zookeeper的系统变量:新建环境变量:ZOOKEEPER_HOME=C:\DevelopApp\zookeeper\apache-zookeeper-3.6.4-bin
,环境变量Path添加%ZOOKEEPER_HOME%\bin
(7)启动Zookeeper服务:zkServer,客户端连接Zookeeper:zkCli
2、Scala
(1)Scala2.11.12官网下载
官网下载地址
(2)本地点击msi文件安装到C:\DevelopApp\Scala
(3)新增环境变量 %SCALA_HOME%=C:\DevelopApp\Scala
,环境变量Path添加条目%SCALA_HOME%\bin
二、kafka4.0的下载安装
1、下载kafka
Kafka下载地址,下载Binary,不要下载Source,自然是.tgz格式,但其实是win&linux合一的安装包,这里下载新版kafka_2.13-4.0.0
,前面的2.13指的是kafka编写的scala版本为2.13,后面的4.0.0为kafka版本。
2、安装配置kafka
(1)注意kafka的文件路径不要过长(路径太深),否则win会报错“输入行太长,语法命令不正确”,这里放在C:\DevelopApp\kafka
。
(2)新建logs文件夹,用于存储日志信息。
(3)进入C:\DevelopApp\kafka\config
,打开文件server.properties
,修改log.dirs为刚才新建的文件夹路径,注意用双斜杠:log.dirs=C:\\DevelopApp\\kafka\\logs
。完成服务器配置文件的日志文件的路径指定。
(4)进入C:\DevelopApp\kafka\bin\windows
(windows文件夹里是win运行的bat文件,外是linux运行的sh文件),在当前目录下,运行终端,如下:
kafka-storage.bat random-uuid
会生成一个随机的cluster.id(集群id),这里为3j3Mo7pURcew1KeUKcvCZw
,然后用这个集群id来格式化日志,在cmd输入:
kafka-storage.bat format --standalone -t 3j3Mo7pURcew1KeUKcvCZw -c ..\..\config\server.properties
执行命令后,会在logs目录下自动生成元数据信息。
3、启动kafka
kafka-server-start.bat ..\..\config\server.properties
到此kafka在win上完成启动,以后只需要直接执行启动kafka这一步就好了。
三、Kafka的简单试用
在目录:C:\DevelopApp\kafka\bin\windows
中
1、Kafka的消息生产者的启动:
kafka-console-producer.bat --bootstrap-server localhost:9092 --topic test1 --property parse.key=true
--property parse.key=true
表示强制发送的消息为键值对,这时key和value中间需要用tab键来分隔,可以不写入这条,则能直接发送value。
2、Kafka的消息消费者的启动:
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test1 --from-beginning
--from-beginning
表示消费消息时会从头开始消费,消费掉历史消息,可以不写入这条,则不会消费历史消息,只能消费实时消息。
3、查看Kafka服务器内的所有topic:
kafka-topics.bat --list --bootstrap-server 127.0.0.1:9092
4、查看Kafka相应的topic下的信息
kafka-topics.bat --describe --topic abcTopic --bootstrap-server 127.0.0.1:9092
5、查看Kafka相应的服务下所有消费者组的group id信息
kafka-consumer-groups.bat --bootstrap-server 127.0.0.1:9092 --list