apache kafka系列之遷移與擴容工具用法

2021-10-08 16:37:27 字數 2016 閱讀 5913

參考官網site:

說明:當我們對kafka集群擴容時,需要滿足2點要求:

將指定topic遷移到集群內新增的node上。

將topic的指定partition遷移到新增的node上。

假如現在乙個kafka集群執行三個broker,broker.id依次為101,102,103,後來由於業務資料突然暴增,需要新增三個broker,broker.id依次為104,105,106.目的是要把push-token-topic遷移到新增node上。指令碼(json格式)如下所示:

lizhitao@localhost:$  ./bin/kafka-reassign-partitions.sh --zookeeper 192.168.2.225:2183/config/mobile/mq/mafka

--topics-to-move-json-file  migration-push-token-topic.json  --broker-list  "104,105,106"  --generate

指令碼migration-push-token-topic.json檔案內容如下:

],"version":1

}

生成分配partitions的json指令碼:

current partition replica assignment

,,,,,,,,,,,]}

重新分配parttions的json指令碼如下:

migration-topic-cluster-switch-topic.json 

,,,,,,,,,,,]}

lizhitao@localhost:$   bin/kafka-reassign-partitions.sh --zookeeper 192.168.2.225:2183/config/mobile/mq/mafka01 --reassignment-json-file migration-topic-cluster-switch-topic.json --execute

lizhitao@localhost:$ ./bin/kafka-reassign-partitions.sh --zookeeper   192.168.2.225:2183/config/mobile/mq/mafka

--reassignment-json-file  replicas-update-push-token-topic.json  --execute

假如初始時push-token-topic為乙個副本,為了提高可用性,需要改為2副本模式。

指令碼replicas-push-token-topic.json檔案內容如下:

,

,                

],             

"version":1

}

a.先擴容分割槽數量,指令碼如下:

例如:push-token-topic初始分割槽數量為12,目前到增加到15個

lizhitao@localhost:$ ./bin/kafka-topics.sh --zookeeper 192.168.2.225:2183/config/mobile/mq/mafka  --alter   --partitions 15   --topic   push-token-topic

b.設定topic分割槽副本

lizhitao@localhost:$ ./bin/kafka-reassign-partitions.sh --zookeeper  192.168.2.225:2183/config/mobile/mq/mafka

--reassignment-json-file partitions-extension-push-token-topic.json  --execute

指令碼partitions-extension-push-token-topic.json檔案內容如下:

, , ], "version":1 }

Apache Kafka系列之Kafka介紹

kafka是乙個分布式的 分割槽的 多複本的日誌提交服務。它通過一種獨一無二的設計提供了乙個訊息系統的功能。所有的這些意味著什麼?1 kafka維護按類區分的訊息,稱為主題 topic 2 生產者 producer 向kafka的主題發布訊息 3 消費者 consumer 向主題註冊,並且接收發布到...

Apache Kafka教程A系列 介紹

在大資料中,使用了大量的資料。關於資料,我們有兩個主要挑戰。第乙個挑戰是如何收集大量資料,第二個挑戰是分析收集的資料。為了克服這些挑戰,您必須使用訊息傳遞系統。卡夫卡專為分布式高吞吐量系統而設計。卡夫卡傾向於非常好地取代傳統的資訊 者。與其他訊息系統相比,kafka具有更好的吞吐量,內建分割槽,複製...

apache kafka系列之遷移與擴容工具用法

參考官網site 說明 當我們對kafka集群擴容時,需要滿足2點要求 將指定topic遷移到集群內新增的node上。將topic的指定partition遷移到新增的node上。假如現在乙個kafka集群執行三個broker,broker.id依次為101,102,103,後來由於業務資料突然暴增,...