news 2026/9/12 17:54:10

Kafka运行环境安装

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Kafka运行环境安装

一、前言

kafka是基于jdk和zk上运行的,安装kafka前必须安装jdk和zk。

二、jdk安装

2.1 下载jdk

安装文件:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载JDK

2.2 设置环境变量

2.2.1 windows环境下需要设置

安装完成后需要添加以下的环境变量(右键点击“我的电脑” -> “高级系统设置” -> “环境变量” ):

JAVA_HOME: D:\Program Files\java\jdk1.8.0_91 (jdk的安装路径)

Path: 在现有的值后面添加"; %JAVA_HOME%\bin"

2.2.2 linux环境下需要设置

编辑用户profile

vi ~/.bash_profile

增加以下设置:

export JAVA_HOME=/opt/esb/jdk1.7.0_80 (jdk的安装路径)
export JAVA_BIN=J A V A H O M E / b i n e x p o r t P A T H = JAVA_HOME/bin export PATH=JAVAHOME/binexportPATH=JAVA_BIN:P A T H : PATH:PATH:HOME/bin
export CLASSPATH=.:J A V A H O M E / l i b / d t . j a r : JAVA_HOME/lib/dt.jar:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar
export PATH CLASSPATH

增加完成后执行:

source ~/.bash_profile

2.3 校验

打开cmd运行java -version查看当前系统Java的版本:

三、zookeeper安装

Kafka 集群中有一个 broker 会被选举为 Controller,负责管理集群 broker 的上下线,所有 topic 的分区副本分配和 leader 选举等工作。Controller 的管理工作都是依赖于 Zookeeper 的。

3.1 下载zk

安装文件 http://zookeeper.apache.org/releases.html 下载zk

3.2 配置

解压安装包到目标位置,conf,把zoo_sample.cfg重命名成zoo.cfg,并打开zoo.cfg,把dataDir的值改成

dataDir=…\data

3.3 启动

进入zk文件目录,执行以下命令,

3.3.1 windows环境

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

3.3.2 linux环境

./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

或者

./bin/zookeeper-server-start.sh start

四、kafka安装

4.1 下载kafka

下载路径: http://kafka.apache.org/downloads

4.2 配置

解压安装包到目标位置,打开config下server.properties文件,把log.dirs修改为:

log.dirs=logs

server.properties更多可用配置及含义如下:

#broker 的全局唯一编号,不能重复 broker.id=0 #删除 topic 功能使能 delete.topic.enable=true #处理网络请求的线程数量 num.network.threads=3 #用来处理磁盘 IO 的现成数量 num.io.threads=8 #发送套接字的缓冲区大小 socket.send.buffer.bytes=102400 #接收套接字的缓冲区大小 socket.receive.buffer.bytes=102400 #请求套接字的缓冲区大小 socket.request.max.bytes=104857600 #topic 在当前 broker 上的分区个数 num.partitions=1 #用来恢复和清理 data 下数据的线程数量 num.recovery.threads.per.data.dir=1 #segment 文件保留的最长时间,超时将被删除 log.retention.hours=168

4.3 启动kafka

进入kafka文件目录,执行以下命令,启动kafka通讯的服务器broker

4.3.1 windows环境

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

4.3.2 linux环境

./bin/kafka-server-start.sh config/server.properties

五、测试

5.1 创建消息topics

进入kafka文件目录\bin\windows,执行以下命令

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

这条命令的意思是,创建一个Topic到ZK(指定ZK的地址),副本个数为1,分区数为1,Topic的名称为test。

Linux对应的命令为:

./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

在较新版本(2.2 及更高版本)的 Kafka 不再需要 ZooKeeper 连接字符串,即- -zookeeper localhost:2181。使用 Kafka Broker的 --bootstrap-server localhost:9092来替代- -zookeeper localhost:2181。

./bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --replication-factor 1 --partitions 1 --topic test

5.2 查看topics

创建好后我们可以查看Kafka里的Topic列表:

bin\windows\kafka-topics.bat --list --zookeeper localhost:2181


Linux对应的命令为:

./bin/kafka-topics.sh --list --zookeeper localhost:2181

2.2及更高版本

./bin/kafka-topics.sh --list --bootstrap-server localhost:9092

