windows 部署 Kafka3.x KRaft 模式 不依赖 ZooKeeper

1.下载

复制代码
https://archive.apache.org/dist/kafka/3.9.0/kafka_2.12-3.9.0.tgz

2.配置使用 KRaft 模式

2.1 修改 Kafka 的配置文件

cd D:\data\bigdata\kafka_2.12-3.9.0\config\kraft

修改 server.properties

复制代码
# 设置 Kafka 数据日志存储目录
log.dirs=D:\\data\\bigdata\\kafka_2.12-3.9.0\\data

2.2 生成数据目录ID:

cd D:\data\bigdata\kafka_2.12-3.9.0\bin\windows

复制代码
.\kafka-storage random-uuid

报错

复制代码
D:\data\bigdata\kafka_2.12-3.9.0\bin\windows>.\kafka-storage random-uuid
输入行太长。
命令语法不正确。

解决办法

修改 kafka-run-class.bat

复制代码
注释93 ~ 95 行,这三行的作用是拼接 classpath
注释174 ~ 177 行,这四行的作用是判断 classpath 是否定义,如果未定义则退出。因为要直接指定目录了,所以不需要 classpath 了。
修改179行,将%CLASSPATH%替换成%BASE_DIR%\libs\*

再次执行

复制代码
D:\data\bigdata\kafka_2.12-3.9.0\bin\windows>.\kafka-storage random-uuid
cM-TcxmfSBSaic6aa8Wxvg

命令格式化数据目录,--cluster-id (上一步的数据目录ID)

复制代码
.\kafka-storage.bat format --config ../../config/kraft/server.properties --cluster-id  cM-TcxmfSBSaic6aa8Wxvg

D:\data\bigdata\kafka_2.12-3.9.0\bin\windows>.\kafka-storage.bat format --config .../.../config/kraft/server.properties --cluster-id cM-TcxmfSBSaic6aa8Wxvg

Formatting metadata directory D:\data\bigdata\kafka_2.12-3.9.0\data with metadata.version 3.9-IV0.

3.启动

复制代码
.\kafka-server-start.bat ../../config/kraft/server.properties

4. 验证

复制代码
 .\kafka-topics --bootstrap-server localhost:9092 --list

如果配置和启动正确,能看到一个空的主题列表(因为没有创建任何主题)。

5. 创建一个测试主题

复制代码
.\kafka-topics.bat --bootstrap-server localhost:9092 --create --topic test --partitions 1 --replication-factor 1

6. 生产和消费消息

测试生产和消费消息来验证 Kafka 是否工作正常:

生产消息:

复制代码
.\kafka-console-producer.bat --bootstrap-server localhost:9092 --topic test

消费消息:

复制代码
.\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
相关推荐
大数据CLUB9 分钟前
酒店预订数据分析及预测可视化
大数据·hadoop·分布式·数据挖掘·数据分析·spark·mapreduce
无名-CODING1 小时前
Java集合List详解:从入门到精通
java·windows·list
分数不是数3 小时前
华硕ROC奥创中心Armoury Crate服务崩溃解决办法
windows
morn_venus3 小时前
wmi获取禁用网卡的mac地址
windows
李宥小哥4 小时前
行为型设计模式2
windows·设计模式
vortex56 小时前
RDP 启用多用户会话(当前用户无感知)
windows·网络安全·渗透测试
不见长安在7 小时前
分布式ID
java·分布式·分布式id
qq_316837757 小时前
jmeter 分布式压测
分布式·jmeter
Hello.Reader8 小时前
基于 Flink CDC 的 MySQL → Kafka Streaming ELT 实战
mysql·flink·kafka
西岭千秋雪_9 小时前
Zookeeper实现分布式锁
java·分布式·后端·zookeeper·wpf