![](/img/trans.png)
[英]Why do Kafka brokers store rebalance metadata for consumer groups in the __consumer_offsets topic?
[英]Why __consumer_offsets topic in kafka is not spreading to all the brokers?
我有一個3個zk節點群集。 還有7個kafka經紀人節點。
因此,當我創建任何主題時,可以使用命令行參數設置復制因子,而不設置分區。
這些分區已傳播到所有7個__consumer_offsets
。但是有一個主題,即__consumer_offsets
,它是自動創建的,並且僅傳播給1個具有1個復制的代理(id = 0)。
我知道我可以在配置文件中更改默認的復制因子編號。
但是,此主題僅復制給一個代理。 那么可以更改哪些參數以將分區復制到所有代理。
這對我來說真的很奇怪。 我部署了3個Kafka代理群集,我的__consumer_offsets
主題在3個代理之間划分了50個分區(默認),並具有3個(默認)副本。 當您從單個Kafka代理開始時,您描述的內容可能會發生,創建用於閱讀主題的使用者,以便自動創建__consumer_offsets
,它將僅位於代理0上(唯一)。 之后,您添加新的Kafka代理:不做任何事情__consumer_offsets
仍保留在代理0上; 您需要使用Kafka進行手動分區重新分配,如上所述。
您將需要使用Kafka分區重新分配。 不幸的是,這是當前的半手動過程: https : //kafka.apache.org/documentation/#basic_ops_cluster_expansion
您需要在代理配置中將“ offsets.topic.replication.factor
”設置為所需的副本數。
offsets.topic.replication.factor
” offsets主題的復制因子( 設置為較高以確保可用性 )。內部主題的創建將失敗,直到群集大小滿足此復制因子的要求為止。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.