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