手把手教你 在linux上安装kafka
创始人
2025-05-29 18:44:42
0

目录

1. 准备服务器

2. 选一台服务器配置kafka安装包

2.1 下载安装包

2.2 解压安装包

2.3 修改配置文件

3. 分发安装包到其他机器

4. 修改每台机器的broker.id

5. 配置环境变量

6. 启停kafka服务

6.1 启动kafak服务

6.2 停止kafka服务 


1. 准备服务器

                1.买几台云服务器 或者 自己搭建个虚拟机

                2.机器间已经做了免密配置

                         192.168.0.211 worker01

                         192.168.0.212 worker02

                         192.168.0.213 worker03

                3.安装了JDK1.8 且配置了环境变量  不明白的可以看这里哦💪🏻

                4.安装了zookeeper3.6.3 且配置了环境变量  不明白的可以看这里哦💪🏻


2. 选一台服务器配置kafka安装包

2.1 下载安装包

#下载kafka安装包
wget http://archive.apache.org/dist/kafka/3.3.2/kafka_2.12-3.3.2.tgz

2.2 解压安装包

#解压安装包
tar -zxvf kafka_2.12-3.3.2.tgz 

2.3 修改配置文件

配置文件位置:	kafka_2.12-3.3.2/config/server.properties修改内容1:
#指定broker 在集群中的唯一编号,不能重复,只能是数字
broker.id=0	修改内容2:
#指定 kafak数据存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以 配置多个磁盘路径,路径与路径之间可以用","分隔
#建议在kafka安装包内部创建
log.dirs=/home/software/kafka_2.12-3.3.2/kafka-logs修改内容3:
#配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理)
zookeeper.connect=worker01:2181,worker02:2181,worker03:2181/kafka

其他配置项说明,可根据实际情况按需配置

#broker 的全局唯一编号,不能重复,只能是数字
broker.id=0
#处理网络请求的线程数量 
num.network.threads=3
#用来处理磁盘 IO 的线程数量 
num.io.threads=8 
#发送套接字的缓冲区大小 
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小 
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#kafka 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以 配置多个磁盘路径,路径与路径之间可以用","分隔 
log.dirs=/opt/module/kafka/datas
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量 
num.recovery.threads.per.data.dir=1
# 每个topic创建时的副本数,默认时1个副本 
offsets.topic.replication.factor=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#每个 segment 文件的大小,默认最大 1G 
log.segment.bytes=1073741824
#检查过期数据的时间,默认5分钟检查一次是否数据过期 
log.retention.check.interval.ms=300000
#配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理)
zookeeper.connect=worker01:2181,worker01:2181,worker01:2181/kafka

3. 分发安装包到其他机器

# 分发安装包到其他集群节点(worker02、worker03)
scp -r kafka_2.12-3.3.2 worker02:/home/software
scp -r kafka_2.12-3.3.2 worker03:/home/software

4. 修改每台机器的broker.id

tips : broker.id 不得重复,整个集群中唯一

1. 在 worker01 执行

#将 kafka_2.12-3.3.2/config/server.properties 中的 broker.id 设置为0
broker.id=0

2. 在 worker02 执行

2. 在 worker02 执行
#将 kafka_2.12-3.3.2/config/server.properties 中的 broker.id 设置为1
broker.id=1

3. 在 worker03 执行

3. 在 worker03 执行
#将 kafka_2.12-3.3.2/config/server.properties 中的 broker.id 设置为2
broker.id=2

5. 配置环境变量

有条件的可以 在/etc/profile.d目录下创建 worker_profile.sh 
或者直接修改 /etc/profile

#添加 kafka环境变量
export KAFKA_HOME=/home/software/kafka_2.12-3.3.2
export PATH=$KAFKA_HOME/bin:$PATH

tips: 记得执行下 source /etc/profile 让变量生效哦!


6. 启停kafka服务

6.1 启动kafak服务

tips:  先启动 Zookeeper 集群,然后再启动 Kafka服务

#1.启动kafak服务 (如果是集群模式,需要在每个节点上执行)
kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties

6.2 停止kafka服务 

tips:停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper集群

          因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止

          Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了

#停止kafak服务 (如果是集群模式,需要在每个节点上执行)
kafka-server-stop.sh

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...