温馨提示×

debian怎样升kafka版

小樊
49
2026-10-12 16:58:38
栏目: 智能运维

在 Debian 上“升级 Kafka 版本”通常不是用 apt 升级(Debian 官方源里的 Kafka 往往很旧),而是手动替换二进制包。下面按常见场景给你一套稳妥做法。


一、先确认当前情况

# Kafka 安装位置(常见)
ls /opt/kafka
ls /usr/local/kafka

# 当前版本
/opt/kafka/bin/kafka-topics.sh --version

二、升级前必做(非常重要)

1️⃣ 备份

cp -r /opt/kafka /opt/kafka_bak_$(date +%F)

2️⃣ 查看兼容性

  • Kafka 0.10+ → 2.x / 3.x 一般可滚动升级
  • 跨大版本(如 1.x → 3.x) 建议看官方升级文档
    https://kafka.apache.org/documentation/#upgrade

三、下载新版本 Kafka

以 3.6.1 为例:

cd /opt
wget https://downloads.apache.org/kafka/3.6.1/kafka_2.13-3.6.1.tgz
tar -xzf kafka_2.13-3.6.1.tgz

四、停掉旧 Kafka(关键)

# 如果你用 systemd
systemctl stop kafka
systemctl stop zookeeper   # 如果用内置 ZK

# 或手动
/opt/kafka/bin/kafka-server-stop.sh

⚠️ 不要删 data 目录


五、替换或切换目录

方式 A(推荐):改软链

mv /opt/kafka /opt/kafka_old
ln -s /opt/kafka_2.13-3.6.1 /opt/kafka

方式 B:直接覆盖

cp -r /opt/kafka_old/config /opt/kafka/conf

六、同步配置文件

重点检查:

  • server.properties
  • zookeeper.properties
  • consumer.properties
  • producer.properties

常见变化:

  • listeners
  • log.dirs
  • zookeeper.connect
  • 新版本可能不再需要 ZooKeeper(KRaft)

七、启动 Kafka

systemctl start kafka
# 或
/opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties

八、验证

/opt/kafka/bin/kafka-topics.sh --version
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092

九、如果是集群(多节点)

✅ 用滚动升级:

  1. 一台一台来
  2. 每升一台,确认 ISR 正常
  3. 最后再升 controller

十、Debian + apt(不推荐)

apt show kafka

⚠️ 版本通常极旧,不建议生产用


如果你愿意,可以告诉我:

  • Kafka 当前版本
  • 是否集群
  • 是否用 ZooKeeper / KRaft
  • 是否用 systemd

我可以直接给你精确升级命令。

0 踩