在Ubuntu系統上升級Kafka版本時,需重點關注以下事項:
-
版本兼容性
- 若從低于3.3.x的版本升級至Kafka 4.0+,需先升級到3.9.x過渡版本,因Kafka 4.0默認使用KRaft模式,需元數據版本≥3.3.x。
- 確保新版本與現有Zookeeper版本兼容,Kafka 4.0移除Zookeeper依賴,需提前確認是否需遷移至KRaft模式。
-
升級前準備
- 數據備份:備份Kafka數據目錄(
log.dirs)和配置文件(server.properties等)。
- 環境檢查:確保系統已更新至最新,預留足夠磁盤空間,關閉非必要服務以避免沖突。
- Java版本:Kafka 4.0需Java 11或更高版本,需提前升級Java環境。
-
升級操作要點
- 停止服務:先停止Kafka和Zookeeper服務(若使用內置Zookeeper)。
- 配置文件更新:
- 修改
server.properties中的listeners、advertised.listeners、zookeeper.connect(若保留Zookeeper)等配置。
- 若從非KRaft模式升級,需調整
inter.broker.protocol.version并逐步重啟節點。
- 安裝新版本:解壓新版本包,替換舊版本二進制文件,保留配置文件和數據目錄。
-
升級后驗證
- 服務狀態:啟動Kafka和Zookeeper,通過
kafka-topics.sh --list驗證Topic是否正常。
- 數據一致性:檢查消息是否完整,可通過生產消費測試驗證。
- 日志監控:關注
kafkaServer.out等日志,排查啟動異?;蛐阅軉栴}。
-
集群場景注意事項
- 滾動升級:建議逐個節點升級,避免集群不可用,升級后需確保所有節點使用相同協議版本。
- 零停機方案:大規模集群可參考Kafka Linking等工具實現雙寫遷移,減少業務中斷。
參考來源: