溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

kafka的命令管理是什么

發(fā)布時(shí)間:2021-10-21 10:42:28 來(lái)源:億速云 閱讀:91 作者:柒染 欄目:大數(shù)據(jù)

本篇文章給大家分享的是有關(guān)kafka的命令管理是什么,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

一:主題管理

1:創(chuàng)建主題,分區(qū)8個(gè),副本為2(副本數(shù)不能超過(guò)集群中broker數(shù))

bin/kafka-topics.sh  --bootstrap-server 192.168.1.131:9092 --create --topic mytopic --replication-factor 2 --partitions 8

2:修改主題分區(qū)(主題分區(qū)只能添加,不能刪除)

bin/kafka-topics.sh  --bootstrap-server 192.168.1.131:9092   --alter   --topic mytopic  --partitions 10

3:刪除主題

bin/kafka-topics.sh  --bootstrap-server 192.168.1.131:9092   --delete  --topic mytopic

4:列出全部主題

bin/kafka-topics.sh  --bootstrap-server 192.168.1.131:9092   --list

5:查看主題詳細(xì)

bin/kafka-topics.sh  --bootstrap-server 192.168.1.131:9092   --describe

6:列出不同步的主題

bin/kafka-topics.sh --bootstrap-server 192.168.1.131:9092 --describe --under-replicated-partition

7:列出沒(méi)有l(wèi)ender的主題

bin/kafka-topics.sh --bootstrap-server 192.168.1.131:9092 --describe --under-replicated-partition

二:動(dòng)態(tài)默認(rèn)配置

1:修改主題參數(shù)(消息保留時(shí)間設(shè)為1小時(shí),entitiy-type topics 指明覆蓋主題配置)

bin/kafka-configs.sh --zookeeper 192.168.1.131:2181 --alter --entity-type topics --entity-name mytopic --add-config retention.ms=3600000

2:修改brokers默認(rèn)配置

bin/kafka-configs.sh --bootstrap-server 192.168.1.131:9092 --alter --entity-type brokers --entity-name 0 --add-config num.io.threads=10

3:修改客戶(hù)端默認(rèn)配置

bin/kafka-configs.sh --zookeeper 192.168.1.131:2181 --alter --entity-type clients --entity-name admin --add-config producer_bytes-rate=10

4:移除動(dòng)態(tài)配置

bin/kafka-configs.sh --zookeeper 192.168.1.131:2181 —alter —entity-type topics —entity-name mytopic   —delete-config retention.ms

5:查看動(dòng)態(tài)配置

bin/kafka-configs.sh --zookeeper 192.168.1.131:2181 —describe —entity-type topics —entity-name mytopic

三:分區(qū)管理(Kafka提供兩個(gè)腳本管理分區(qū),一個(gè)用于重新選舉首領(lǐng),一個(gè)用于將分區(qū)分配給broker,結(jié)合這兩個(gè)工具,就可以實(shí)現(xiàn)集群流量的負(fù)載均衡。使用多個(gè)分區(qū)副本可以提升可靠性,不過(guò)只有其中一個(gè)副本可以成為分區(qū)首領(lǐng),只有首領(lǐng)所在broker可以進(jìn)行生產(chǎn)和消費(fèi)活動(dòng)。Kafka將副本清單第一個(gè)同步副本選為首領(lǐng),但在關(guān)閉并重啟broker之后,并不會(huì)自動(dòng)恢復(fù)原先的首領(lǐng)身份。broker有一個(gè)配置可以用于啟動(dòng)自動(dòng)首領(lǐng)再均衡,不過(guò)不建議在生產(chǎn)環(huán)境使用該功能。)

1:?jiǎn)?dòng)分區(qū)選舉(kafka默認(rèn)選舉)

  bin/kafka-preferred-replica-election.sh  --zookeeper 192.168.1.131:2181

2:?jiǎn)?dòng)分區(qū)選舉并指明選舉首領(lǐng)(寫(xiě)入在配置文件)

bin/kafka-preferred-replica-election.sh  --zookeeper 192.168.126.128:2181 —path-to-json-file partitons.json

3:修改分區(qū)副本

  • 有時(shí)需要修改分區(qū)副本,以下時(shí)需要修改分區(qū)副本的場(chǎng)景

  • 1.主題分區(qū)在整個(gè)集群的不均衡分布造成集群負(fù)載不均衡

  • 2.broker離線造成分區(qū)不同步

  • 3.新加入的broker需要從集群獲得負(fù)載。

  • 可以使用Kafka-reassign-partitions.sh 工具來(lái)修改分區(qū)。

  • 第一步:根據(jù)broker清單和主題清單生成一組遷移步驟;

  • 第二步,執(zhí)行遷移步驟;

  • 第三步:可以使用生成的遷移步驟驗(yàn)證分區(qū)重分配的進(jìn)度和完成情況。

  • 示例:為topics.json文件里的主題生成遷移步驟,將這些主題遷移到broker0和broker1上。

  • bin/kafka-reassign-partitions.sh --zookeeper 192.168.1.131:2181 —generate —topics-to-move-json-file topics.json —broker-list 0,1

  • 這個(gè)工具會(huì)在控制臺(tái)輸出兩個(gè)json,分別描述里當(dāng)前分區(qū)和建議分區(qū)分配方案,可以把第一個(gè)json保存起來(lái),以備回滾。

  • 第二個(gè)json應(yīng)該被保存到另一個(gè)文件,作為kafka-reassign-partitons.sh工具的輸入來(lái)執(zhí)行第二個(gè)步驟。

  • 示例:使用reassign.json來(lái)執(zhí)行建議的分區(qū)分配方案

  • bin/kafka-reassign-partitions.sh --zookeeper 192.168.1.131:2181 —execute —reassignment-json-file reassign.json

  • 該命令會(huì)將指定分區(qū)的副本重新分配到新的broker上。

  • 在重分配進(jìn)行過(guò)程中或完成之后,可以使用kafka-reassign-partitions.sh工具驗(yàn)證重分配的狀態(tài)。

  • 示例:驗(yàn)證reassign.json文件里指定的分區(qū)重分配情況。

  • bin/kafka-reassign-partitions.sh --zookeeper 192.168.1.131:2181  —verify —reassignment-json-file reassign.json

以上就是kafka的命令管理是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI