Kafka命令行操作
(如果是服務器單獨安裝的kafka,就進入到xxx.sh所在的路徑下,執行以下命令)
1)查看當前服務器中的所有topic
[sea@hadoop002 kafka]$ bin/kafka-topics.sh --zookeeper host12:2181 --list
2)創建topic
[sea@hadoop002 kafka]$ bin/kafka-topics.sh --zookeeper host12:2181 --create --replication-factor 3 --partitions 1 --topic lrxtest0625
選項說明:
--topic 定義topic名
--replication-factor 定義副本數
--partitions 定義分區數
3)刪除topic
[sea@hadoop002 kafka]$ bin/kafka-topics.sh --zookeeper host12:2181 --delete --topic lrxtest0625
需要server.properties中設置delete.topic.enable=true否則只是標記刪除或者直接重啟。
4)發送消息
[sea@hadoop002 kafka]$ bin/kafka-console-producer.sh --broker-list host12:9092 --topic lrxtest0625
>hello world
>sea sea
5)消費消息
[sea@hadoop103 kafka]$ bin/kafka-console-consumer.sh --bootstrap-server host12:9092 --from-beginning --topic lrxtest0625
--from-beginning:會把first主題中以往所有的數據都讀取出來。根據業務場景選擇是否增加該配置。
--bootstrap-server:生產消息的服務器
6)查看某個Topic的詳情
[sea@hadoop002 kafka]$ bin/kafka-topics.sh --zookeeper host12:2181 --describe --topic lrxtest0625
(如果是CDH中安裝的kafka,則直接執行命令即可,CDH已經將命令設為全局作用域了)即:
1)查看當前服務器中的所有topic
[sea@hadoop002 kafka]$ kafka-topics --zookeeper host12:2181 --list
如果CDH中設置了路徑,則上述命令要加路徑:
[sea@hadoop002 kafka]$ kafka-topics --zookeeper host12:2181/data2/kafka --list
2)創建topic
[sea@hadoop002 kafka]$ kafka-topics --zookeeper host12:2181/data2/kafka --create --replication-factor 3 --partitions 1 --topic lrxtest0625
選項說明:
--topic 定義topic名
--replication-factor 定義副本數
--partitions 定義分區數
3)刪除topic
[sea@hadoop002 kafka]$ kafka-topics --zookeeper host12:2181/data2/kafka --delete --topic lrxtest0625
需要server.properties中設置delete.topic.enable=true否則只是標記刪除或者直接重啟。
4)發送消息
[sea@hadoop002 kafka]$ kafka-console-producer --broker-list host12:9092 --topic lrxtest0625
>hello world
>sea sea
5)消費消息
[sea@hadoop103 kafka]$ kafka-console-consumer --bootstrap-server host12:9092 --from-beginning --topic lrxtest0625
--from-beginning:會把first主題中以往所有的數據都讀取出來。根據業務場景選擇是否增加該配置。
--bootstrap-server:生產消息的服務器
6)查看某個Topic的詳情
[sea@hadoop002 kafka]$ kafka-topics --zookeeper host12:2181/data2/kafka --describe --topic lrxtest0731