系统环境
本文用的龙蜥 Anolis 8.5.0-18.0.4
Linux version 5.10.134-18.an8.x86_64 (mockbuild@iZ2ze8vdmdyl66lfybi1hzZ) (gcc (GCC) 8.5.0 20210514 (Anolis 8.5.0-18.0.4), GNU ld version 2.30-123.0.1.an8) #1 SMP Fri Dec 13 16:32:58 CST 2024
安装之前确保安装了java环境
java -version
下载
下载地址: Downloads | Apache Kafka
下载之后上传到服务器
# 把文件放在 /usr/local/
# 解压
tar -zxvf 文件名
KRaft模式启动(单机)
kafka自己的配置中心,不用再启动zookeeper了,我们用这种方式启动
先修改配置文件
不改这个远程可能连不上
# 修改kraft模式的配置文件
vim config/kraft/reconfig-server.properties
# 原配置
listeners=PLAINTEXT://:9092,CONTROLLER://:9093
advertised.listeners=PLAINTEXT://localhost:9092,CONTROLLER://localhost:9093
# 改为
listeners=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093
advertised.listeners=PLAINTEXT://你的外网ip:9092,CONTROLLER://你的外网ip:9093
# 可选:修改数据存储目录(建议改到有足够空间的位置)
# log.dirs=/tmp/kafka-logs # 默认路径
log.dirs=/data/kafka/logs # 例如改为这个
2、初始化KRaft存储
KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"
echo "集群ID: $KAFKA_CLUSTER_ID"
# 格式化存储目录
bin/kafka-storage.sh format --standalone -t $KAFKA_CLUSTER_ID -c config/kraft/reconfig-server.properties
看到输出包含 Formatting ... 即表示成功
3、启动
# 停止Kafka
bin/kafka-server-stop.sh
# 后台启动(推荐)
bin/kafka-server-start.sh -daemon config/kraft/reconfig-server.properties
# 或者前台启动(可以看到详细日志)
bin/kafka-server-start.sh config/kraft/reconfig-server.properties
4、测试
# 1. 检查进程
jps | grep Kafka
# 应该看到类似:12345 Kafka
# 2. 检查端口监听
ss -tlnp | grep 9092
# 应该看到 LISTEN 状态
# 3. 查看启动日志
tail -20 logs/server.log | grep -i "started"
# 应该看到 "Kafka Server started"
测试本地生产消费
# 开一个终端消费
bin/kafka-console-consumer.sh --topic test-topic --bootstrap-server localhost:9092
# 另一个终端生产
bin/kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092
> hello