windows系统下安装测试kafka

1.下载kafka安装包

kafka阿里云镜像站下载链接,选择kafka_2.13-3.7.2.tgz就行

安装kafka前电脑必须已经安装了JDK

注意:解压完kafka安装包后,包的路径不能过长,过长cmd执行会失败

解压目录结构如下:

sh 复制代码
C:\kafka
├─ bin\windows  # Windows专用脚本(.bat文件)
├─ config       # 配置文件
├─ libs         # 依赖库
└─ logs         # 默认日志目录(可修改)

2.修改Kafka配置文件

  1. 修改Zookeeper配置(config/zookeeper.properties)

    sh 复制代码
    # 找到并修改dataDir(Zookeeper数据存储目录)
    dataDir=C:/kafka/data/zookeeper  # 注意用正斜杠(/)或双反斜杠(\\)
    clientPort=2181  # 默认端口,无需修改

3.修改Kafka Broker配置(config/server.properties)

Kafka服务的核心配置,需修改日志存储路径:

sh 复制代码
# 找到并修改log.dirs(Kafka消息日志存储目录)
log.dirs=C:/kafka/data/kafka  # 注意用正斜杠(/)或双反斜杠(\\)
# 其他默认配置保持不变:
broker.id=0  # 单机模式用0即可
listeners=PLAINTEXT://localhost:9092  # 监听地址和端口
zookeeper.connect=localhost:2181  # 连接本地Zookeeper

4.创建数据目录

手动创建上一步配置中指定的目录(避免启动时因目录不存在报错):

  • C:\kafka下新建data文件夹。
  • data下分别新建zookeeperkafka文件夹(对应配置中的dataDirlog.dirs)。

5.启动 Kafka 服务(必须按顺序启动)

1. 启动 Zookeeper

在第一个命令行窗口中执行:

bash 复制代码
# 切换到Kafka安装目录
cd C:\kafka

# 启动Zookeeper(使用Windows脚本和配置文件)
bin\windows\zookeeper-server-start.bat config\zookeeper.properties
2. 启动 Kafka Broker

在第二个命令行窗口中执行:

bash 复制代码
# 切换到Kafka安装目录
cd C:\kafka

# 启动Kafka Broker(使用Windows脚本和配置文件)
bin\windows\kafka-server-start.bat config\server.properties

启动成功的标志:最后一行显示[KafkaServer id=0] started (kafka.server.KafkaServer)

6.验证Kafka是否可用

打开第三个命令行窗口,执行以下操作验证:

1. 创建一个测试主题(Topic)
bash 复制代码
# 切换到Kafka安装目录
cd C:\kafka

# 创建名为"test-topic"的主题(分区数1,副本数1,单机模式只能用1个副本)
bin\windows\kafka-topics.bat --bootstrap-server localhost:9092 --create --topic test-topic --partitions 1 --replication-factor 1

成功提示:Created topic test-topic.

2. 启动生产者(发送消息)
bash 复制代码
# 启动控制台生产者,向test-topic发送消息
bin\windows\kafka-console-producer.bat --bootstrap-server localhost:9092 --topic test-topic

启动后可直接输入消息(如Hello Kafka!),按回车发送。

3. 启动消费者(接收消息)

打开第四个命令行窗口,执行:

bash 复制代码
# 切换到Kafka安装目录
cd C:\kafka

# 启动控制台消费者,从test-topic接收消息(--from-beginning表示从最早消息开始消费)
bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test-topic --from-beginning

此时在生产者窗口输入的消息,会实时显示在消费者窗口,说明 Kafka 正常工作。

附注:此方式为窗口启动,窗口为kafka的父进程,窗口关闭服务退出

相关推荐
allanGold21 小时前
【virtualbox】【windows】已有虚拟机存储容量调整方法
windows·virtualbox
小宇的天下1 天前
Calibre eqDRC(方程化 DRC)核心技术解析与实战指南(14-1)
数据库·windows·microsoft
小股虫1 天前
分布式事务:在增长中台,我们如何做到“发出去的内容”和“记录的数据”不打架?
分布式·微服务·云原生·架构·团队建设·方法论
是三好1 天前
分布式事务seata
java·分布式·seata
optimistic_chen1 天前
【Redis 系列】常用数据结构---Hash类型
linux·数据结构·redis·分布式·哈希算法
yuankunliu1 天前
【分布式事务】4、分布式事务Seata的高级应用详解
分布式
YIN_尹1 天前
【C++11】lambda表达式(匿名函数)
java·c++·windows
java1234_小锋1 天前
ZooKeeper集群中服务器之间是怎样通信的?
分布式·zookeeper·云原生
love530love1 天前
【探讨】“父级/基环境损坏,子环境全部失效”,如何避免 .venv 受父级 Python 损坏影响?
java·开发语言·人工智能·windows·python·编程·ai编程
企鹅侠客1 天前
第06章—实战应用篇:List命令详解与实战(上)
数据结构·windows·redis·list