Kafka常用命令簡介

2021-10-04 16:30:28 字數 3148 閱讀 1215

在這幾個命令中,第乙個僅用於啟動kafka,後兩個console常用於測試,用途最多的是最後乙個命令,所以下面命令中主要介紹的就是 kafka-topics.sh。

用法:

> bin/kafka-server-start.sh [-daemon] server.properties [--override property=value]*
這個命令後面可以有多個引數,第乙個是可選引數,該引數可以讓當前命令以後臺服務方式執行,第二個必須是 kafka 的配置檔案。後面還可以有多個--override開頭的引數,其中的property可以是broker configs中提供的所有引數。這些額外的引數會覆蓋配置檔案中的設定。

例如下面使用同乙個配置檔案,通過引數覆蓋啟動多個broker。

> bin/kafka-server-start.sh -daemon config/server.properties --override broker.id=0 --override log.dirs=/tmp/kafka-logs-1 --override listeners=plaintext://:9092 --override advertised.listeners=plaintext:

> bin/kafka-server-start.sh -daemon config/server.properties --override broker.id=1 --override log.dirs=/tmp/kafka-logs-2 --override listeners=plaintext://:9093 --override advertised.listeners=plaintext:

上面這種用法只是用於演示,真正要啟動多個broker 應該針對不同的 broker 建立相應的 server.properties 配置。

這個命令只是簡單的將訊息輸出到標準輸出中,--bootstrap-server必須指定,通常--topic也要指定檢視的主題。如果想要從頭檢視訊息,還可以指定--from-beginning引數。一般使用的命令如下。

> bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
還可以通過下面的命令指定分割槽檢視:

>> bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --partition 0
這個命令可以將檔案或標準輸入的內容傳送到kafka集群。有許多引數,其中--broker-list--topic是兩個必須提供的引數。

常用命令如下。

使用標準輸入方式。

> bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
從檔案讀取:

> bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test < file-input.txt
相比上面幾個偶爾使用的命令來說,kafka-topics.sh 相對就比較重要。該命令包含以下引數。

下面是幾種常用的 topic 命令。

描述主題的配置

bin/kafka-configs.sh --zookeeper localhost:2181 --describe --entity-type topics --entity-name test_topic
設定保留時間

# deprecated way

bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic test_topic --config retention.ms=1000

# modern way

bin/kafka-configs.sh --zookeeper localhost:2181 --alter --entity-type topics --entity-name test_topic --add-config retention.ms=1000

如果您需要刪除主題中的所有訊息,則可以利用保留時間。首先將保留時間設定為非常低(1000 ms),等待幾秒鐘,然後將保留時間恢復為上乙個值。

注意:預設保留時間為24小時(86400000毫秒)。

刪除主題

bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test_topic
注意:需要在broker的配置檔案server.properties中配置 delete.topic.enable=true 才能刪除主題。 

主題資訊

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test_topic
新增分割槽

bin/kafka-topics.sh --alter --zookeeper localhost:2181 --topic test_topic --partitions 3
建立主題

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic test_topic
列出主題

bin/kafka-topics.sh --list --zookeeper localhost:2181

kafka常用命令簡介

topic生產 消費topic 查詢topic最新offset值 bin kafka topics.sh help其中 bootstrap server create 和 topic 是三個必須提供的引數。kafka安裝目錄 bin kafka topics.sh bootstrap server ...

kafka常用命令

kafka常用操作命令 l檢視當前伺服器中的所有topic bin kafka topics.sh list zookeeper hadoop02 2181 l建立topic kafka topics.sh create zookeeper hadoop02 2181 replication fac...

kafka常用命令

啟動集群 nohup bin kafka server start.sh config server.properties 建立topic kafka topics topictt replication factor3 partitions3 create zookeeper hadoop1 21...