Windows 系统上安装 Kafka的详细步骤

 更新时间:2025年11月15日 09:38:35   作者:xc丶卡卡  
本文详细介绍了在Windows系统上安装和配置Apache Kafka的步骤,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧

Windows 系统上安装 Kafka 。以下是详细的步骤指南。

前置条件

  • 1.Java 环境:Kafka 需要 Java 8 或更高版本。这是必须的。
  • 打开命令提示符(CMD)或 PowerShell,输入 java -version进行检查。
  • 如果未安装,请前往 Oracle JavaOpenJDK官网下载并安装。
  • 2.下载 Kafka:访问 Apache Kafka 官网下载页面
  • 下载二进制版本,例如:kafka_2.13-3.6.1.tgz。注意,这是 .tgz压缩包。
  • 重要提示:由于 Windows 不原生支持 .tgz格式,你还需要一个解压工具,如 7-Zip或 PeaZip。

安装步骤(使用 ZooKeeper 的经典方式)

这是最常用和稳定的方式。

步骤 1:下载并解压 Kafka

  • 1.将下载好的 kafka_2.13-3.6.1.tgz文件移动到你想安装的目录,例如 C:\` 根目录或C:\Tools`。
  • 2.右键单击该文件,使用 7-Zip 等工具将其解压。通常需要解压两次:
  • •第一次解压得到 .tar文件。
  • •第二次解压 .tar文件得到最终的文件夹 kafka_2.13-3.6.1
  • 3.为了便于管理,可以将文件夹重命名为 kafka。最终路径可能像 C:\kafka

步骤 2:配置 Kafka(可选,但常需修改)

用记事本或任何文本编辑器打开 C:\kafka\config\server.properties文件。

找到并修改以下行,以解决在 Windows 上可能出现的地址绑定错误:

# 将
# listeners=PLAINTEXT://:9092
# 修改为(注意是 0.0.0.0 而不是 localhost)
listeners=PLAINTEXT://0.0.0.0:9092
# 同样,将 advertised.listeners 也修改为你的主机名或IP(如果是本地学习,用 localhost 即可)
advertised.listeners=PLAINTEXT://localhost:9092

保存并关闭文件。

步骤 3:启动服务

Kafka 的运行依赖于 ZooKeeper。我们需要先启动 ZooKeeper,再启动 Kafka。

重要:​ 你需要打开两个独立的命令提示符(CMD)或 PowerShell 窗口,并且都以管理员身份运行(避免可能出现的权限问题)。两个窗口都需要先进入 Kafka 的安装目录。

# 切换到 Kafka 目录(请根据你的实际路径修改)
cd C:\kafka

窗口 1:启动 ZooKeeper

在第一个窗口中,执行以下命令来启动 ZooKeeper 服务:

.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

这个窗口会开始打印日志,ZooKeeper 将在默认端口 2181上启动。让这个窗口保持打开状态

窗口 2:启动 Kafka Broker

在第二个窗口中,执行以下命令来启动 Kafka 服务:

.\bin\windows\kafka-server-start.bat .\config\server.properties

这个窗口也会开始打印日志,Kafka 将在默认端口 9092上启动。同样,让这个窗口保持打开状态

现在,ZooKeeper 和 Kafka 都已经在你的本地机器上运行起来了。

步骤 4:测试安装(创建主题、发送和接收消息)

现在我们需要打开第三个命令提示符或 PowerShell 窗口(同样建议管理员身份)来测试 Kafka 是否正常工作。

1.

创建一个测试主题(Topic)

在第三个窗口中,进入 Kafka 目录后,运行以下命令创建一个名为 test-topic的主题:

cd C:\kafka
.\bin\windows\kafka-topics.bat --create --topic test-topic --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1

如果成功,你会看到提示 Created topic test-topic

2.

启动一个生产者(Producer)来发送消息

继续在第三个窗口中,运行以下命令启动控制台生产者:

.\bin\windows\kafka-console-producer.bat --topic test-topic --bootstrap-server localhost:9092

命令执行后,光标会等待你输入。键入几条消息,每输完一条按回车,例如:

> Hello, Kafka!
> This is a test message.

3.

启动一个消费者(Consumer)来接收消息

现在,打开第四个命令窗口,进入 Kafka 目录,运行以下命令启动控制台消费者:

cd C:\kafka
.\bin\windows\kafka-console-consumer.bat --topic test-topic --from-beginning --bootstrap-server localhost:9092

启动后,你应该能立刻看到之前在生产者窗口输入的所有消息显示在这个消费者窗口中。

恭喜!你的 Windows Kafka 安装已经成功并可以正常工作了!

作为 Windows 服务安装(推荐用于长期使用)

手动打开多个窗口非常麻烦。我们可以使用第三方工具(如 NSSM)将 ZooKeeper 和 Kafka 安装为 Windows 服务,从而实现开机自启和后台运行。