查看test Topic的具体信息:

bin\windows\kafka-topics.bat --describe --zookeeper localhost:2181 --topic test

Linux对应的命令为:

./bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

2.2及更高版本

./bin/kafka-topics.sh --describe --bootstrap-server localhost:9092 --topic test

5.2 创建Producer

分别打开cmd窗口,进入kafka文件目录\bin\windows,执行下面命令

kafka-console-producer.bat --broker-list localhost:9092 --topic test

Linux下对应的命令为:

kafka-console-producer.sh --broker-list localhost:9092 --topic test

5.3 创建Consumer

分别打开cmd窗口,进入kafka文件目录\bin\windows,执行下面命令

kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test

Linux下对应的命令为:

./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test

5.4 发送消息测试

六、常用命令

6.1 查看当前服务器中的所有 topic

./bin/kafka-topics.sh --list --zookeeper localhsot:2181

2.2及更高版本

./bin/kafka-topics.sh --list --bootstrap-server localhost:9092

windows对应的命令为:

kafka-topics.bat --list --zookeeper localhost:2181

6.2 删除 topic

./bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test

2.2及更高版本

./bin/kafka-topics.sh --bootstrap-server localhost:9092 --delete --topic test

windows对应的命令为:

kafka-topics.bat --zookeeper localhost:2181 --delete --topic test

注意:需要 server.properties 中设置delete.topic.enable=true否则只是标记删除。

6.3 查看某个 Topic 的详情

./bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic test

2.2及更高版本

./bin/kafka-topics.sh --bootstrap-server localhost:9092 --describe --topic test

windows对应的命令为:

kafka-topics.bat --zookeeper localhost:2181 --describe --topic test

6.4 修改分区数

./bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic test --partitions 2

2.2及更高版本

./bin/kafka-topics.sh–bootstrap-server localhost:9092 --alter --topic test --partitions 2

windows对应的命令为:

kafka-topics.bat --zookeeper localhost:2181 --alter --topic test --partitions 2

七、可视化工具 kafka Tool

7.1 下载

下载地址: http://www.kafkatool.com/download.html

7.2 配置


7.3 监控

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 17:53:10

从零开始用ESP32+HC-SR501实现人体感应:接线、代码与避坑指南

半夜想起来去客厅倒杯水,走廊的灯自己亮起来,这不是什么电影特效,而是一块十几块的开发板加上一块几块钱的传感器就能实现的效果。说的就是ESP32和HC-SR501这个组合。玩嵌入式这几年,每年都会有人问我“零基础第一步到底做什么好”…

作者头像 李华
网站建设 2026/9/12 17:52:22

大模型技术栈解析:从LLM到RAG与Agent实战

1. 大模型技术全景图:从基础架构到智能应用最近半年,AI领域的新名词像雨后春笋般冒出来,每次参加技术会议都能听到一堆缩写词在会场里飞来飞去。上周我在一个开发者活动上,听到旁边两位工程师的对话:"我们系统用R…

作者头像 李华
网站建设 2026/9/12 17:52:01

中文语音识别实战:从CTC+Attention建模到端到端部署

简介:本资源是一套完整的基于深度学习的中文语音识别系统实现方案,面向人工智能初学者、语音处理方向学生及Python开发者,解决从音频预处理、声学模型训练到解码识别的全流程实践问题。压缩包共88个文件,含30个Python核心脚本&…

作者头像 李华
网站建设 2026/9/12 17:48:15

常用控件的介绍(下)

0.引言 现在开始介绍的各种Qt中的控件,都是继承自QWidget,所以QWidget的属性在接下来的控件中都是可以使用的。也就是刚刚QWidget中涉及到的各种属性/函数/使用方法,针对接下来要介绍的Qt中的各种控件都是有效的,下面来学习Qt中提…

作者头像 李华
网站建设 2026/9/12 17:47:36

XPipe 界面语言切换完整指南:3 步搞定中文界面

XPipe 界面语言切换完整指南:3 步搞定中文界面 【免费下载链接】xpipe Access your entire server infrastructure from your local desktop 项目地址: https://gitcode.com/GitHub_Trending/xp/xpipe XPipe 是一款从本地桌面直接管理整台服务器集群的工具—…

作者头像 李华