2017-09-07 16 views
0

トピックがカフカで5つのパーティションがある場合、パーティションの数を30に増やすことができます。パーティションの数ブローカIDの順に各パーティションのリーダーを変更し、その特定のトピックのクラスタを再調整します。どうすればそれをすることができますか?トピックのパーティション数を増やして各パーティションのリーダーを変更して再均衡をとる方法

+0

ウェブ検索がincludingservers https://stackoverflow.com/q/33677871/1531971、いくつかのヒントを示してい – jdv

答えて

0

私はそれがどのように機能するかを知りました。

1)まず、クラスタを実行します)thier IDを持つパーティション の

3)スケール数をクラスタ内のすべてのブローカーを見つける既存のトピック

2)の情報を見つけますrebalanceに再割り当てスクリプト

私はlocalhostを使用している実際の動物園のURLまたはipsを与えます。 2181 --topic dummytopic --describe

はどこトピックについてあなたのすべてを示しています。私たちはkafka-topics.sh ./kafka-topics.sh --zookeeper localhostを持っているbinディレクトリに

1)パーティションのリーダーが存在し、レプリカがあるが

2)./zookeeper-shell.shはlocalhost:2181

はあなたのブローカーが

3のIDSのすべてのリストを与えるのls /ブローカー/ IDSください) ./kafka-to pics.sh --alter --zookeeperはlocalhost:2181 --topic dummytopic --partitions 30

は、パーティション

4の数を増やします) このコマンドを実行する前に、あなたが変更できるようになるJSONファイルを必要とします私はシンプルなツールを開発し、特定のトピックについてはその

のパーティションリーダーは、非常に大きなパーティション数

https://github.com/chandradeepak/kafka-reassignment-gen

行くビルドのJSONを生成します& &トピック= dummytopic num_partitions = 30 brokerid_start = 1022 replica_count = 3 ./kafka-reassignment-gen

これは我々が拡大し、クラスタreassignment.jsonのために使用することができますJSONを生成します。、[1001,1002,1003]}:[{ "トピック": "dummytopic"、 "パーティション" 0、 "レプリカ" それはこの

{ "バージョン" 1、 "パーティション" のようになります{ "トピック": "dummytopic"、 "パーティション" 1 "複製":[1002,1003,1004]}、{ "トピック": "dummytopic"、 "パーティション" 2、 "複製":[1003 1004.1005]}、{ "トピック": "dummytopic"、 "パーティション" 3 "複製":[1004,1005,1006]}、{ "トピック": "dummytopic"、 "パーティション" 4 "レプリカ ":[1005,1006,1007]}、{" トピック ":" dummytopic "" パーティション ":5" 複製 ":[1006,1007,1008]}、{" トピック ":" dummytopic ""パーティション "6、" レプリカ ":[1007,1008,1009]}、{" トピック ":" dummytopic "" パーティション "7、" 複製 ":[1008,1009,1010]}、{" トピック」 "dummytopic"、 "パーティション" 8、 "複製":[1009,1010,1011]}、{ "トピック": "dummytopic"、 "パーティション" 9 "複製":[1010,1011,1012] }、{ "トピック": "dummytopic"、 "パーティション" 10、 "複製":[1011,1012,1013]}、{ "トピック": "dummytopic"、 "パーティション" 11、 "複製":[ 1012,1013,1014]}、{ "トピック": "dummytopic"、 "パーティション" 12、「R eplicas ":[1013,1014,1015]}、{" トピック ":" dummytopic "" パーティション "13、" 複製 ":[1014,1015,1016]}、{" トピック ":" dummytopic ""パーティション "14、" 複製 ":[1015,1016,1017]}、{" トピック ":" dummytopic "" パーティション "15、" 複製 ":[1016,1017,1018]}、{" トピック」 "dummytopic"、 "パーティション" 16、 "複製":[1017,1018,1019]}、{ "トピック": "dummytopic"、 "パーティション" 17、 "複製":[1018,1019,1020] }、{ "トピック": "dummytopic"、 "パーティション" 18、 "複製":[1019,1020,1021]}、{ "トピック": "dummytopic"、 "パーティション" 19、 "複製":[ 1020,1021,1022]}、{ "トピック": "dummytopic"、 "パーティション" 20、 "複製":[1021,1022,1023]}、{ "トピック": "dummytopic"、 "パーティション":21 "複製":[1022,1023,1024]}、{ "トピック": "dummytopic"、 "パーティション" 22、 "複製":[1023,1024,1025]}、{ "トピック": "dummytopic" "パーティション" 23、 "複製":[1024,1025,1026]}、{ "トピック": "dummytopic"、 "パーティション" 24、 "複製":[1025,1026,1027]}、{ "トピック "" dummytopic "" パーティション "25、" 複製 ":[1026,1027,1028]}、{" トピック ":" dummytopic "" パーティション "26、" 複製「:1027.1028、 1029]}、{ "トピック": "dummytopic"、 "パーティション" 27、 "複製":[ 1028,1029,1030]}、{ "トピック": "dummytopic"、 "パーティション" 28、 "複製":[1029,1030,1001]}、{ "トピック": "dummytopic"、 "パーティション" 29 "複製":[1030,1001,1002]}]}

./kafka-reassign-partitions.sh --zookeeperはlocalhost:2181 --reassignment-JSONファイルクラスタreassignment.jsonを展開 -

実行これは、クラスタの再割り当てを実行すると、あなたは何を期待パーティションリーダー2に変更します。

関連する問題