Kafka集群部署
1、环境准备
Kafka服务依赖的软件:
1、jdk环境
2、zookeeper服务(单点或者集群)
本文以三个虚拟机节点部署kafka集群,其信息如下:
kafka01 192.168.0.201
kafka02 192.168.0.202
kafka03 192.168.0.203
2、安装kafka
(注意分别在三台服务器上面执行一下操作)
下载apache官网的kafka软件包进行解压安装
wget https://downloads.apache.org/kafka/3.1.0/kafka_2.12-3.1.0.tgz
tar zxf kafka_2.12-3.1.0.tgz
mv kafka_2.12-3.1.0 kafka
修改kafka配置文件server.properties
cd kafka
vim conf/server.properties
broker.id=2 #每台服务器的broker.id必须唯一,如1,2,3
host.name=192.168.0.202
listeners=PLAINTEXT://192.168.0.202:9092 #kafka监听的主机地址
advertised.listeners=PLAINTEXT://192.168.0.202:9092 #kafka配置的broker IP地址,用于其他节点连接相应的kafka,如用主机名,注意配置host解析。
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/data/kafka/data/ #表示kafka数据的存储路径
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=192.168.0.150:2181/kafka #zookeeper的连接地址及路径
zookeeper.connection.timeout.ms=1800
配置完成后,分别启动kafka服务:
sh bin/kafka-server-start.sh -daemon config/server.properties
3、通过zkui查看zookeeper中的kafka注册情况
安装zkui
git clone https://github.com/DeemOpen/zkui.git
cd zkui-master
mvn clean install
#配置连接的zookeeper
vim config.cfg
zkServer=192.168.0.150:2181
#启动zkui
sh zkui.sh start
如下所示,在/kafka/broker/ids/路径中如果能看到id为1,2,3的三个broker,说明kafka集群已经正常注册到相应的zookeeper中。
3、其他操作
创建topics
/data/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.0.201:9092 --create --topic test_topices --replication-factor 3 --partitions 3
#partitions:topic分区为3
#replication-factor:topic副本数为3
本文来自博客园,作者:酒粒,转载请注明原文链接:https://www.cnblogs.com/charliewch/p/16324023.html
分类:
kafka
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?