1. 下载
使用版本2.1.1
2. 安装
2.1. 前提
已安装ZooKeeper
,可参考 20190311 Windows安装ZooKeeper 进行安装ZooKeeper
2.2. 修改config/server.properties
配置文件
log.dirs=E:\Develop\kafka\2.11-2.1.1\kafka_2.11-2.1.1\kafka-logs
2.3. 启动ZooKeeper,成功后,启动Kafka
第一次启动报错,原因是环境变量中的JAVA_HOME中路径中不能有空格
PS E:Developkafka2.11-2.1.1kafka_2.11-2.1.1> .inwindowskafka-server-start.bat .configserver.properties
命令语法不正确。
错误: 找不到或无法加载主类 FilesJavajdk1.8.0_151lib;C:Program
我当前的JAVA_HOME是
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1>echo %JAVA_HOME%
C:Program FilesJavajdk1.8.0_151
修改为:
C:Javajdk1.8.0_151
修改后,也会提示:
命令语法不正确。
但是,确实是正常启动。
2.4. 测试启动成功
2.4.1. 创建一个topic
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1> .inwindowskafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
错误: 找不到或无法加载主类 FilesJavajdk1.8.0_151lib;C:Program
在网上查询后,找到解决方案,修改bin/windows/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% %*
再次运行创建命令,创建成功
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1>.inwindowskafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".
2.4.2. 查看topic的list
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1>.inwindowskafka-topics.bat --list --zookeeper localhost:2181
test
2.4.3. 启动生产者和消费者进行通信
生产者:
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1>.inwindowskafka-console-producer.bat --broker-list localhost:9092 --topic test
>abcd
>xxx
>
消费者:
E:Developkafka2.11-2.1.1kafka_2.11-2.1.1>.inwindowskafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
abcd
xxx