Kafka版本升級Linux環境注意事項
log.dirs
指定路徑)、配置文件(server.properties
、zookeeper.properties
等)及日志文件(/var/log/kafka/
)??墒褂?code>rsync或tar
工具,避免升級過程中數據丟失。kafka-topics.sh --describe
查看)、無Broker宕機,且ZooKeeper集群正常運行。systemctl stop kafka
或kill -15 <PID>
(而非kill -9
)停止Broker,確保Broker主動將Leader角色轉移至其他副本,減少數據抖動。server.properties
中的關鍵配置:
inter.broker.protocol.version
:設置為舊版本協議(如從3.0升級到3.3,設為3.0
),升級完成后逐步升級至新版本;log.message.format.version
:同理,設為舊版本協議;listeners
/advertised.listeners
:更新Broker監聽地址(如新增IP或端口);unclean.leader.election.enable
:必須設為false
(禁止非同步副本成為Leader,保障數據一致性)。tail -f /var/log/kafka/server.log
)確認無錯誤信息;使用kafka-broker-api-versions.sh --bootstrap-server localhost:9092
驗證Broker版本是否為新版本。# 創建測試Topic
kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test_topic
# 生產者發送消息
kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
# 消費者接收消息
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning
確認消息能正常收發。