kafka3.8集群搭建

kafka集群需要三台机器搭建,并使用内置zookeeper

IP
10.0.0.1
10.0.0.2
10.0.0.3

安装jdk

bash 复制代码
# ubuntu
sudo apt install -y openjdk-8-jdk-headless
# centos
sudo yum install -y java-1.8.0-openjdk

下载kafka

bash 复制代码
wget  https://archive.apache.org/dist/kafka/3.8.1/kafka_2.13-3.8.1.tgz 
# 创建目录
mkdir /data/kafka/logs -p
mkdir /data/kafka/zookeeper_data -p
tar -xvf  kafka_2.13-3.8.1.tgz -C /data/kafka

修改zookeeper配置文件

vim /data/kafka/kafka_2.13-3.8.1/config/zookeeper.properties

zookeeper myid 集群内不能重复的,每台机器设置成不一样的。

echo 1 > /data/zookeeper/myid

yaml 复制代码
dataDir=/data/kafka/zookeeper
# the port at which the clients will connect
clientPort=2181
# disable the per-ip limit on the number of connections since this is a non-production config
maxClientCnxns=0
# Disable the adminserver by default to avoid port conflicts.
# Set the port to something non-conflicting if choosing to enable this
admin.enableServer=false
# admin.serverPort=8080

tickTime=2000
initLimit=5
syncLimit=2
server.1=10.0.0.1:2888:3888
server.2=10.0.0.2:2888:3888
server.3=10.0.0.3:2888:3888

修改kafka配置文件

vim /data/kafka/kafka_2.13-3.8.1/config/server.properties

broker.id 每个节点需要不一样

yaml 复制代码
broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://:9092
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/logs
num.partitions=3
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=24
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=10.0.0.1:2181,10.0.0.2:2181,10.0.0.3:2181

zookeeper.connection.timeout.ms=60000
group.initial.rebalance.delay.ms=0
auto.create.topics.enable = true

分别启动zookeeper和kafka

bash 复制代码
/data/kafka/kafka_2.13-3.8.1/bin/zookeeper-server-start.sh -daemon /data/kafka/kafka_2.13-3.8.1/config/zookeeper.properties && /data/kafka/kafka_2.13-3.8.1/bin/kafka-server-start.sh -daemon /data/kafka/kafka_2.13-3.8.1/config/server.properties

也可以通过配置service启动

先启动zookeeper在启动kafka

vim /etc/systemd/system/zookeeper.service

bash 复制代码
[Unit]
Description=Zookeeper service
After=network.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/data/kafka/kafka_2.13-3.8.1/bin/zookeeper-server-start.sh /data/kafka/kafka_2.13-3.8.1/config/zookeeper.properties
ExecStop=/data/kafka/kafka_2.13-3.8.1/bin/zookeeper-server-stop.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target
bash 复制代码
vim /etc/systemd/system/kafka.service
[Unit]
Description=Apache Kafka server (broker)
After=network.target zookeeper.service

[Service]
Type=simple
User=root
Group=root
ExecStart=/data/kafka/kafka_2.13-3.8.1/bin/kafka-server-start.sh /data/kafka/kafka_2.13-3.8.1/config/server.properties
ExecStop=/data/kafka/kafka_2.13-3.8.1/bin/kafka-server-stop.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target

测试kafka

bash 复制代码
cd /data/kafka/kafka_2.13-3.8.1

# 创建topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic testtopic

# 查看topic list
bin/kafka-topics.sh --zookeeper localhost:2181 --list

# 控制台生产消息
bin/kafka-console-producer.sh --bootstrap-server 10.0.0.2:9092 --topic testtopic

# 控制台消费消息
bin/kafka-console-consumer.sh --bootstrap-server 10.0.0.3:9092 --topic testtopic --from-beginning
相关推荐
岁岁种桃花儿35 分钟前
Kafka从入门到上天系列第一篇:kafka的安装和启动
大数据·中间件·kafka
TTBIGDATA1 天前
【Atlas】Atlas Hook 消费 Kafka 报错:GroupAuthorizationException
hadoop·分布式·kafka·ambari·hdp·linq·ranger
indexsunny1 天前
互联网大厂Java面试实战:微服务与Spring生态技术解析
java·spring boot·redis·kafka·mybatis·hibernate·microservices
编程彩机1 天前
互联网大厂Java面试:从Spring Boot到分布式事务的技术场景解析
spring boot·kafka·分布式事务·微服务架构·java面试·技术解析
没有bug.的程序员1 天前
RocketMQ 与 Kafka 深度对垒:分布式消息引擎内核、事务金融级实战与高可用演进指南
java·分布式·kafka·rocketmq·分布式消息·引擎内核·事务金融
yumgpkpm1 天前
华为昇腾300T A2训练、微调Qwen过程,带保姆式命令,麒麟操作系统+鲲鹏CPU
hive·hadoop·华为·flink·spark·kafka·hbase
ApachePulsar1 天前
演讲回顾|谙流科技在 Kafka on Pulsar 之上的探索
分布式·科技·kafka
yumgpkpm2 天前
2026软件:白嫖,开源,外包,招标,晚进场(2025年下半年),数科,AI...中国的企业软件产业出路
大数据·人工智能·hadoop·算法·kafka·开源·cloudera
迎仔2 天前
09-消息队列Kafka介绍:大数据世界的“物流枢纽”
大数据·分布式·kafka
indexsunny2 天前
互联网大厂Java面试实录:Spring Boot微服务与Kafka消息队列实战解析
java·spring boot·微服务·面试·kafka·电商·技术解析