单点部署kafka4.0+版本
centos系统
官网链接:https://www.apache.org/dyn/closer.lua/kafka/4.0.2/kafka_2.13-4.0.2.tgz?action=download
目录:/data/kafka/
将压缩包压缩到指定目录
tar xf kafka_2.13-4.0.2.tgz -C /data/kafka/
cd /data/kafka/kafka_2.13-4.0.2
# 1. 生成集群 UUID
UUID=$(bin/kafka-storage.sh random-uuid)
echo "集群UUID: $UUID"
# 2. 创建数据目录
mkdir -p /data/kafka/kafka_2.13-4.0.2/data
# 3. 写入完整配置文件(使用 controller.quorum.bootstrap.servers)
cat > config/server.properties << 'EOF'
node.id=1
process.roles=broker,controller
controller.listener.names=CONTROLLER
listeners=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093
advertised.listeners=PLAINTEXT://真实IP:9092
listener.security.protocol.map=PLAINTEXT:PLAINTEXT,CONTROLLER:PLAINTEXT
# 单节点控制器配置(--standalone 模式需要 bootstrap.servers)
controller.quorum.bootstrap.servers=localhost:9093
log.dirs=/data/kafka/kafka_2.13-4.0.2/data
num.partitions=3
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
delete.topic.enable=true
EOF
# 4. 格式化存储(使用 --standalone)
bin/kafka-storage.sh format \
-t $UUID \
-c config/server.properties \
--standalone
# 5. 前台启动
bin/kafka-server-start.sh config/server.properties
Kafka 部署成功验证步骤:
cd /data/kafka/kafka_2.13-4.0.2
# 1. 检查进程是否运行
ps aux | grep kafka
# 2. 查看日志(无ERROR为正常)
tail -100 logs/server.log | grep -E "(started|ERROR|FATAL)"
# 3. 测试创建 Topic
bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic test-topic --partitions 1 --replication-factor 1
# 4. 查看 Topic 列表
bin/kafka-topics.sh --bootstrap-server localhost:9092 --list
# 5. 发送测试消息
echo "Hello Kafka 4.0" | bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test-topic
# 6. 消费测试消息(另开终端执行)
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test-topic --from-beginning --max-messages 1
# 7. 查看集群状态
bin/kafka-metadata-quorum.sh --bootstrap-server localhost:9092 describe --status
使用 nohup(简单快速)
cd /data/kafka/kafka_2.13-4.0.2
# 后台启动,日志输出到 nohup.out
nohup bin/kafka-server-start.sh config/server.properties > /dev/null 2>&1 &
# 查看进程
ps aux | grep kafka
# 停止(先正常停止,勿直接kill)
bin/kafka-server-stop.sh
安装kafdrop
# 1. 先停掉 kafka-ui
pkill -f kafka-ui
# 2. 创建目录
mkdir -p /data/kafka/kafdrop
# 3. 下载 Kafdrop 3.30.0
curl -L -o /data/kafka/kafdrop/kafdrop-3.30.0.jar \
"https://github.com/obsidiandynamics/kafdrop/releases/download/3.30.0/kafdrop-3.30.0.jar"
# 4. 写启动脚本
cat > /data/kafka/kafdrop/start-kafdrop.sh << 'EOF'
#!/bin/bash
nohup java -Xms128m -Xmx256m \
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED \
-jar /data/kafka/kafdrop/kafdrop-3.30.0.jar \
--kafka.bootstrapServers=localhost:9092 \
--server.port=9000 \
> /data/kafka/kafdrop/kafdrop.log 2>&1 &
echo "Kafdrop PID: $!"
EOF
chmod +x /data/kafka/kafdrop/start-kafdrop.sh
# 5. 启动
/data/kafka/kafdrop/start-kafdrop.sh
# 6. 等 20 秒看日志
sleep 20 && tail -30 /data/kafka/kafdrop/kafdrop.log
posted on 2026-07-06 14:48 duanzhankui 阅读(8) 评论(0) 收藏 举报
浙公网安备 33010602011771号