參考官網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檔案內容如下:
生成分配partitions的json指令碼:],"version":1
}
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檔案內容如下:
,a.先擴容分割槽數量,指令碼如下:,
],
"version":1
}
例如: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,後來由於業務資料突然暴增,...