COSCUP 2022

Your locale preferences have been saved. We like to think that we have excellent support for English in pretalx, but if you encounter issues or errors, please contact us!

Apache Kafka 叢集負載平衡
2022-07-30 , TR409-2
Language: 漢語

Apache Kafka 爲目前熱門的分散式事件串流平臺,本身自帶各種豐富的功能,比如 Replication, JBOD, Authn/z, Encryption, Compression, At-most/At-least/Exactly once Delivery, Transaction,目前常見的 Kafka 應用包含:高吞吐量的資料管線、串流分析應用和資料整合中介軟體。

隨著叢集經歷上層應用的業務需求增長以及叢集資源使用變化,Kafka 叢集在經過這些現實情境的摧殘後,勢必會遭逢負載不平衡的情況, 放任負載不平衡的情況不顧,最終叢集會遭遇效能瓶頸和叢集穩定性問題。

我們提出了一個開源的高彈性的叢集負載平衡工具 - Astraea Balancer,藉由搬移計劃生成和滿足特定平衡目標的打分機制來做到負載平衡,協助管理者持續維護叢集的和平。

本研究特別感謝『科學園區計畫-自主高效串流資料管理平台與新興應用』和『教育部開源人培計劃』的支持。


Apache Kafka 爲以 JVM 為底的熱門分散式事件串流平臺,本身支援豐富多變的功能和高擴展性,方便上游應用利用,現今 Apache Kafka 已經被許多知名企業採用於生產環境。

由於業務需求和叢集資源使用的改變,Kafka 叢集勢必會遭逢負載不平衡的情況, 放任負載不平衡的情況,最終叢集會遭遇效能瓶頸和叢集穩定性問題。

對此我們提出了一個開源的 Kafka 叢集負載平衡工具,於伺服器端解決問題:

  • 高彈性架構:負載平衡目標可重新定義,套用自己在意的負載平衡目標對症下藥
  • 自動把關負載平衡過程:Kafka 伺服器端的負載平衡涉及很顯著的資料複製代價,我們將有一個機制確保負載平衡不影響上游應用運行。

Target Audience

對 Apache Kafka 有興趣的朋友、對分散式系統的負載平衡有興趣的朋友

Difficulty

中階

youtube_link

https://www.youtube.com/watch?v=SCNdaDoyYnQ