2016-09-12 79 views
1

我有一個Kafka生產集羣,有5個節點和約500個主題。我需要擴展羣集以添加2個新節點,因爲Kafka不提供自動數據重新分區功能,我正在運行kafka-reassign-partitions.sh以及Kafka發行版,以便重新平衡羣集中整個7個節點中的所有主題。卡夫卡分區重新分配性能影響

因爲我已經在我的羣集中了大量的生產數據,

  1. 將運行此腳本塊中的任何併發寫入到我的卡夫卡主題?
  2. 運行此腳本會減慢我的羣集/生產者/消費者嗎?
  3. 如何在腳本正在執行時停止此腳本,以防萬一在此腳本執行期間我的集羣開始行爲異常?

我目前使用卡夫卡v0.8.2.0與多個生產者和多個消費者。

回答

4

什麼卡夫卡重新分配,分區的作用是:

  1. 作爲創建的新經紀人新副本時所需
  2. 有,直到他們趕上領先者
  3. 觸發領導人選舉哪裏需要他們複製數據
  4. 在需要的地方

領導人選舉階段將延遲寫入(像任何刪除副本領導故障轉移)。 由於額外的複製需要磁盤和網絡資源(有時是重要資源),因此消費者/生產者可能會放慢速度。 在進行過程中無法停止此操作。我的意思是,你可以從ZK中刪除相關的節點,但它並沒有真正測試過,並且新創建的副本將會停留在......我不會嘗試。如果您擔心,我建議您一次移動一個分區。

在0.10.1.0(現在要凍結功能)中,我們將添加限制重新分配工作的功能,這將限制對生產者和消費者的性能影響。