网上很多教程说要单独去下载zookeeper,其实不必,安装包已经内置zookeeper。
1. 安装JDK
这个相信大家都会,不说明了。
2.解压安装包文件
假设解压至D盘,解压完为D:\kafka_2.12-2.2.0
3.运行zookeeper
打开命令行,执行
D:\kafka_2.12-2.2.0\bin\windows\zookeeper-server-start.bat D:\kafka_2.12-2.2.0\config\zookeeper.properties
这时大概率报错“找不到或无法加载主类 Files\Java\jdk1.8.0_171\lib\dt.jar;C:\Program”,不要紧张。
修改kafka-run-class.bat中的179行,给%CLASSPATH%加上双引号即可,结果如下:
set COMMAND=%JAVA% %KAFKA_HEAP_OPTS% %KAFKA_JVM_PERFORMANCE_OPTS% %KAFKA_JMX_OPTS%
%KAFKA_LOG4J_OPTS% -cp "%CLASSPATH%" %KAFKA_OPTS% %*
再次执行运行命令,结果为:
不要关闭这个窗口
4.运行kafka
打开新的命令行窗口,执行:
D:\kafka_2.12-2.2.0\bin\windows\kafka-server-start.bat D:\kafka_2.12-2.2.0\config\server.properties
执行结果为:
5.创建主题
让我们创建一个名为“test”的主题,它只包含一个分区,只有一个副本:
D:\kafka_2.12-2.2.0\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
验证主题:
D:\kafka_2.12-2.2.0\bin\windows\kafka-topics.bat --zookeeper localhost:2181 --describe --topic test
返回:
Topic:test PartitionCount:1 ReplicationFactor:1 Configs:
Topic: test Partition: 0 Leader: 0 Replicas: 0 Isr: 0
如果我们运行list topic命令,我们现在可以看到该主题:
D:\kafka_2.12-2.2.0\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181
返回:
test
6.发送一些消息
Kafka附带一个命令行客户端,它将从文件或标准输入中获取输入,并将其作为消息发送到Kafka集群。默认情况下,每行将作为单独的消息发送。
运行生产者,然后在控制台中键入一些消息以发送到服务器。
D:\kafka_2.12-2.2.0\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test
发送
>This is a message
>This is another message
7.启动消费者
Kafka还有一个命令行使用者,它会将消息转储到标准输出。
D:\kafka_2.12-2.2.0\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
得到