1.

下载 NSSM:访问 NSSM 官网下载最新版本,解压后根据你的系统(32/64位)将 nssm.exe文件复制到 C:\kafka\bin\windows目录下,或者任何在系统 PATH 环境变量中的目录。

2.

安装 ZooKeeper 服务

以管理员身份打开命令提示符:

nssm install zookeeper

•在弹出窗口的 "Path" 栏,点击 "Browse",找到 C:\kafka\bin\windows\zookeeper-server-start.bat

•在 "Arguments" 栏,输入 C:\kafka\config\zookeeper.properties

•在 "Service name" 栏,确保是 zookeeper

•点击 "Install service"。

3.

安装 Kafka 服务

同样在管理员命令提示符下:

nssm install kafka

•"Path" 栏,浏览选择 C:\kafka\bin\windows\kafka-server-start.bat

•"Arguments" 栏,输入 C:\kafka\config\server.properties

•"Service name" 栏,确保是 kafka

•点击 "Install service"。

4.

启动服务

打开"服务"应用程序(按 Win + R,输入 services.msc),找到 "zookeeper" 和 "kafka" 服务,右键单击并选择"启动"。你也可以通过命令行启动:

net start zookeeper
net start kafka

现在,ZooKeeper 和 Kafka 就会在后台作为服务运行,无需再手动打开命令窗口。

总结

简单测试:按照步骤 1-4 手动启动两个窗口即可。

长期开发/学习:强烈推荐使用 NSSM 将其安装为 Windows 服务,一劳永逸。

到此这篇关于Windows 系统上安装 Kafka的详细步骤的文章就介绍到这了,更多相关Windows 安装 Kafka内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java快速排序及求数组中第k小的值解析

    Java快速排序及求数组中第k小的值解析

    这篇文章主要介绍了Java快速排序及求数组中第k小的值解析,选一个中间值,把数组中比它小的元素放到左边,比它大的元素放到右边,这时形成三个子数组,分别是中间值,比它大的数和比它小的数,然后对前后两个数组进行递归,需要的朋友可以参考下
    2023-11-11
  • Java批量修改文件名的实例代码

    Java批量修改文件名的实例代码

    几天前在163公开课上下了一些mp4视频文件。发现课程名和文件名不对应,想到编个程序批量修改。先分析网页源代码将课程名和文件名一一对应,存储在一个文件里,然后使用Java读取该文件进而修改文件名。
    2013-04-04
  • 谈谈Java中整数类型(short int long)的存储方式

    谈谈Java中整数类型(short int long)的存储方式

    在java中的整数类型有四种,分别是byte short in long,本文重点给大家介绍java中的整数类型(short int long),由于byte只是一个字节0或1,在此就不多说了,对java中的整数类型感兴趣的朋友一起学习吧
    2015-11-11
  • SpringCloud OpenFeign超详细讲解模板化远程通信的实现

    SpringCloud OpenFeign超详细讲解模板化远程通信的实现

    这篇文章主要介绍了SpringCloudSpringboot集成OpenFeign实现模板化远程通信,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2022-07-07
  • 浅析java中Pair和Map的区别

    浅析java中Pair和Map的区别

    这篇文章主要介绍了java中Pair和Map的区别,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • SpringBoot中多个实现的接口正确注入的六种方式

    SpringBoot中多个实现的接口正确注入的六种方式

    在SpringBoot中,正确注入多个接口实现包括使用@Autowired和@Qualifier、@Resource注解、构造方法注入、@Primary注解、Java配置类以及将所有实现注入到List或Map中,感兴趣的可以了解一下
    2024-10-10
  • maven父工程relativepath标签使用解读

    maven父工程relativepath标签使用解读

    文章主要介绍了在使用Maven构建父子工程时如何通过设置父工程和子工程的pom文件来管理依赖和版本,当子工程是Spring Boot项目时,可以通过关闭`relativePath`标签来继承Spring Boot的父工程,同时在父工程中使用`dependencyManagement`标签来统一管理Spring Boot的依赖版本
    2024-11-11
  • 浅析如何利用Spring AI构建一个简单的问答系统

    浅析如何利用Spring AI构建一个简单的问答系统

    Spring AI是Spring生态系统的最新成员,旨在简化AI服务与Spring应用的集成过程,本文小编就来和大家简单介绍一下如何利用Spring AI构建一个简单的问答系统吧
    2025-05-05
  • 通过IDEA快速定位和排除依赖冲突问题

    通过IDEA快速定位和排除依赖冲突问题

    这篇文章主要介绍了通过IDEA快速定位和排除依赖冲突问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • java反射使用示例分享

    java反射使用示例分享

    这篇文章主要介绍了java反射使用示例,代码很简单,需要的朋友可以参考下
    2014-02-02

最新评论