[toc]

本篇使用命令可到官网查询:
http://kafka.apache.org/082/documentation.html#quickstart
本篇中master、node1、node2位集群名称,映射的是对应的ip,如没有做名称和ip的映射,可以写对应的ip地址。

一、topic主题命令操作

1. 获取帮助

]# bin/kafka-topics.sh --help

image.png
image.png

2. topic列表查询

]# bin/kafka-topics.sh --zookeeper master:2181 --list
__consumer_offsets
first

3. topic详细信息

]# bin/kafka-topics.sh --zookeeper master:2181 --describe --topic first
Topic:first	PartitionCount:1	ReplicationFactor:3	Configs:
	Topic: first	Partition: 0	Leader: 2	Replicas: 2,0,1	Isr: 2,1,0

image.png

4. topic创建

]# bin/kafka-topics.sh --zookeeper master:2181 --create --replication-factor 3 --partitions 1 --topic second
Created topic "second".

选项说明:
--topic 定义 topic 名
--replication-factor 定义副本数
--partitions 定义分区数

5. 修改topic分区数

bin/kafka-topics.sh --zookeeper master:2181 --alter --topic second --partitions 6
WARNING: If partitions are increased for a topic that has a key, the partition logic or ordering of the messages will be affected
Adding partitions succeeded!

image.png

6. topic删除

]# bin/kafka-topics.sh --zookeeper master:2181 --delete --topic second
Topic second is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

需要 server.properties 中设置 delete.topic.enable=true 否则只是标记删除。

image.png

二、producer生成者命令操作

]# bin/kafka-console-producer.sh --broker-list master:9092 --topic first
>message
>hello world
>

三、consumer消费者命令操作

1. 连接zk消费

如果zk为老版本使用如下命令

]# bin/kafka-console-consumer.sh --zookeeper 192.168.158.200:2181 --topic first
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].
good

会有个友情提示,让使用[bootstrap-server],进行消费
image.png

2. 连接bootstrap消费

]# bin/kafka-console-consumer.sh --bootstrap-server 192.168.158.200:9092  --topic first
bootstrap

image.png

3. 消费者从头消费

可以从前边监听的内容,可以看出,如果生产这没有发消息,消费者这边没有更新,那生产者之前发送的消息怎么消费?接下来使用--from-beginning从头消费。

]# bin/kafka-console-consumer.sh --bootstrap-server 192.168.158.200:9092 --from-beginning --topic first
hello
hello
hei
message
hello world
good
bootstrap

image.png

Q.E.D.


只有创造,才是真正的享受,只有拚搏,才是充实的生活。