当前位置: 首页 > news >正文

Windows安装Kafka(kafka_2.12-3.9.1),配置Kafka,以及遇到的困难解决方案

Windows安装Kafka(kafka_2.12-3.9.1),配置Kafka,以及遇到的困难解决方案

目录

下载 Kafka

依赖项

安装

配置日志目录

修改配置文件

初始化存储目录

小插曲

启动 Kafka

验证 Kafka 是否正常工作


下载 Kafka

访问 Apache Kafka 官网,选择 Binary Downloads,下载 kafka_2.13-4.0.0.tgz(支持 Windows/Linux)。

依赖项

Kafka 4.0 基于 JDK 17 编译,需提前安装并配置 JAVA_HOME 环境变量。

安装

将压缩包解压至短路径目录(如:E:\Kafka)

配置日志目录

创建 Kafka 日志目录(如 E:\Kafka\data\kafka\kafka-logs)。

修改配置文件

打开 config\server.properties,修改以下关键参数:

# 日志路径(使用双反斜杠)
log.dirs=E:\\Kafka\\data\\kafka\\kafka-logs

初始化存储目录

生成集群 ID:

// 进入目录:E:\Kafka\kafka\bin\windows下
// 输入命令
kafka-storage.bat random-uuid

输出示例如下:

上述日志中有个错误提示可以忽略。记录此ID:JnhYFIOcRXipOJdyvUlVcA
打开 config\server.properties,增加以下关键参数:

# 集群唯一标识(之前生成的 UUID)
cluster.id=JnhYFIOcRXipOJdyvUlVcA
# 控制器选举配置(单机模式示例)
controller.quorum.voters=1@localhost:9093

Kafka 4.0 默认使用 KRaft 模式(Kafka Raft Metadata),取代了旧版的 ZooKeeper。在 KRaft 模式下,controller.quorum.voters 是必需配置,用于指定集群的控制器节点。

格式化日志目录:

// 进入目录:E:\Kafka\kafka\bin\windows下
kafka-storage.bat format -t JnhYFIOcRXipOJdyvUlVcA -c ..\..\config\kraft\server.properties

表明 Kafka 存储格式化成功

小插曲

这个错误表明您正在尝试使用 KRaft 模式格式化存储,但配置文件是针对 旧版的 Zookeeper 模式的。Kafka 从 3.0 版本开始引入了 KRaft 模式(不再需要 Zookeeper)。

所以应该使用kraft版本的配置文件

# 使用 kraft 版本的配置文件
kafka-storage.bat format -t JnhYFIOcRXipOJdyvUlVcA -c ..\..\config\kraft\server.properties

启动 Kafka

bin\windows 目录下执行:

kafka-server-start.bat ..\..\config\kraft\server.properties

成功标志:日志输出如下内容且无致命错误:

验证 Kafka 是否正常工作

新开两个cmd窗口

#创建一个名为 test-topic 的主题:
E:\Kafka\kafka\bin\windows>kafka-topics.bat --create --topic test-topic --partitions 1 --replication-factor 1 --bootstrap-server localhost:9092

#验证刚刚创建的主题是否正确添加:
E:\Kafka\kafka\bin\windows>kafka-topics.bat --list --bootstrap-server localhost:9092
test-topic

#发送和接收消息
E:\Kafka\kafka\bin\windows>kafka-console-producer.bat --bootstrap-server localhost:9092 --topic test-topic
>Hello Kafka
>this is a test message
>i am codesandwich

#在另一个cmd窗口
E:\Kafka\kafka\bin\windows>kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test-topic --from-beginning
Hello Kafka
this is a test message
i am codesandwich

圆满成功!!!

如果我的内容对你有帮助,请辛苦动动您的手指为我点赞,评论,收藏。感谢大家!!

http://www.zskr.cn/news/8898.html

相关文章:

  • Chapter 5 Wrap Perspective
  • 手动清除Ubuntu系统中的内存缓存
  • 插值相关
  • 详解scheduleAtFixedRate 与 scheduleWithFixedDelay 的区别
  • 模拟输入的过程
  • Manim实现水波纹特效
  • CSP 2025 S1 游记
  • JS之使用for...of赋值失败的原因分析
  • Linux /lib/modules/$(uname -r)/ 目录功能作用详解
  • 软件工程第二次作业_个人项目
  • Chapter 3 Resize and Cropping
  • 解决Kubernetes集群中master节点无法与node节点通信的策略
  • 配置Nginx以支持Websocket连接的方法
  • Extundelete工具恢复数据
  • 最新!!!MySQL环境搭建(windows系统) - 详解
  • SQLite数据库 - 教程
  • 【Bluedroid】A2DP Source 音频流暂停流程解析[3]:AVDTP 协议中 Suspend Accept 响应的处理流程与建立分析(Suspend Accept)
  • Mysql查询条件里的字符串不加引导索引失效
  • 详细介绍:在Ubuntu平台搭建RTMP直播服务器使用SRS简要指南
  • 实用指南:在 k8s 上部署 Kafka 4.0 3节点集群
  • 完整教程:VLAN划分——TRUNK
  • 现代操作系统-音频处理技术1 Linux驱动底层
  • 智元首次明确七人合伙人团队
  • ABC424
  • 解决 Windows 无法挂载 HTTP WebDAV(AList,OpenList)的问题
  • HN CSP-S 2024 游记
  • 关于oj在创建文件夹失败的原因
  • 图解15:DNS工作原理
  • 图解12:软件开发8大模型
  • 图解13:软件版本是怎么命名的